Virtualbox 上的 Ubuntu 16.04 客户机无法从主机获取 IP

Virtualbox 上的 Ubuntu 16.04 客户机无法从主机获取 IP

我已经在不同的物理位置设置了多台虚拟机,其中装有 Ubuntu 16.04 客户机和 Windows 10 主机,但互联网连接仍然稳定。希望主机通过 Virtualbox 为所有这些虚拟操作系统提供 IP 地址,并配置 NAT 网络适配器(默认设置),以便连接到服务器。

由于某种原因,这对于某些虚拟操作系统来说运行得很好,我希望通过调试来解决这种情况。

ip a

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:a3:5b:03 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::6467:c72f:f210:ad4e/64 scope link 
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:93:64:d0 brd ff:ff:ff:ff:ff:ff

/etc/network/interfaces
*注意:以下配置对于所有操作系统都是相同的,这让我认为“网络管理员”与 IP 分配过程无关,因为大多数客人都会获得他们的 IP,但不确定。

auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp

我目前无法重新启动那些在第一次尝试解决连接问题时无法获取其 IP 的客户机。

答案1

我的英特尔适配器也遇到了同样的问题,这是我的快速解决方法:

在主机环境中(例如 Windows -> 设备管理器)关闭英特尔适配器,然后重新打开。 5...10 秒后再次检查客户机,

ifconfig -a

...它应该无需重新启动主机系统即可获取 IP。

答案2

我不知道这是否是 Ubuntu 16.04 本身的问题。

我一直在 MS Surface Go 上使用 16.04 操作系统(主机),有时当我打开设备电源时,Ubuntu 16 操作系统无法获取 IP(DHCP)。

我必须物理断开并连接 USB-C 至 LAN 以太网适配器,然后它才能获得 IP。那时我以为是 Surface Go 问题或 LAN 适配器问题。

但当最近在 Ubuntu 16.04 Guest VM 上发生同样的事情时,我感到非常惊讶。

答案3

在新的 Vbox 更新中很少发生这种情况;如果我将其降级回以前的版本,它就可以正常工作。

由于这次 Windows 10 更新(并且永远都会更新),最近的更新再次发生了这种情况(v6.0.8)。

这个简单的 ifdown 和 up 命令对我来说立即起作用。

ifconfig enp0s3 down
sleep 7
ifconfig enp0s3 up

有时,主机(Windows 10)需要大约 10 秒的时间才能从 NIC 检测到新的 IP。

最好的解决方案是降级并等待新版本发布。

答案4

在您的 中,/etc/network/interfaces您说要通过 DHCP 获取接口的 IP eth0,但您没有该接口。您有接口enp0s3enp0s8。因此,如果您正在使用,enp0s3只需更改:

auto eth0
iface eth0 inet dhcp

到:

auto enp0s3
iface enp0s3 inet dhcp

相关内容