升级到16.04后无网络


11

我将服务器从14.04升级到16.04,然后又从12.04升级到了12.04,全部使用命令行do-release-upgrade。这是服务器构建,绝对没有GUI。它运行apache2,bind9,nfs和其他一些与网络相关的服务。在大多数情况下,升级没有任何问题……除了网络。现在,我必须跑步

sudo /etc/init.d/networking start

每次重新启动后才能使其连接到网络。对于服务器不是很有帮助。我的猜测是,联网脚本根本不会在启动时运行;通常,我可以通过运行来解决此问题

sudo update-rc.d networking defaults

但是上面的命令只是给出了一个关于无法连接到新贵的错误。

我该怎么做才能修复我的网络?

编辑:/ etc / network / interfaces的内容:

#loopback
auto lo
iface lo inet loopback

#eth0
auto eth0
iface eth0 inet dhcp

您可以将/etc/network/interfaces文件中的行添加到问题中吗?
John Orion

@JohnOrion完成了。我还确保网络设备实际上是eth0。我之前在eth0和eth1之间进行过设备更改。确实是eth0。
ArmanX

是什么ifconfig节目?跑步时会发生什么sudo ifup eth0
塞林

1
对于将来的信息搜索者:“ ifconfig”不显示任何内容。“ ifconfig -a”显示适配器在那里,但是未被激活。“ sudo ifup eth0”(或“ sudo ifconfig eth0 up”)将启动适配器,但不会启动dhcp客户端。手动启动适配器并启动dhclient按预期方式进行连接。
ArmanX

也就是说,我最终重新安装了所有内容,并进行了修复。
ArmanX

Answers:


22

同样在这里。

我认为在安装过程中从新贵迁移到systemd时出了点问题?

我将描述我如何解决它

遵循本指南,我启用了systemd网络:http : //xmodulo.com/switch-from-networkmanager-to-systemd-networkd.html

我做的步骤:

$ sudo systemctl enable systemd-networkd
$ sudo systemctl enable systemd-resolved
$ sudo systemctl start systemd-resolved
$ sudo rm /etc/resolv.conf
$ sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
$ sudo vi /etc/systemd/network/20-dhcp.network

内容:

[Match]
Name=e*

[Network]
DHCP=yes

现在一切正常:-)


头晕!这也为我解决了!
Craig

在这里没工作。第三条陈述有误。
jjmerelo

2

静态地址解决方案:

要添加到HerrTaschenbier的答案中:如果服务器上有一个静态地址,则应检查网卡是否已重命名,方法是ifconfig -a 我发现eth0重命名为ens32。使用该信息并将其应用于HerrTaschenbier的答案。您还需要按照他的指示创建新文件sudo vi /etc/systemd/network/20-ens32.network。内容略有不同。

[Match] 
Name=ens32

[Network]
DNS=xxx.xxx.xxx.xxx
Domains=somedomain.com
Address=xxx.xxx.xxx
Gateway=xxx.xxx.xxx

请注意,文件名格式中包含网络适配器名称。不要忘记也更改/ etc / network / interfaces文件中的适配器名称。从14.04升级到16.04发生在我身上。


0

长时间使用16.04之后,我遇到了相同的问题,可能是某些更新使事情变得混乱。

正在运行systemctl status networking.service表明,由于ifup -a调用错误,服务无法启动。运行ifup -a单独透露,它正试图将工作与eth0接口,而ifconfig -a只列出了enp0s31f6lo接口。检查/etc/network/interfaces显示:

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

将接口名称更正为ifconfig解决问题所发现的内容:

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

auto enp0s31f6
iface enp0s31f6 inet dhcp
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.