我在带有 2x E1000 适配器的 VMWare ESXi 5.5 上运行 Ubuntu 14.04.4 LTS(也尝试过 VMXNET 3,但以下问题没有任何变化)
我正在使用 2 个静态公共 IP,但服务器一直在等待其网络连接,并且当时只有 1 个 IP 在工作(有时是 eth0,有时是 eth1)
我的/etc/network/interfaces
文件:
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address xx.x.66.169
netmask 255.255.255.224
network xx.x.66.160
gateway xx.x.66.161
dns-nameservers 8.8.8.8 8.8.4.4
auto eth1
iface eth1 inet static
address xx.x.66.170
netmask 255.255.255.224
network xx.x.66.160
gateway xx.x.66.161
dns-nameservers 8.8.4.4 8.8.8.8
ifconfig -a
输出:
usr@server:~$ ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:0c:29:c5:a1:0a
inet addr:xx.x.66.169 Bcast:xx.x.66.191 Mask:255.255.255.224
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:196 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:21341 (21.3 KB) TX bytes:0 (0.0 B)
eth1 Link encap:Ethernet HWaddr 00:0c:29:c5:a1:14
inet addr:xx.x.66.170 Bcast:xx.x.66.191 Mask:255.255.255.224
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:314 errors:0 dropped:0 overruns:0 frame:0
TX packets:166 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:35728 (35.7 KB) TX bytes:29220 (29.2 KB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
截至目前,我可以连接到 .170 地址上的服务器,但不能连接到 .169 地址上的服务器。
尝试时ifdown eth0 && ifup eth0
,我收到错误消息,提示 eth0 未配置:
ifdown: interface eth0 not configured
RTNETLINK answers: File exists
Failed to bring up eth0.
关于如何解决此问题有什么想法吗?
答案1
它看起来认为您的网络接口处于半配置状态。
interface eth0 not configured
当 Ubuntu 认为 eth0 未按 中指定的方式配置/etc/network/interfaces
,或者未使用 ifdown/ifup 系统配置接口时,它会提示。RTNETLINK answers: File exists
当 IP 地址或路由等已配置时,会发生这种情况,它会尝试再次配置它(我同意,这不是最好的错误消息!)。
我通常在更改配置时才会看到此问题/etc/network/interfaces
。通常,如果我直接坐在机器旁,我会关闭接口,更改配置,然后启动它以避免触发此问题。
这种情况下就需要手动清理接口状态。
因此,从 VMware 控制台执行此操作(不要通过 SSH,因为您会关闭部分网络并可能会将自己锁定)。
#will probably get an error- thats fine
ifdown eth0
# remove default gateway route
ip route del default via xx.x.66.161 dev eth0
# remove the IP address on the interface
ip addr del xx.x.66.169/27 dev eth0
# Mark the interface as down
ifconfig eth0 down
# Use the /etc/network/interfaces config system to configure the interface
ifup eth0
如果此后您仍然遇到问题,则可能是因为两个连接上都有网关的东西——但我可能只是对此过于谨慎,因为我从来没有真正以那种方式运行过设置。