Can't set up NIC to establish Gigabit link on Linux

41,174

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.

Share:
41,174

Related videos on Youtube

El Barto
Author by

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, 2022

Comments

  • El Barto
    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
      Admin about 11 years
      Try using cat6e cable to connect your machine with the switch
  • siupakabras
    siupakabras over 12 years
    Additionally, you should not force the speed, have a look here: etherealmind.com/…
  • El Barto
    El Barto over 12 years
    Thanks. 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
    kissgyorgy about 10 years
    I 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
    ThorSummoner over 7 years
    I too had a faulty cable. I suppose this is why cat6 cables cost more for being the same eight pin connector :D