CentOS7虚拟机 enss33没有ip地址的解决方法

解决思路:NetworkManager没关导致的冲突

起因:

宿主机上用navicat连接虚拟机mysql并不成功,试着ping了一下虚拟机的ip地址,发现ping不通。在虚拟机上用ip addr 发现ens33没有了ip地址

在网上看了解决办法说是

  1. vi /etc/sysconfig/network-scripts/ifcfg-ens33 网卡配置中ONBOOT=NO改为YES
    但我在配置的时候就已经修改。

  2. 有说是计算机管理中的服务没开,我看了一下,是开了的。

之后我试着systemctl restart network 发现无法重启,查看journalctl -xe日志发现有以下错误

试着百度了一下,有以下解决方法

  1. 说是虚拟机mac地址的问题
  1. 发现在我的enss3配置中并没有HWADR字段,根据ip addr中的字段复制加上之后再systemctl restart network ,发现还是不行。
  1. ip addr flush dev enss3 试过了 不行

  2. centOS7的NetworkManager存在冲突,它适用于桌面版而不适用于虚拟机
    所以输入以下命令:
    systemctl stop NetworkManager.service
    systemctl disable NetworkManager.service
    再systemctl restart network
    之后发现enss3有了ip地址,也能ping通了。