user4826904 Asked: 2017-03-13 09:29:26 +0800 CST2017-03-13 09:29:26 +0800 CST 2017-03-13 09:29:26 +0800 CST 如果在网桥中添加或删除以太网,rtnetlink 行为是什么? 772 在我研究 RTNETLINK 时,我知道如果在内核空间添加/删除接口,内核将发送 RTM_ADDLINK 或 RTM_DELLINK。但是,如果在网桥中添加或删除以太网,我对 RTNETLINK 消息有疑问?由于向/从桥接器添加或删除以太网实际上并不是添加或删除接口,因此是否有任何 RTNETLINK 消息实际上在两者之间传输? linux bridge ethernet interface socket 1 个回答 Voted Best Answer Spooler 2017-03-13T15:12:30+08:002017-03-13T15:12:30+08:00 Rtnetlink 处理接口的路由和其他第 3 层细节。简单地将接口添加到网桥根本不会涉及 rtnetlink。桥接——以及将接口附加到桥接器——完全发生在第 2 层。 只有当我们申请 IP 地址并开始需要修改路由表时,我们才需要涉及 rtnetlink。由于任何第 3 层寻址都开始于桥之上而不是桥之下,因此在添加接口时这不是问题。 您甚至不需要网桥上的 IP 即可将其用作第 2 层交换设备。您也不需要为网桥提供 IP 来启动它。当你给它一个第 3 层地址时,就会调用 rtnetlink 来智能地修改你的路由表。此第 3 层地址是否与网桥、物理 NIC 或分接设备相关联无关紧要。
Rtnetlink 处理接口的路由和其他第 3 层细节。简单地将接口添加到网桥根本不会涉及 rtnetlink。桥接——以及将接口附加到桥接器——完全发生在第 2 层。
只有当我们申请 IP 地址并开始需要修改路由表时,我们才需要涉及 rtnetlink。由于任何第 3 层寻址都开始于桥之上而不是桥之下,因此在添加接口时这不是问题。
您甚至不需要网桥上的 IP 即可将其用作第 2 层交换设备。您也不需要为网桥提供 IP 来启动它。当你给它一个第 3 层地址时,就会调用 rtnetlink 来智能地修改你的路由表。此第 3 层地址是否与网桥、物理 NIC 或分接设备相关联无关紧要。