Linux下新的网络管理工具ip替代ifconfig零压力

如果你使用 Linux 足够久,那么你自然知道一些工具的来与去。2009年 Debian 开发者邮件列表宣布放弃使用缺乏维护的 net-tools 工具包正是如此。到今天 net-tools 仍然被部分人们所使用。事实上,在 Ubuntu 14.10 中你依旧可以使用 ifconfig 命令来管理你的网络配置。
然而在某些情况下(例如, Ubuntu Docker 容器), net-tools 工具包将不会被默认安装,这就意味着不能使用 ifconfig 。尽管如此,还是可以用软件仓库来安装 net-tools 。
- sudo apt-get install net-tools
由于 net-tools 不再维护,我们强烈建议以 ip 命令代替 ifconfig。更重要的是 ip 在代替 ifconfig 的基础上表现得更好。
有趣的是 ip 不只是 ifconfig 的一个替代品,这两个命令在结构上有很多不同。即便如此,它们却都用于同一个目的。实际上 ip 命令可以完成下面所有事务。
- 列出系统上配置了哪些网络接口
- 查看网络接口的状态
- 配置网络接口(包括本地环路和以太网)
- 启用或禁用网络接口
- 管理默认静态路由
- IP 隧道配置
- 配置 ARP 或 NDISC 缓存条目
接下来就让我们按上面说的试着用 ip 代替 ifconfig 。 我将例举一些简单的例子说明怎么使用 ip 命令。要正确使用并理解这些命令需要 root 权限,你可以用 su 切换到 root 用户或着使用 sudo 。因为这些命令将会改变你机器的网络信息。小心谨慎使用。
注意:演示中用的地址仅作演示,具体到你的计算机时,会由你的网络以及硬件而不一样。
接下来,开始吧!
收集信息
多数人学习使用 ifconfig 做的第一件事就是查看网络接口上分配的 IP 地址。直接终端输入 ifconfig 不带任何参数回车即可看到。那么使用 ip 来做到这点我们只需要这样。
- ip a
这条命令将会列出所有网络接口的相关信息。
你说你只想看 IPv4 相关信息,那么可以这样。
- ip -4 a
你又说你想看特定的网络接口的相关信息,那么用如下命令查看无线网卡连接信息。
- ip a show wlan0
你甚至可以定位更具体的信息,欲查看 wlan0 上的 IPv4 信息,那么可以这样。
- ip -4 a show wlan0
还可以这样列出正在运行的网络接口。
- ip link ls up
修改配置网络接口
接下来让我们来学习 ip 命令的核心功能——修改配置网络接口。假如你想为第一个以太网的网卡( eth0 )安排一个特定的地址。用 ifconfig 的话,看起来是这样的。
- ifconfig eth0 192.168.1.101
那么用 ip 命令却是这样的。
- ip a add 192.168.1.101/255.255.255.0 dev eth0
简短一点可以这样。
- ip a add 192.168.1.101/24 dev eth0
显然这样的话,你需要知道你要安排的地址的子网掩码。
同样的方式,你可以这样删除一个网卡的地址。
- ip a del 192.168.1.101/24 dev eth0
如果你想简单的清除所有接口上的所有地址,只需要这样即可。
- ip -s -s a f to 192.168.1.0/24
ip 命令另一方面还能激活/禁用网络接口。
禁用 eth0
- ip link set dev eth0 down
激活 eth0
- ip link set dev eth0 up
使用 ip 命令,我们还可以添加/删除默认的网关,就像这样。
- ip route add default via 192.168.1.254
如果你想获得网络接口的更多细节,你可以编辑传输队列,给速度慢的接口设置一个低值,给速度快的设置一个较高值。那么你需要像这样做。
- ip link set txqueuelen 10000 dev eth0
该命令设置了一个很长的传输队列。你应该设置一个最适合你硬件的值。
还可以用 ip 命令为网络接口设置最大传输单元。
- ip link set mtu 9000 dev eth0
一旦你做了改变,便可以使用 ip a list eth0 来检验是否生效。
管理路由表
其实还可以使用 ip 命令来管理系统路由表。这是 ip 命令非常有用的一个功能。并且你应该小心使用。
查看所有路由表。
- ip r
输出结果将像下图所示。

