Linux添加vlan不通,如何处理Linux虚拟机跨VLAN ping不通问题
問題描述
Linux虛擬機,在指定網卡上創建VLAN設備配置IP地址場景下,如下圖1所示,當網卡MAC地址改變且創建VLAN設備仍然使用同一個IP地址,此時可能會出現從其他VLAN的虛擬機內部無法ping通該IP的情況。圖1虛擬機跨VLAN通信
如圖1當虛擬機VM2網卡的MAC修改后,重新創建VLAN200的設備配置原IP,從VM1和VM3 ping
VM2的IPv4或IPv6的地址,可能存在ping不通的情況。
目前發現存在問題的操作系統列表如下,需要采用相關措施進行規避。
表1 操作系統列表
虛擬機操作系統
虛擬機位數
備注
Novell SUSE Linux Enterprise Server 11 SP2
32/64
IPv4和IPv6地址都存在此問題。
Novell SUSE Linux Enterprise Server 11 SP3
32/64
Red Hat Enterprise Linux 6系列
32/64
IPv6地址存在此問題。
CentOS 6 系列
32/64
原因
由于跨三層通信需要網關根據ARP表項(IPv4)或ND表項(IPv6)進行MAC地址替換的過程,在修改虛擬機網卡的MAC地址之后如果虛擬機未主動發送免費ARP報文或NA報文去更新交換機上對應的表項,那么此時跨三層通信就會出現IP地址對應的MAC地址錯誤,導致通信異常的問題。
解決方法
提供以下三種方法可解決該問題,但方法一操作方便不會引起其他副作用,建議使用。
方法一
在MAC地址改變的虛擬機內部重新創建VLAN設備時,分別ping IPv4或IPv6的網關地址,以便主動更新交換機對應的ARP或ND的表項。
方法二
登錄虛擬機所在CNA節點的交換機執行以下命令:
如果是IPv4地址不通,需要清除arp表項,執行如下命令:
reset arp dynamic
如果是IPv6地址不通,需要清除vlan 200域nd表項,執行如下命令:
reset ipv6 neighbors Vlanif 200
說明:以上命令針對使用華為交換機用戶,如果使用其他廠商的交換機,請參考廠商的交換機操作指導。
方法三
不做任何操作等待交換機ARP表項或ND表項自動老化。
總結
以上是生活随笔為你收集整理的Linux添加vlan不通,如何处理Linux虚拟机跨VLAN ping不通问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 新增网络接口,为网络接口添加
- 下一篇: xml配置linux启动脚本,linux