在以前,linux下我们一直在使用 ifconfig 命令来执行网络相关的任务,比如检查和配置网卡信息。但是ifconfig已经不再维护,而且从centos 7开始,ifconfig命令默认也没有安装,ifconfig 命令已经被 ip 命令所替代了。
ip 命令跟 ifconfig 命令有些类似,但要强力的多,它有许多新功能。ip 命令完成很多 ifconfig 命令无法完成的任务。下面就几个常用情景介绍下ip命令的使用。
1、检查网卡信息
检查网卡的诸如 IP 地址,子网等网络信息,使用 ip addr show
命令:
ip addr show
或
ip a s
这会显示系统中所有可用网卡的相关网络信息。如果想查看某块网卡信息,则命令:
ip addr show ens33
这里 ens33
是网卡的名字。
2、启用/禁用网卡
使用 ip
命令来禁用一块网卡:
ip link set ens33 down
启用网卡
ip link set ens33 up
3、添加 IP 地址以及其他网络信息
未网卡手动添加IP地址,使用如下命令:
ip addr add 172.16.10.100/255.255.255.0 dev ens33
可以看到默认添加的ip地址没有广播地址,所以我们也可以在添加的时候设置广播地址。
或者也可以使用下面命令来根据 IP 地址设置标准的广播地址:
ip addr add 172.16.10.102/255.255.255.0 brd + dev ens33
4、删除 IP 地址
删除网卡中的IP地址,可以使用如下命令:
ip addr del 172.16.10.100/24 dev ens33
5、为网卡添加别名
添加别名,即为网卡添加不止一个 IP,执行下面命令:
ip addr add 172.16.10.100/24 dev ens33 label ens33:1
6、检查路由网关
查看路由信息会给我们显示数据包到达目的地的路由路径。要查看网络路由信息,执行下面命令:
ip route show
在上面输出结果中,我们能够看到所有网卡上数据包的路由信息。我们也可以获取特定 IP 的路由信息,例如:
ip route get 114.114.114.114
7、添加静态路由
我们也可以使用 IP 来修改数据包的默认路由。方法是使用 ip route
命令:
ip route add default via 192.168.10.1/24
这样所有的网络数据包通过 192.168.10.1
来转发,而不是以前的默认路由了。若要修改某个网卡的默认路由,执行:
ip route add 172.16.10.100 via 192.168.10.1/24 dev ens33
8、删除路由
要删除之前设置的默认路由,打开终端然后运行:
ip route del 192.168.10.1/24
用上面方法修改的默认路由只是临时有效的,在系统重启后所有的改动都会丢失。要永久修改路由,需要修改或创建 route-enp0s3
文件。将下面这行加入其中:
vi /etc/sysconfig/network-scripts/route-ens33 172.16.10.100 via 192.168.10.1/24 dev ens33
9、检查所有 ARP 记录
ARP,是地址解析协议Address Resolution Protocol的缩写,用于将 IP 地址转换为物理地址(也就是 MAC 地址)。所有的 IP 和其对应的 MAC 明细都存储在一张表中,这张表叫做 ARP 缓存。
要查看 ARP 缓存中的记录,即连接到局域网中设备的 MAC 地址,则使用如下 ip 命令:
ip neigh
10、修改 ARP 记录
删除 ARP 记录:
ip neigh del 192.168.10.106 dev ens33
11、查看网卡统计信息
使用 ip -s link
命令来查看:
12、帮助
若你想查看某个上面例子中没有的选项,那么你可以查看帮助。
ip help
ip
命令是一个对 Linux 系统管理来说特别重要的命令,希望在ifconfig已经停止维护后这篇文章对你有用。