只能调出两个接口之一

我与我的HP Proliant DL 360 G4p服务器有一个奇怪的问题。 它有两个千兆以太网接口,但我只能提出其中的一个。 这开始吓坏我了,这就是为什么我转向这里。 我运行的是x64 ubuntu 11.10服务器版本。

lshw -cnetworking显示第二个接口被禁用。 我不知道为什么如何启用它。

$ sudo lshw -c network *-network:0 description: Ethernet interface product: NetXtreme BCM5704 Gigabit Ethernet vendor: Broadcom Corporation physical id: 2 bus info: pci@0000:02:02.0 logical name: eth0 version: 10 serial: 00:18:71:e3:6d:26 size: 100Mbit/s capacity: 1Gbit/s width: 64 bits clock: 66MHz capabilities: pcix pm vpd msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=tg3 driverversion=3.119 duplex=full firmware=5704-v3.27b, ASFIPMIc v2.36 ip=10.48.8.x latency=64 link=yes mingnt=64 multicast=yes port=twisted pair speed=100Mbit/s resources: irq:25 memory:fdf70000-fdf7ffff *-network:1 DISABLED description: Ethernet interface product: NetXtreme BCM5704 Gigabit Ethernet vendor: Broadcom Corporation physical id: 2.1 bus info: pci@0000:02:02.1 logical name: eth1 version: 10 serial: 00:18:71:e3:6d:25 capacity: 1Gbit/s width: 64 bits clock: 66MHz capabilities: pcix pm vpd msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=tg3 driverversion=3.119 firmware=5704-v3.27b latency=64 link=no mingnt=64 multicast=yes port=twisted pair resources: irq:26 memory:fdf60000-fdf6ffff 

如果我尝试ifup eth1,那么我得到

 $ sudo ifup eth1 Ignoring unknown interface eth1=eth1. 

我想这是在/ etc / network / interfaces中没有eth1列出的情况。 但是,当我添加eth1的configuration,我仍然不能ifup。

 $ sudo ifup eth1 RTNETLINK answers: File exists Failed to bring up eth1. I've also tried ifconfig eth1 up but without any result. 

为了清楚起见,我添加了/ etc / network / interfaces的一个屏蔽版本。 我不认为这是问题的原因。

 $ cat /etc/network/interfaces # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet static address 10.48.8.x netmask 255.255.255.y network 10.48.8.z broadcast 10.48.8.t gateway 10.48.8.u auto eth1 iface eth1 inet static address 193.190.253.x netmask 255.255.255.y network 193.190.253.z broadcast 193.190.253.t gateway 193.190.253.u 

我真的需要一些帮助解决这个问题。 这让我疯狂。 谢谢。

    我find了解决scheme。 在/ etc / network / interfaces中定义了两个网关,而简单的网关不能多于一个。 这个不成立。

    网关是您发送所有stream量到的IP。 如果你有两个,那么你的路由表将会有一个dest 0.0.0.0的双重入口,而系统不能处理这个。 双重路由是什么导致RTNETLINK答案“文件存在”,意味着已经有一个0.0.0.0的路由。

    我已经注意到了其中一个网关,现在我可以同时使用eth0和eth1。

    tl; dr删除网关条目,直到你只剩下一个。

    从这个链接我学到了很多它帮助我修复错误。

    只需将以下行添加到您的eth0configuration下的/ etc / network / interfaces:

    pre-up ip addr del 192.168.1.254/24 dev eth0 2> / dev / null || 真正

    这不是最美丽的解决scheme,但至less它的工作原理。 积分转到grapsus.net和谷歌的所有者。

    在输出的第二部分中间是link=no

    我怀疑你有一个松散或断开的电缆。 你也可能在一端有一个破坏的网卡。

    你确定你不在国际劳工组织的港口吗?

    如果你想只有一个开始删除另一个auto ethX规范。 它表示该接口应该自动启动。 如果您在使用一个界面时遇到问题,在解决问题之前手动启动它可能会有所帮助。

    如果两个接口都处于活动状态,那么您可能还希望在接口上设置不应该成为默认路由的路由度量。

    尝试启动接口后,可能需要检查dmesg的输出。 这应该显示任何生成的内核消息,并可能使诊断更容易。 mii-tool如果可用,可以提供关于接口的一些很好的信息。