现在你想要路由的所有流量从 eth0 网卡的192.168.1.254网关通过,那么请这样做。
- ip route add 192.168.1.0/24 dev eth0
删除这个路由。
- ip route del 192.168.1.0/24 dev eth0
这篇文章仅仅对 ip 命令进行了一些介绍。不是要求你马上使用 ip 命令。你可以继续使用 ifconfig 。因为 ifconfig 的弃 用相当的慢,很多发行版里依旧默认安装了该命令。但是相信最终会逐步被 ip 命令完全取代。看过这篇介绍,到时候你便能很快的转换过去。如果你还想了解 更多 ip 命令的用法,请看 ip 命令的 man 手册。
Linux下新的网络管理工具ip替代ifconfig零压力的更多相关文章
- 虚拟机Linux下一直获取不到ip怎么办
虚拟机Linux下一直获取不到ip怎么办 Ifconfig -a 只显示了本地的ip127.0.0.1 和另一个eth1 但是找不到ip地址. 需要做的是: 申请ipdhclient eth1 另外释 ...
- linux下的数据备份工具rsync讲解
linux下的数据备份工具 rsync(remote sync 远程同步) 名词解释: sync(Synchronize,即“同步”)为UNIX操作系统的标准系统调用,功能为将内核文件系统缓冲区的 ...
- Linux下使用 ipset 封大量IP及ipset参数说明
转载Linux下使用 ipset 封大量IP及ipset参数说明 Linux使用iptables封IP,是常用的应对网络攻击的方法,但要封禁成千上万个IP,如果添加成千上万条规则,对机器性能影响较大, ...
- 【one day one linux】linux下的软件包管理工具
Linux 下的软件包管理工具 linux下的软件安装可以通过两种方式,一种是直接使用自带的软件包管理工具安装,另外一种通过编译源码安装. 1.软件包的种类 Red Hat和Fedora:redhat ...
- linux下的抓包工具tcpdump
1.由netstat查看网络情况,引出的TCP建立连接.终止连接过程,以及TCP状态分析: 2.Soap=XML+HTTP引出的HTTP协议分析: 3.Soap(Simple Object Acces ...
- [原创]Linux下网络性能测试Netperf工具介绍及安装
[原创]Linux下网络性能测试Netperf工具介绍及安装 1 官方网站 http://www.netperf.org/netperf/ 2 Netperf介绍 Netperf是一种网络性能的测试工 ...
- Linux 下获取LAN中指定IP的网卡的MAC(物理地址)
// all.h// 2005/06/20,a.m. wenxy #ifndef _ALL_H#define _ALL_H #include <memory.h>#include < ...
- cron Linux下的定时执行工具
说明:测试平台 Ubuntu 16.04.4 LTS cron是一个Linux下的定时执行工具,可以在无需人工干预的情况下运行作业.所以,在Linux中,周期性执行的任务一般由cron这个守护进程来 ...
- 推荐linux下的数据库开发工具DBeaver 开源免费
linux下不错的数据库管理工具 DBeaver 操作比较友好,基于eclipse.使用jdbc链接,链接数据库非常全(oracle mysql mssql sqlite 常见的统统支持).而且可以 ...
随机推荐
- paper 92:Lena与图像处理
如果你是个数字图像处理技术的研究人员,或这方面的工程师, 想必对这位戴有羽状帽饰的美女不会感觉陌生.我第一次在国际知名的学术性刊物上见到这位美女时,不禁叹为天人,毕竟在这样严肃的学术期刊上,还从未出现 ...
- String,StringBuffer,StringBuilder三者区别
String:每次改变,String都会重新构造,内存指针都会改变 StringBuffer:主要用在全局变量中 StringBuilder:在线程内完成字符拼接,因为线程是不安全的,所以完成后可以丢 ...
- 夺命雷公狗---DEDECMS----9dedecms单标签
我们这一节课开始将dedecms的标签了,dedecms里面的标签分好多个的,我们先来看下他的标签长得啥样的先: 随便点击一个修改即可见到标签了: 这里面上面的大文本框里面有标签的用法下面有参数的说明 ...
- 转一篇 adaboost 的好文 AdaBoost简介及训练误差分析
AdaBoost简介及训练误差分析 http://wenku.baidu.com/link?url=y9Q2qjrJr6IShyY5EQEmvkPZmmP4t3HOdHUgMWaIffI9W0uzTr ...
- 对DotNet分布式应用搭建的考虑
设计前的考虑和准备工作 1 对业务需求的理解重要性远远胜于对技术架构的理解 2 架构包含技术架构和业务架构 3 没有万能和通用的架构,只有符合自身业务需求的架构 4 架构本身的复杂性要截至在架构设计阶 ...
- OpenStack fuel-web不可用解决办法
Contents [hide] 1 为增加一台计算节点 2 磁盘清空 3 启动占用8001端口的进程 4 启动占用5432端口的进程 为增加一台计算节点 打开fuel-web,发现无法打开,弹出ngi ...
- linux 文件删除原理
文件删除: i_link 文件的硬连接数 i_count 引用计数(有一个程序使用i_count加1) 文件删除的条件: i_link=0 and i_count=0 被进程占用的文件可以删除
- protocolbuffe
protocolbuffer(以下简称PB)是google 的一种数据交换的格式,它独立于语言,独立于平台.google 提供了多种语言的实现:java.c#.c++.go 和 python,每一种实 ...
- jQuery 文档操作方法(w3school)
这些方法对于 XML 文档和 HTML 文档均是适用的,除了:html(). 方法 描述 addClass() 向匹配的元素添加指定的类名. after() 在匹配的元素之后插入内容. append( ...
- Qt实现停靠功能