故障問題:由於vSphere虛擬化平臺中的一臺VM虛擬機MAC地址與另一VC中的VM衝突需要修改,在VC中刪除VM的網卡並重新添加一張新的虛擬網卡之後,在VM的RHEL系統中配置網卡IP網關之後,發現IP能正常起,但網關無論如何都無法生效,使用ip r命令無法查看到網關。檢查/etc/sysconf ...
故障問題:
由於vSphere虛擬化平臺中的一臺VM虛擬機MAC地址與另一VC中的VM衝突需要修改,在VC中刪除VM的網卡並重新添加一張新的虛擬網卡之後,在VM的RHEL系統中配置網卡IP網關之後,發現IP能正常起,但網關無論如何都無法生效,使用ip r命令無法查看到網關。檢查/etc/sysconfig/network-scripts/ifcfg-enX文件無異常,檢查/var/log/messages中無相關異常日誌。
原因分析:
RHEL中配置網關的配置文件,一般有如下幾個:
/etc/sysconfig/network-scripts/ifcfg-en*
/etc/sysconfig/network-scripts/route-en*
/etc/sysconfig/network
/etc/rc.local寫入網關配置命令
在本案例中,經檢查/etc/sysconfig/network該文件內容如下:
# Created by anaconda
NETWORKING=yes
GATEWAYDEV=eth0
GATEWAY=xxxx
該文件寫死了網關所綁定的網卡設備名。由於在虛擬化平臺更換了VM虛擬機的虛擬網卡,由於虛擬匯流排及設備插槽的原因一般都會造成系統內網卡設備名的變化,而網路服務初始化時首先解析ifcfg-en*文件,然後才會再解析/etc/sysconfig/network文件,由於該文件寫死了網關綁定的網卡設備且原網卡名的網卡設備已經不存在,自然就會導致網關配不上去,最坑的是這個地方應該是會報錯的,但是它並沒有在/var/log/messages日誌文件中記錄任何報錯日誌。
總結:
1、在不同的VC下,虛擬機的虛擬網卡自動生成的MAC地址有可能會重覆。
2、RHEL的網路不僅可以用/etc/sysconfig/network-scripts下麵的配置文件,還可以使用/etc/sysconfig/network。