CentOS7虛擬機啓動後網卡名改變

第一個問題

在CentOS7啓動後,發現出現了一塊名爲eth1的網卡,但是網卡上並沒有ip地址。eth0的網卡不見了。然後查看了一下網卡的配置文件:

cat /etc/sysconfig/network-scripts/ifcfg-eth0

發現,並沒有eth1網卡的配置文件。
然後,查看/etc/udev/rules.d/70-persistent-ipoib.rules中,有兩塊網卡。於是懷疑可能是網卡的配置文件和實際的網卡沒有綁定上。於是再次查看ifcfg-eth0的內容,發現其中網卡名稱的字段,NAME=enp3s0,這應該是從別處複製過來的配置文件內容,和真實的網卡名稱不匹配。
NAME字段是表示網卡的物理設備名稱,如果寫的名稱和真實設備名稱不匹配,那麼那塊網卡的名稱就會發生變化,因爲在udev/rules裏面配置的是網卡名稱生成的策略,會順次變成eth1了。

在將網卡名稱改好以後,重啓虛擬機,發現eth0可以正常啓動了,並且通過dhcp獲取到了ip地址。

第二個問題

然後,我將kvm鏡像拷貝了一份,重新啓動了一下,發現又出現了上邊出現的問題。eth0不見了,eth1出現了。於是通過

ls /sys/class/net

命令發現,現在只有一塊eth1網卡,然後使用

dmesg | grep eth

發現eth1是通過eth0重命名過來的。後來發現,可能是由於重新配置了虛擬機的硬件,網卡的mac地址發生了變化,而在/etc/udev/rules.d/xxx.rules裏面配置的eth0網卡的mac地址和新網卡對不上了,所以沒有啓動成功,就順次添加了一個名爲eth1的網卡配置。但是對應到/etc/sysconfig/network-scripts/ifcfg-eth0這個配置文件就不對了,所以出現了上邊一樣的問題,但是導致問題的原因又不一樣了。
分析以後,感覺這個操作類似於將物理機上的原來的網卡拔掉,換了一塊新的,所以原有的配置文件mac對不上了,這時候就需要將/etc/udev/rules/xxx-net-xxx.rule刪掉,然後重啓虛擬機就可以了。
這個問題參考了帖子:如何解決kvm網卡eth0變爲eth1
如果想要做kvm鏡像,到處使用,還是刪除/etc/udev/rules/xxx-net-xxx.rule比較穩妥。新環境下,自動重新生成新的配置。

所以,一定一定一定要按照標準修改網卡的配置文件,不能隨意複製粘貼別的服務器上的配置文件內容,否則會發生意想不到的驚喜!
網卡配置的帖子:linux 網卡配置

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章