Can't set up NIC to establish Gigabit link on Linux
Sounds like there's something wrong with the switch port, or with the physical media. If your autonegotiate puts you at 100Mb and you can't force it to 1Gb, then you've likely got a physical problem.
That said, if you're going to force 1Gb/s, you should make sure you do it on both sides. Don't take the NIC off of auto without also taking the corresponding switch port off of auto.
Related videos on Youtube
El Barto
Web developer & Sysadmin Weapons of choice: Python, PHP, MySQL, GNU/Linux, Apache & Nginx. I also happen to be a history student interesed in Early Modern European history and history of religions.
Updated on September 18, 2022Comments
-
El Barto almost 2 years
I have Ubuntu 11.10 64 bits with one (actually two, but only one is connected) Intel 82578 Gigabit Network Card which is working on 100 Mbps and I want it to work on 1000 Mbps, but I can't. How can I find out what's wrong?
Here's what happens when I try to set the speed with ethtool:
# ethtool -s eth0 speed 1000 Cannot advertise speed 1000
I also tried this and lost network connectivity:
# ethtool -s eth0 speed 1000 duplex full
I'm running out of ideas on where to look.
Some information:
The server is connected to a Cisco RVS4000 router which has all active ports configured to work @ 1000 Mbps Full Duplex with auto negotiation. In fact, there's another server connected to another port of the router, which is working fine at 1000 Mbps.
Info about the server I'm having problems with:
lshw:
# lshw -C network *-network description: Ethernet interface product: 82578DM Gigabit Network Connection vendor: Intel Corporation physical id: 19 bus info: pci@0000:00:19.0 logical name: eth0 version: 05 serial: 00:1e:67:15:2b:f1 size: 100Mbit/s 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=1.3.10-k2 duplex=full firmware=0.10-2 ip=192.168.1.12 latency=0 link=yes multicast=yes port=twisted pair speed=100Mbit/s resources: irq:45 memory:b1a00000-b1a1ffff memory:b1a24000-b1a24fff ioport:2020(size=32) *-network description: Ethernet interface product: 82574L Gigabit Network Connection vendor: Intel Corporation physical id: 0 bus info: pci@0000:03:00.0 logical name: eth1 version: 00 serial: 00:1e:67:15:2b:f0 capacity: 1Gbit/s width: 32 bits clock: 33MHz capabilities: pm msi pciexpress msix bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=1.3.10-k2 firmware=1.9-0 latency=0 link=no multicast=yes port=twisted pair resources: irq:16 memory:b1900000-b191ffff ioport:1000(size=32) memory:b1920000-b1923fff
ethtool
# ethtool eth0 Settings for eth0: Supported ports: [ TP ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Supports auto-negotiation: Yes Advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Advertised pause frame use: No Advertised auto-negotiation: Yes Speed: 100Mb/s Duplex: Full Port: Twisted Pair PHYAD: 2 Transceiver: internal Auto-negotiation: on MDI-X: on Supports Wake-on: pumbg Wake-on: g Current message level: 0x00000001 (1) drv Link detected: yes
dmesg's info about the network driver:
# dmesg |grep e1000e [ 1.938726] e1000e: Intel(R) PRO/1000 Network Driver - 1.3.10-k2 [ 1.938729] e1000e: Copyright(c) 1999 - 2011 Intel Corporation. [ 1.938764] e1000e 0000:00:19.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 [ 1.938775] e1000e 0000:00:19.0: setting latency timer to 64 [ 1.938878] e1000e 0000:00:19.0: irq 45 for MSI/MSI-X [ 2.181735] e1000e 0000:00:19.0: eth0: (PCI Express:2.5GT/s:Width x1) 00:1e:67:15:2b:f1 [ 2.181737] e1000e 0000:00:19.0: eth0: Intel(R) PRO/1000 Network Connection [ 2.181771] e1000e 0000:00:19.0: eth0: MAC: 9, PHY: 9, PBA No: 0310FF-0FF [ 2.181785] e1000e 0000:03:00.0: Disabling ASPM L0s [ 2.181799] e1000e 0000:03:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 [ 2.181816] e1000e 0000:03:00.0: setting latency timer to 64 [ 2.182046] e1000e 0000:03:00.0: irq 46 for MSI/MSI-X [ 2.182050] e1000e 0000:03:00.0: irq 47 for MSI/MSI-X [ 2.182053] e1000e 0000:03:00.0: irq 48 for MSI/MSI-X [ 2.293669] e1000e 0000:03:00.0: eth1: (PCI Express:2.5GT/s:Width x1) 00:1e:67:15:2b:f0 [ 2.293672] e1000e 0000:03:00.0: eth1: Intel(R) PRO/1000 Network Connection [ 2.293754] e1000e 0000:03:00.0: eth1: MAC: 3, PHY: 8, PBA No: 1010FF-0FF [ 15.316964] e1000e 0000:00:19.0: irq 45 for MSI/MSI-X [ 15.372707] e1000e 0000:00:19.0: irq 45 for MSI/MSI-X [ 19.897407] e1000e: eth0 NIC Link is Up 100 Mbps Full Duplex, Flow Control: Rx [ 19.897412] e1000e 0000:00:19.0: eth0: 10/100 speed: disabling TSO
-
Admin about 11 yearsTry using cat6e cable to connect your machine with the switch
-
-
siupakabras over 12 yearsAdditionally, you should not force the speed, have a look here: etherealmind.com/…
-
El Barto over 12 yearsThanks. I'll have to wait a couple of hours for a new maintenance window, but I'll try changing cables and using the other NIC to find physical problems. I'll let you know how it goes.
-
kissgyorgy about 10 yearsI pulled off and replugged the cable, rebooted the machine several times and finally got it working! I could never do that without this answer, thank you!!
-
ThorSummoner over 7 yearsI too had a faulty cable. I suppose this is why cat6 cables cost more for being the same eight pin connector :D