从14.04升级到Ubuntu 16.04后,我无法ping通网关,起初接口eth0没有启动,我读了刷新新的mac地址会修复,所以我决定从虚拟机中删除networking接口,并添加了一个新的一个,而事实certificate,eth0必须重命名为其他(ens ###)如“ifconfig -a”所示启动界面。 但现在我不能ping通网关,路线都很好。
root@Hostname:~# arp -a ? (192.168.1.1) at <incomplete> on ens192 ? (192.168.1.82) at 00:5:56:ab:bb:cc [ether] on ens192
旧的mac地址可能卡在某处? 或者为什么说不完整? 当我ping通目的地不可达时,它在升级之前工作正常。
你可以看到它在tcpdump中请求网关的mac地址
tcpdump输出图像
更新:解决
好吧,算了一下,看起来像当我添加networking适配器,我select了vmxnet3,但旧的适配器是E1000。 我只是再次删除了接口,添加了E1000适配器,并在/ etc / network / interface文件中重新命名了接口名称,然后重新启动。 现在工作很好。 感谢Daniele,再次检查了hypersivsor,这个帮助
有一点回顾
最近Ubuntu采用了systemd,它在系统引导时处理networking接口的命名。 命名将与硬件中的物理相关联(如插入插槽的插槽),因此您可以添加/删除/replacenetworking硬件,并且名称不会突然改变(就像以前一样,使用ethXscheme)。
现在,您进行了升级并重新命名了networking接口,因此您在/etc/network/interfaces需要修复。 但是,被困惑,你首先尝试删除虚拟网卡,然后添加一个新的。 这给了你一个不同的MAC地址,并没有解决你的连接问题。 然后你意识到重命名已经发生,你修改了你的configuration,并且连接又回来了。
问题(待解决):
您的虚拟机现在可以与同一局域网中的另一台计算机( 192.168.1.82 )通信,但不能再与网关通信。
虚拟机无法从网关接收到arp reply的事实意味着它们甚至无法在以太网层进行通信。
可能的原因(要检查):
iptables或者添加iptables规则,可能在虚拟机pipe理程序中,而不是虚拟机本身),这可能允许使用旧的mac地址但不是新的mac地址。