同一子網路上有多個 NIC,其中一個連接埠已斷開連接

同一子網路上有多個 NIC,其中一個連接埠已斷開連接

我有一個帶有 3 個專用 NIC 的 Linux 系統,所有 3 個都位於具有以下 IP 的相同子網路中

ETH0: 192.168.1.10
ETH1: 192.168.1.11
ETH2: 192.168.1.12

我設定了三個路由表以及對應的 IP 路由和規則來隔離 3 個連接埠的流量。下圖與 ETH1 相同。 ETH0 和 ETH2 也有類似的條目。

default via 192.168.1.1 dev eth1
192.168.1.0/24 dev eth1  src 192.168.1.11

32752:  from all to 192.168.1.11/24 lookup 1
32753:  from 192.168.1.11/24 lookup 1

如果 ETH1 和 ETH2 斷開,而 ETH0 連接,當我 ping ETH1 和 ETH2 IP 時,我會收到 ETH0 的回應。在另一個問題中,多 NIC Linux 系統上的 Ghost ping我發現這是由於 ARP 表中的 3 個連接埠都填入了相同的 MAC 位址造成的。

我已按此處指定的方式設定 arp_ignore 和 arp_announceUbuntu Linux - 多個 NIC,相同的 LAN...ARP 回應始終從單一 NIC 發出& 我可以看到 PC 上包含正確 MAC 位址的 ARP 條目。

但是,我仍然看到在這種情況下只有一個連接埠成為“預設”連接埠。當 ETH1 和 ETH2 已連接並且 ETH0 的電纜現在已插入但 ETH0 連接到隔離交換器(未連接到子網路)時,可以很容易地看出這一點。現在,ETH0 成為預設端口,由於隔離,對 ETH1 和 ETH2 的 ping 操作也會失敗。

有沒有辦法可以真正隔離三個連接埠上的流量?

相關內容