ip命令可以替代传统的ifconfig ifdown ifup
ifconfig eth0 down与ifdown eth0的区别是
ifconfig命令并没有将设置的结果写到对应的配置文件(/etc/sysconfig/network-scripts/ifcfg-eth0)中, 所以重启网络服务(/etc/init.d/network restart)后修改失效。
而ifdown eth0通过查看/sbin/ifdown可以看到它实际调用了ip命令来修改网络配置文件并且一直生效。
ip [option] [action] [command]
option:
主要是 -s: 显示设备的统计数据(statistics),
action:
可以针对哪些网络参数进行操作,包括
link: 与设备(device)相关的设置,包括MTU(最大传输单元), <最要针对ISO七层中的第二层>
addr/address: 关于ip的协议,例如多ip的实现 <第三层>
route: 路由相关设置
1. ip link
ip [-s] link show [device] // 显示设备的信息
ip link set [device]
# ip link set eth0 up
# ip link set eth0 mtu 1000 // 单位是byte
# ip link set eth0 name gexy // 将网卡的名称从eth0改为gexy, 首先必须通过ip link set eth0 down 将网口停掉才可以修改
#ip link set eth0 address aa:aa:aa:aa:aa:aa // 设置mac地址,如果机器支持
2. ip address
ip address show
ip address [add | del] [ip参数] [dev 设备名] [...]
#ip address add 192.168.1.198/24 broadcast + dev eth0 label eth0:gexy // 添加一个新的接口 eth0:gexy
#ip address show eth0 // 可以看到刚刚添加的eth0:gexy
#ip address del 192.168.1.198/24 dev eth0 // 删除之前添加的网口
3. ip route
ip route 几乎和route 差不多,多了一个额外的功能就是 MTU的规划
ip route show
ip route [add | del] [ip | 网络号] [via gateway] [dev 设备名]
via: 从那个gateway出去,不一定需要
#ip route add 192.168.0.1/24 dev eth0
#ip route del 192.168.0.1/24