2

I have an Intel Quad-port Gigabit Ethernet controller in an HP ML310e Gen 8 v2 server (which also has an onboard dual-port Broadcom BCM5720).

When I boot from an Ubuntu Desktop live USB (16.04), all six ports work exactly as expected: when a cable is connected they immediately get a link, the LED on the port lights immediately and the corresponding one on my switch lights.

I installed Ubuntu Server (16.04), and none of the Intel ports get a link at all. The LEDs never light and ethtool reports "Link detected: no" for each port. Using proved-good cables. The Broadcom ports work fine. I am able to make the LEDs for each port on the Intel card blink with ethtool -p.

I found a report of an ostensibly similar problem here: https://bbs.archlinux.org/viewtopic.php?id=159454 However that was resolved by:

echo on > /sys/bus/pci/devices/0000\:09\:00.0/power/control

(for each of the correct PCI ids) - and in my case that key is already set to 'on'.

As the card works perfectly when I boot into a Live USB desktop, I believe that card and cabling is fine, but I'm unable to get it to work from an installed Ubuntu Server. This is the third from-scratch install I've tried now. In previous attempts I also tried downloading and building e1000e drivers from Intel's site, but that made no difference at all.

Would really appreciate any advice the community can give - thanks.

lshw reports:

driver=e1000e
driverversion=3.2.6-k
firmware=5.12-2

Full relevant output from lscpi, lshw and uname:

~$ lspci -nnk | grep -i eth

03:00.0 Ethernet controller [0200]: Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet PCIe [14e4:165f]
Subsystem: Hewlett-Packard Company NetXtreme BCM5720 Gigabit Ethernet PCIe [103c:2133]
03:00.1 Ethernet controller [0200]: Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet PCIe [14e4:165f]
Subsystem: Hewlett-Packard Company NetXtreme BCM5720 Gigabit Ethernet PCIe [103c:2133]
09:00.0 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)
09:00.1 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet     Controller (Copper) [8086:10bc] (rev 06)
0a:00.0 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet     Controller (Copper) [8086:10bc] (rev 06)
0a:00.1 Ethernet controller [0200]: Intel Corporation 82571EB Gigabit Ethernet Controller (Copper) [8086:10bc] (rev 06)

~$ lshw -C net
*-network:0 DISABLED
       description: Ethernet interface
       product: 82571EB Gigabit Ethernet Controller (Copper)
       vendor: Intel Corporation
       physical id: 0
       bus info: pci@0000:09:00.0
       logical name: enp9s0f0
       version: 06
       serial: 00:24:81<redacted because paranoia>
       capacity: 1Gbit/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=3.2.6-k firmware=5.12-2 latency=0 link=no multicast=yes port=twisted pair
       resources: irq:30 memory:fbce0000-fbcfffff memory:fbc00000-fbc7ffff ioport:4000(size=32)
  *-network:1 DISABLED
       description: Ethernet interface
       product: 82571EB Gigabit Ethernet Controller (Copper)
       vendor: Intel Corporation
       physical id: 0.1
       bus info: pci@0000:09:00.1
       logical name: enp9s0f1
       version: 06
       serial: 00:24:81:<redacted>
       capacity: 1Gbit/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=3.2.6-k firmware=5.12-2 latency=0 link=no multicast=yes port=twisted pair
       resources: irq:32 memory:fbbe0000-fbbfffff memory:fbb00000-fbb7ffff ioport:4020(size=32)
  *-network:0 DISABLED
       description: Ethernet interface
       product: 82571EB Gigabit Ethernet Controller (Copper)
       vendor: Intel Corporation
       physical id: 0
       bus info: pci@0000:0a:00.0
       logical name: enp10s0f0
       version: 06
       serial: 00:24:81:<redacted>
       capacity: 1Gbit/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=3.2.6-k firmware=5.12-2 latency=0 link=no multicast=yes port=twisted pair
       resources: irq:33 memory:fbee0000-fbefffff memory:fbe00000-fbe7ffff ioport:5000(size=32)
  *-network:1 DISABLED
       description: Ethernet interface
       product: 82571EB Gigabit Ethernet Controller (Copper)
       vendor: Intel Corporation
       physical id: 0.1
       bus info: pci@0000:0a:00.1
       logical name: enp10s0f1
       version: 06
       serial: 00:24:81:<redacted>
       capacity: 1Gbit/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=3.2.6-k firmware=5.12-2 latency=0 link=no multicast=yes port=twisted pair
       resources: irq:34 memory:fbde0000-fbdfffff memory:fbd00000-fbd7ffff ioport:5020(size=32)
  *-network:0
       description: Ethernet interface
       product: NetXtreme BCM5720 Gigabit Ethernet PCIe
       vendor: Broadcom Corporation
       physical id: 0
       bus info: pci@0000:03:00.0
       logical name: eno1
       version: 00
       serial: 10:60:4b:ee:39:30
       size: 1Gbit/s
       capacity: 1Gbit/s
       width: 64 bits
       clock: 33MHz
       capabilities: pm vpd msi msix pciexpress bus_master cap_list rom ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=tg3 driverversion=3.137 duplex=full firmware=5720-v1.30 NCSI v1.1.15.0 ip=10.0.1.141 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
       resources: irq:17 memory:fabf0000-fabfffff memory:fabe0000-fabeffff memory:fabd0000-fabdffff memory:f8000000-f801ffff
  *-network:1 DISABLED
       description: Ethernet interface
       product: NetXtreme BCM5720 Gigabit Ethernet PCIe
       vendor: Broadcom Corporation
       physical id: 0.1
       bus info: pci@0000:03:00.1
       logical name: eno2
       version: 00
       serial: 10:60:4b:ee:39:31
       capacity: 1Gbit/s
       width: 64 bits
       clock: 33MHz
       capabilities: pm vpd msi msix pciexpress bus_master cap_list rom ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=tg3 driverversion=3.137 firmware=5720-v1.30 NCSI v1.1.15.0 latency=0 link=no multicast=yes port=twisted pair
       resources: irq:18 memory:fabc0000-fabcffff memory:fabb0000-fabbffff memory:faba0000-fabaffff memory:f8020000-f803ffff

