Vlan
macvlan + vlan 配置的介面確實會忽略 vlan 標籤
我需要在同一個物理設備(eth1)上配置兩個不同的 MAC 和 IP 地址。
但是當我在預設/全域命名空間中配置一個 macvlan 介面並在它上面配置一個 vlan 時。我可以直接從外部主機 ping vlan IP 地址,而無需對其進行標記(ping)。但另一方面:標記的 ping 不起作用。當我在非全域/非預設命名空間中設置網路配置時,也會發生同樣的情況。
ip addr add 169.254.255.126/16 dev eth1 ip link set dev eth1 up # ping 169.254.255.126 # PING from external host is working: fine ip link add macvlan link eth1 type macvlan mode bridge ip addr add 169.254.255.127/16 dev macvlan ip link set dev macvlan up # ping 169.254.255.127 # PING from external host is working: fine ip link add link macvlan name vlan2 type vlan id 2 ip addr add 169.254.255.128/16 dev vlan2 ip link set dev vlan2 up # ping 169.254.255.128 # PING from external host works without vlan tag: FAIL # ping 169.254.255.128 -I VLAN2 # no PING response external host with vlan tag: FAIL
那麼如何在其全域/預設命名空間中的同一物理介面上設置兩個虛擬介面(不同的 MAC+IP),它們的行為就像真實設備一樣?
可選:如果 global 不是選項,則可以接受命名空間。
僅供參考:我在帶有核心 5.4 的 UBUNTU 18.04 以及帶有核心 4.9 的嵌入式 buildroot 系統上對其進行了測試(兩次,結果相同)。
經過一些測試和進一步研究,問題是我試圖將來自同一網路區域的多個 IP 地址放置到多個網路介面。
要進行這項工作,需要非全域名稱空間。
所以我們可以在這里關閉這個問題。謝謝