Linux
介面組
最近開始研究Linux網路系統(尤其是Ubuntu)。
我通過
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
我想問的是那個
group default
部分。 似乎意味著此處描述的介面組。group
(至少連結不正確。謝謝AB)“組預設值”到底是什麼意思?我想了解它以供學習。
如果您有任何資訊,請告訴我。
謝謝!
可以使用組值標記介面。預設情況下,此值為 0 並顯示為“預設”,因為它是從
/etc/iproute2/group
通常包含(僅)以下內容的文件中解析的:# device group names 0 default
可以在此文件中添加更多條目以使用和顯示單詞(例如:)
blue
而不是數字(例如:)1
。該組值的作用是通過分配相同的值將介面組合在一起以進行某些特殊操作(組 0 作為預設值可能不允許其中的某些操作)。
下面是一個範例,如果一個人想要啟動然後一次性刪除一組虛擬介面(比如有些是dummy,其他veth和其他bridges)。
group
在 the之前使用關鍵字很重要,type
因為這些可以引入相同關鍵字的不同用途。這個關於刪除的範例僅適用於虛擬介面,但任何介面包括真實介面當然也可以分配一個組值。創建時(此處除外
bridgeg1
):ip link add name dummyg1 group 1 type dummy ip link add name vethg1 group 1 type veth ip link add name bridgeg1 type bridge
介面也可以稍後更改其組:
ip link set dev bridgeg1 group 1
顯示帶有組 1 標記的介面:
# ip -o link show group 1 3: dummyg1: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN mode DEFAULT group 1 qlen 1000\ link/ether 1a:c8:19:3b:f5:e8 brd ff:ff:ff:ff:ff:ff 4: veth0@vethg1: <BROADCAST,MULTICAST,M-DOWN> mtu 1500 qdisc noop state DOWN mode DEFAULT group 1 qlen 1000\ link/ether 02:6e:66:bb:69:e8 brd ff:ff:ff:ff:ff:ff 5: vethg1@veth0: <BROADCAST,MULTICAST,M-DOWN> mtu 1500 qdisc noop state DOWN mode DEFAULT group 1 qlen 1000\ link/ether 6e:22:d1:3d:5c:6d brd ff:ff:ff:ff:ff:ff 6: bridgeg1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group 1 qlen 1000\ link/ether 7e:23:0c:7c:f5:18 brd ff:ff:ff:ff:ff:ff
ip link set group 1 up
刪除標記為組 1 的介面:
# ip -o link delete group 1
他們走了:
# ip -o link show 1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN mode DEFAULT group default qlen 1000\ link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: ip6tnl0@NONE: <NOARP> mtu 1452 qdisc noop state DOWN mode DEFAULT group default qlen 1000\ link/tunnel6 :: brd :: permaddr 2001:db8:1234::
介面組標籤的整個網路堆棧中可能還有其他用途。例如,這可以與iptables ’
devgroup
match 或nftables ’ devgroup類型iifgroup
和oifgroup
元表達式一起使用,以使用單個規則匹配同一組中的任何介面,只要有一種最初標記介面的方法,就可以簡化管理。