$ uname -a
Linux victorious 4.4.0-31-generic #50-Ubuntu SMP Wed Jul 13 00:07:12 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

Further outputs as requested:

$ dmesg | grep 09:00

[    0.132795] pci 0000:09:00.0: [8086:10bc] type 00 class 0x020000
[    0.132824] pci 0000:09:00.0: reg 0x10: [mem 0xfbce0000-0xfbcfffff]
[    0.132834] pci 0000:09:00.0: reg 0x14: [mem 0xfbc00000-0xfbc7ffff]
[    0.132843] pci 0000:09:00.0: reg 0x18: [io  0x4000-0x401f]
[    0.132915] pci 0000:09:00.0: PME# supported from D0 D3hot D3cold
[    0.132964] pci 0000:09:00.1: [8086:10bc] type 00 class 0x020000
[    0.132993] pci 0000:09:00.1: reg 0x10: [mem 0xfbbe0000-0xfbbfffff]
[    0.133002] pci 0000:09:00.1: reg 0x14: [mem 0xfbb00000-0xfbb7ffff]
[    0.133012] pci 0000:09:00.1: reg 0x18: [io  0x4020-0x403f]
[    0.133083] pci 0000:09:00.1: PME# supported from D0 D3hot D3cold
[    5.898627] e1000e 0000:09:00.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
[    6.070261] e1000e 0000:09:00.0 eth0: (PCI Express:2.5GT/s:Width x4) 00:24:81:<redacted because paranoia>
[    6.070262] e1000e 0000:09:00.0 eth0: Intel(R) PRO/1000 Network Connection
[    6.070341] e1000e 0000:09:00.0 eth0: MAC: 0, PHY: 4, PBA No: D98771-007
[    6.070434] e1000e 0000:09:00.1: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
[    6.242251] e1000e 0000:09:00.1 eth1: (PCI Express:2.5GT/s:Width x4) 00:24:81:<redacted>
[    6.242252] e1000e 0000:09:00.1 eth1: Intel(R) PRO/1000 Network Connection
[    6.242331] e1000e 0000:09:00.1 eth1: MAC: 0, PHY: 4, PBA No: D98771-007
[    7.625342] e1000e 0000:09:00.0 enp9s0f0: renamed from eth0
[   11.802316] e1000e 0000:09:00.1 enp9s0f1: renamed from eth1

$ 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).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eno1
iface eno1 inet static
address <redacted IP in 10. range>
netmask 255.255.255.0
gateway <redacted>

$ ls -l /etc/network/interfaces.d
total 0

1 Answers1

1

The interfaces showing as DISABLED are exactly the interfaces that are not declared in /etc/network/interfaces. Please amend the file to:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eno1
iface eno1 inet static
address <redacted IP in 10. range>
netmask 255.255.255.0
gateway <redacted>
dns-nameservers 10.whatever.the.gateway 8.8.8.8

#auto enp9s0f0
iface enp9s0f0 inet dhcp

#auto enp9s0f1
iface enp9s0f1 inet dhcp

#auto enp10s0f0
iface enp10s0f0 inet dhcp

#auto enp10s0f1
iface enp10s0f1 inet dhcp

Incidentally, if the declared interface, eno1 is expected to reach the internet, DNS nameservers are required. I have taken the liberty to suggest it in my proposed edit above.

Reboot and check:

sudo lshw -C network

Are the Intel ports no longer disabled? If so, you can transfer the cable to one of them, rearrange /etc/network/interfaces and proceed.

chili555
  • 60,188
  • That works, thanks! There must be something wrong though with my mental model of what /etc/network/interfaces does because I thought the link-state would be updated regardless of whether the interfaces were defined there - I didn't even think to try adding them because I thought them getting IPs, either by DHCP or static assignments, would not work at all if they couldn't detect a link. I also didn't know about adding nameservers in that file; I guess that during the installation process, I picked them up by DHCP and it wrote them to resolv.conf. – Matt Saunders Oct 26 '16 at 08:22
  • For the benefit of future searchers: I also investigated adding the grub parameters "net.ifnames=0 biosdevname=0" which removed the eno/enp renaming and gave me eth0...eth5. Subsequent reboots however gave me semi-random ordering of those interfaces. I found this question helpful and think I will follow its advice in order to get predictable naming of all six of my ports: http://askubuntu.com/questions/689070/network-interface-name-changes-after-update-to-15-10-udev-changes – Matt Saunders Oct 26 '16 at 08:26