您好,登錄后才能下訂單哦!
Blog:http://www.simlinux.com
許多系統管理員仍然使用ifconfig、route、arp、netstat 命令組合來管理和排錯網絡配置,這些命令有net-tools包提供,但在Arch Linux、Centos7/RHEL7等發行版里面已經使用iproute2替代了net-toolsiproute2是另外一個網絡配置工具,用來取代net-tools的功能;
net-tools訪問和修改網絡配置是通過procfs(/proc)和ioctl系統調用來完成的,而iproute2是通過netlink socket方式與內核通信;重要的是,iproute2發展一直很好:
https://www.kernel.org/pub/linux/utils/net/iproute2/
下面是net-tools和iproute2的使用對比:
使用net-tools: $ ifconfig -a 使用iproute2: $ ip link show
使用net-tools: $ sudo ifconfig eth2 up $ sudo ifconfig eth2 down 使用iproute2: $ sudo ip link set down eth2 $ sudo ip link set up eth2
使用net-tools: $ sudo ifconfig eth2 10.0.0.1/24 使用iproute2: $ sudo ip addr add 10.0.0.1/24 dev eth2 使用net-tools配置多IP: $ sudo ifconfig eth0:1 192.168.10.10 netmask 255.255.255.0 up $ sudo ifconfig eth0:2 192.168.10.15 netmask 255.255.255.0 up 使用iproute2配置多IP: $ sudo ip addr add 10.0.0.1/24 broadcast 10.0.0.255 dev eth2 $ sudo ip addr add 10.0.0.2/24 broadcast 10.0.0.255 dev eth2 $ sudo ip addr add 10.0.0.3/24 broadcast 10.0.0.255 dev eth2 查看eth0的IP地址 $sudo ip addr list dev eth0
使用net-tools: $ sudo ifconfig eth2 0 使用iproute2: $ sudo ip addr del 10.0.0.1/24 dev eth2
使用net-tools: $ ifconfig eth2 使用iproute2: $ ip addr show dev eth2 如果是網卡綁定了多IP的話,iproute2能顯示所有的地址,而net-tools只能顯示一個
使用net-tools: $ sudo ifconfig eth2 inet6 add 2002:0db5:0:f102::1/64 $ sudo ifconfig eth2 inet6 add 2003:0db5:0:f102::1/64 使用iproute2: $ sudo ip -6 addr add 2002:0db5:0:f102::1/64 dev eth2 $ sudo ip -6 addr add 2003:0db5:0:f102::1/64 dev eth2
使用net-tools: $ ifconfig eth2 使用iproute2: $ ip -6 addr show dev eth2
使用net-tools: $ sudo ifconfig eth2 inet6 del 2002:0db5:0:f102::1/64 使用iproute2: $ sudo ip -6 addr del 2002:0db5:0:f102::1/64 dev eth2
使用net-tools: $ sudo ifconfig eth2 hw ether 08:00:27:75:2a:66 使用iproute2: $ sudo ip link set dev eth2 address 08:00:27:75:2a:67
使用net-tools: $route -n $ netstat -rn 使用iproute2: $ ip route show
使用net-tools: $ sudo route add default gw 192.168.1.2 eth0 $ sudo route del default gw 192.168.1.1 eth0 使用iproute2: $ sudo ip route add default via 192.168.1.2 dev eth0 $ sudo ip route replace default via 192.168.1.2 dev eth0
使用net-tools: $ sudo route add default gw 192.168.1.2 eth0 $ sudo route del default gw 192.168.1.1 eth0 使用iproute2: $ sudo ip route add default via 192.168.1.2 dev eth0 $ sudo ip route replace default via 192.168.1.2 dev eth0
使用net-tools: $ netstat $ netstat -l 使用iproute2: $ ss $ ss -l
使用net-tools: $ arp -an 使用iproute2: $ ip neigh
使用net-tools: $ sudo arp -s 192.168.1.100 00:0c:29:c0:5a:ef $ sudo arp -d 192.168.1.100 使用iproute2: $ sudo ip neigh add 192.168.1.100 lladdr 00:0c:29:c0:5a:ef dev eth0 $ sudo ip neigh del 192.168.1.100 dev eth0
使用net-tools: $ sudo ipmaddr add 33:44:00:00:00:01 dev eth0 $ sudo ipmaddr del 33:44:00:00:00:01 dev eth0 $ ipmaddr show dev eth0 $ netstat -g 使用iproute2: $ sudo ip maddr add 33:44:00:00:00:01 dev eth0 $ sudo ip maddr del 33:44:00:00:00:01 dev eth0 $ ip maddr list dev eth0
參考文檔:
iproute2 HowTo http://www.policyrouting.org/iproute2.doc.html
iproute2 man http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2/
RTnetlink http://www.man7.org/linux/man-pages/man7/rtnetlink.7.html
Netlink http://www.man7.org/linux/man-pages/man7/netlink.7.html
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。