解讀IP命令展示的網絡連接信息
ip
命令可以告訴你很多網絡連接配置和狀態的信息,但是所有這些詞和數字意味著什么? 讓我們深入了解一下,看看所有顯示的值都試圖告訴你什么。
當您使用 ip a
(或 ip addr
)命令獲取系統上所有網絡接口的信息時,您將看到如下所示的內容:
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s25: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:1e:4f:c8:43:fc brd ff:ff:ff:ff:ff:ff
inet 192.168.0.24/24 brd 192.168.0.255 scope global dynamic enp0s25
valid_lft 57295sec preferred_lft 57295sec
inet6 fe80::2c8e:1de0:a862:14fd/64 scope link
valid_lft forever preferred_lft forever
這個系統上的兩個接口 - 環回(lo
)和網絡(enp0s25
)——顯示了很多統計數據。 lo
接口顯然是環回地址。 我們可以在列表中看到環回 IPv4 地址(127.0.0.1
)和環回 IPv6(::1
)。 而普通的網絡接口更有趣。
為什么是 enp0s25 而不是 eth0
如果你想知道為什么它在這個系統上被稱為 enp0s25
,而不是可能更熟悉的 eth0
,那我們可以稍微解釋一下。
新的命名方案被稱為“可預測的網絡接口”。 它已經在基于systemd 的 Linux 系統上使用了一段時間了。 接口名稱取決于硬件的物理位置。 en
僅僅就是 “ethernet” 的意思,就像 “eth” 用于對應 eth0
,一樣。 p
是以太網卡的總線編號,s
是插槽編號。 所以 enp0s25
告訴我們很多我們正在使用的硬件的信息。
<BROADCAST,MULTICAST,UP,LOWER_UP>
這個配置串告訴我們:
BROADCAST 該接口支持廣播
MULTICAST 該接口支持多播
UP 網絡接口已啟用
LOWER_UP 網絡電纜已插入,設備已連接至網絡
列出的其他值也告訴了我們很多關于接口的知識,但我們需要知道 brd
和 qlen
這些詞代表什么意思。 所以,這里顯示的是上面展示的 ip
信息的其余部分的翻譯。
mtu 1500 ***傳輸單位(數據包大小)為1,500字節
qdisc pfifo_fast 用于數據包排隊
state UP 網絡接口已啟用
group default 接口組
qlen 1000 傳輸隊列長度
link/ether 00:1e:4f:c8:43:fc 接口的 MAC(硬件)地址
brd ff:ff:ff:ff:ff:ff 廣播地址
inet 192.168.0.24/24 IPv4 地址
brd 192.168.0.255 廣播地址
scope global 全局有效
dynamic enp0s25 地址是動態分配的
valid_lft 80866sec IPv4 地址的有效使用期限
preferred_lft 80866sec IPv4 地址的***生存期
inet6 fe80::2c8e:1de0:a862:14fd/64 IPv6 地址
scope link 僅在此設備上有效
valid_lft forever IPv6 地址的有效使用期限
preferred_lft forever IPv6 地址的***生存期
您可能已經注意到,ifconfig
命令提供的一些信息未包含在 ip a
命令的輸出中 —— 例如傳輸數據包的統計信息。 如果您想查看發送和接收的數據包數量以及沖突數量的列表,可以使用以下 ip
命令:
$ ip -s link show enp0s25
2: enp0s25: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 00:1e:4f:c8:43:fc brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
224258568 418718 0 0 0 84376
TX: bytes packets errors dropped carrier collsns
6131373 78152 0 0 0 0
另一個 ip
命令提供有關系統路由表的信息。
$ ip route show
default via 192.168.0.1 dev enp0s25 proto static metric 100
169.254.0.0/16 dev enp0s25 scope link metric 1000
192.168.0.0/24 dev enp0s25 proto kernel scope link src 192.168.0.24 metric 100
ip
命令是非常通用的。 您可以從 ip
命令及其來自Red Hat的選項獲得有用的備忘單。