我在虚拟机内运行 Ubuntu-Server 12 LTS(使用 VirtualBox,以 Ubuntu 12 为主机)。我在 VirtualBox 中设置了 2 个网卡,eth0 是 NAT,用于连接外部世界,eth1 是 Host-Only(使用 VirtualBox 提供的 DHCP),因此我可以从主机访问虚拟机。
首次登录时,ifconfig 未显示 eth1(如预期),运行后sudo dhclient eth1
接口会启动并按预期获取 IP 地址。到目前为止一切正常。
因此我编辑了 /etc/network/interfaces 以包含以下内容:
auto eth1
iface eth1 inet static
address 192.168.56.105
netmask 255.255.255.0
gateway 192.168.56.1
重启后,eth1 以其静态 ip 按预期出现在 ifconfig 中,但 apt-get update 失败,并声称“暂时解决故障”。
如果我注释掉新的接口定义并再次重新启动,一切都会正常。如果我只使用 dhclient 启动 eth1,一切都会正常,但我很希望不必每次启动虚拟机时都这样做。
我不知道从哪里开始,我不是 Ubuntu 本地人。任何帮助都将不胜感激!
编辑: 需要明确的是,一旦系统启动并且无论是否运行,无论更改多少文件和重新启动网络服务似乎都无法改变它。它要么运行,要么不运行,直到完全重新启动。
答案1
只需从 eth1 配置中删除gateway
:
auto eth1
iface eth1 inet static
address 192.168.56.105
netmask 255.255.255.0