On a Lenovo P50, the network card does not seem to be able to detect Ethernet cables or establish a network connection. The ethernet conection is set-up to be hot-plugged and managed by
avahi. The wired connection once worked, but seems to have failed some time in the past six months or so.
Debugging so far
- Computing support confirms that network ports are working
- Other machines plugged into network ports work, indicating cables are good
- Plugging in ethernet cables to laptop does not cause port to light up (but it is not clear that this port has lights)
- Wireless connection works
- Network configuration appears ok, common pitfalls not present
$ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=16.04 DISTRIB_CODENAME=xenial DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS"
$ cat /proc/version Linux version 4.4.0-112-generic (buildd@lgw01-amd64-010) (gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.5) ) #135-Ubuntu SMP Fri Jan 19 11:48:36 UTC 2018
$ lspci | grep Ethernet 00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (2) I219-LM (rev 31)
$ sudo lshw -C network *-network description: Wireless interface product: Wireless 8260 vendor: Intel Corporation physical id: 0 bus info: pci@0000:04:00.0 logical name: wlp4s0 version: 3a serial: [MAC_ADDRESS] width: 64 bits clock: 33MHz capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless configuration: broadcast=yes driver=iwlwifi driverversion=4.4.0-112-generic firmware=16.242414.0 ip=172.20.174.88 latency=0 link=yes multicast=yes wireless=IEEE 802.11abgn resources: irq:133 memory:c4c00000-c4c01fff *-network description: Ethernet interface product: Ethernet Connection (2) I219-LM vendor: Intel Corporation physical id: 1f.6 bus info: pci@0000:00:1f.6 logical name: enp0s31f6 version: 31 serial: [MAC_ADDRESS] capacity: 1Gbit/s width: 32 bits clock: 33MHz capabilities: pm msi 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=0.8-3 latency=0 link=no multicast=yes port=twisted pair resources: irq:130 memory:c5700000-c571ffff
$ ifconfig enp0s31f6 Link encap:Ethernet HWaddr 50:7b:9d:e4:d8:49 UP BROADCAST MULTICAST MTU:1500 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:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) Interrupt:16 Memory:c5700000-c5720000 enp0s31f6:avahi Link encap:Ethernet HWaddr 50:7b:9d:e4:d8:49 inet addr:[IP_ADDRESS] Bcast:169.254.255.255 Mask:255.255.0.0 UP BROADCAST MULTICAST MTU:1500 Metric:1 Interrupt:16 Memory:c5700000-c5720000 ...
$ ifplugstatus lo: link beat detected enp0s31f6: unplugged
$ cat /etc/network/interfaces # interfaces(5) file used by ifup(8) and ifdown(8) auto lo iface lo inet loopback allow-hotplug enp0s31f6 iface enp0s31f6 inet dhcp
$ sudo ifdown enp0s31f6 && sudo ifup -v enp0s31f6 Killed old client process Internet Systems Consortium DHCP Client 4.3.3 Copyright 2004-2015 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ Listening on LPF/enp0s31f6/[MAC_ADDRESS] Sending on LPF/enp0s31f6/[MAC_ADDRESS] Sending on Socket/fallback Configuring interface enp0s31f6=enp0s31f6 (inet) /bin/run-parts --exit-on-error --verbose /etc/network/if-pre-up.d run-parts: executing /etc/network/if-pre-up.d/ethtool run-parts: executing /etc/network/if-pre-up.d/wireless-tools run-parts: executing /etc/network/if-pre-up.d/wpasupplicant /sbin/dhclient -1 -v -pf /run/dhclient.enp0s31f6.pid -lf /var/lib/dhcp/dhclient.enp0s31f6.leases -I -df /var/lib/dhcp/dhclient6.enp0s31f6.leases enp0s31f6 Internet Systems Consortium DHCP Client 4.3.3 Copyright 2004-2015 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ Listening on LPF/enp0s31f6/[MAC_ADDRESS] Sending on LPF/enp0s31f6/[MAC_ADDRESS] Sending on Socket/fallback DHCPDISCOVER on enp0s31f6 to 255.255.255.255 port 67 interval 3 (xid=0xf5fca319) DHCPDISCOVER on enp0s31f6 to 255.255.255.255 port 67 interval 6 (xid=0xf5fca319) DHCPDISCOVER on enp0s31f6 to 255.255.255.255 port 67 interval 7 (xid=0xf5fca319) No DHCPOFFERS received. No working leases in persistent database - sleeping.
$ sudo 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: enp0s31f6: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000 link/ether [MAC_ADDRESS] brd ff:ff:ff:ff:ff:ff inet [IP_ADDRESS]/16 brd 169.254.255.255 scope link enp0s31f6:avahi valid_lft forever preferred_lft forever
The following questions with similar symptoms do not resolve the issue:
Suggested solutions that do not work in this case:
Similar symptoms, but probably unrelated hardware issues:
This question seems specific to a USB Ethernet device, related to hot-plug issues.
This question involves the network interface disappearing entirely, and returning on reboot.
This question is a bit vague and lacks definitive answers.
This question pertains to Ethernet, but the answer is a link to wifi troubleshooting.
This question appears to be different, as it involves the Ethernet adapter being unavailable, wheres it is available on my machine but registers as disconnected.
This question has similar symptoms, but was due to a conflicting configuration from a previous network card.
This question related to a corrupted driver (I think?).
In this case they were able to regain network access simply by deleting
/etc/network/interfaces and rebooting. I have tried this and it did not work in this case.
Potentially related questions without resolution
In this question it was assumed that the problem lay with the building network configuration. I have been assured by the building support staff that this is not the case here.
This question was diagnosed as a hardware fault of the network card. It is not clear that it applies in this case. This one seemed also to be a hardware failure. (I would like to rule out other explanations before presuming hardware failure).
Update and resolution
We determined that the machine could not use Ethernet when booted from a different operating system on removable media, indicating a hardware issue. Indeed, on the Lenovo P50 there are status LEDs (yellow and green) on the port, and these should respond when Ethernet is plugged in. They were dark on this machine, indicating a hardware issue.