前言
本文主要介紹net-tools套件與iproute2套件的區別。
net-tools套件與iproute2套件的區別
ifconfig、route、arp和netstat等命令行工具都是net-toos套件的工具集,用於解決網絡故障。net-tools起源於BSD的TCP/IP工具箱,後來成為老版本Linux內核中配置網絡功能的工具。但自2001年起,Linux社區已經對其停止維護。同時,壹些Linux發行版比如Arch Linux和CentOS/RHEL 7則已經完全拋棄了net-tools,只支持iproute2。
iproute2的出現旨在從功能上取代net-tools。net-tools通過procfs(/proc)和ioctl系統調用去訪問和改變內核網絡配置,而iproute2則通過netlink套接字接口與內核通訊。拋開性能而言,iproute2的用戶接口比net-tools顯得更加直觀。比如,各種網絡資源(如link、IP地址、路由和隧道等)均使用合適的對象抽象去定義,使得用戶可使用壹致的語法去管理不同的對象。到目前為止,iproute2仍處在持續開發中。
筆者強烈建議用戶應該使用iproute2取代傳統的net-tools套件,因為iproute2可以做很多net-tools無法做到的事情。
兩者常見命令對比
net-toolsiproute2命令作用 arp -naip neigh查看MAC地址表ifconfigip link查看網卡基本信息ifconfig -aip addr show查看網站詳細信息ifconfig --helpip help查看幫助信息ifconfig -sip -s link查看網卡流量傳輸信息ifconfig eth0 upip link set eth0 up啟用網卡ipmaddrip maddr查看網卡相關的MAC地址表iptunnelip tunnel查看隧道信息netstatss查看端口使用情況netstat -iip -s link查看每張網卡的信息及傳輸信息netstat -gip maddr查看張網卡的二層及三層鄰居信息netstat -lss -l查看本機的監聽端口netstat -rip route查看本機路由表route addip route add添加靜態路由route delip route del刪除靜態路由route -nip route show查看本機路由表vconfigip link查看本地連接情況
Linux查看MAC地址表
? (172.16.87.174) 位於 00:0c:29:2a:8e:23 [ether] 在 vmnet8
? (172.16.87.170) 位於 在 vmnet8
? (172.16.87.179) 位於 00:0c:29:2a:8e:23 [ether] 在 vmnet8
? (192.168.42.129) 位於 da:1a:b5:a1:93:bc [ether] 在 enp0s20u1
查看網卡基本信息
查看網卡基本信息
1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s25: mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000
link/ether 3c:97:0e:43:e8:bd brd ff:ff:ff:ff:ff:ff
3: wlp3s0: mtu 1500 qdisc mq state DOWN mode DORMANT group default qlen 1000
link/ether 60:67:20:c7:be:00 brd ff:ff:ff:ff:ff:ff
4: vmnet1: mtu 1500 qdisc fq_codel state UNKNOWN mode DEFAULT group default qlen 1000
link/ether 00:50:56:c0:00:01 brd ff:ff:ff:ff:ff:ff
5: vmnet8: mtu 1500 qdisc fq_codel state UNKNOWN mode DEFAULT group default qlen 1000
link/ether 00:50:56:c0:00:08 brd ff:ff:ff:ff:ff:ff
12: enp0s20u1: mtu 1500 qdisc fq_codel state UNKNOWN mode DEFAULT group default qlen 1000
link/ether c6:34:99:3e:12:f9 brd ff:ff:ff:ff:ff:ff
Linux 查看ip 命令幫助信息
Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
ip [ -force ] -batch filename
where OBJECT := { link | address | addrlabel | route | rule | neigh | ntable |
tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |
netns | l2tp | fou | macsec | tcp_metrics | token | netconf | ila |
vrf | sr }
OPTIONS := { -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] |
-h[uman-readable] | -iec |
-f[amily] { inet | inet6 | ipx | dnet | mpls | bridge | link } |
-4 | -6 | -I | -D | -B | -0 |
-l[oops] { maximum-addr-flush-attempts } | -br[ief] |
-o[neline] | -t[imestamp] | -ts[hort] | -b[atch][filename] |
-rc[vbuf][size] | -n[etns] name | -a[ll] | -c[olor]}
Linux查看網卡流量傳輸信息
Linux查看網卡流量傳輸信息
1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
RX: bytes packets errors dropped overrun mcast
300977974 305919 0 0 0 0
TX: bytes packets errors dropped carrier collsns
300977974 305919 0 0 0 0
2: eth0: mtu 1400 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether fa:16:3e:48:b5:08 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
107994934 965313 0 0 0 0
TX: bytes packets errors dropped carrier collsns
714725526 808580 0 0 0 0
/rmxx/804.html