Intel Gigabit port but only get 100mbps



  • I am using a c1037u dual Intel NIC hardware as my pfsense router, which currently running version 2.4.3.

    I realized that both of my NIC only able to get 100base-TX instead for 1000base-TX with auto-select.

    I checked my hardware, it should support gigabit. em0 is WAN interface and em1 is LAN interface, where the LAN is connected to an unmanged L2 D-Link Gigabit switch. I change to other cable and ports, even different switch, but still unable to get gigabit connection.

    [2.4.3-RELEASE][root@]/root: ifconfig -m
    em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
            options=5209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO>
            capabilities=15399b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_UCAST,WOL_MCAST,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,NETMAP>
            ether 00:e8:4c:aa:aa:aa
            hwaddr 00:e8:4c:aa:aa:aa
            nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
            media: Ethernet autoselect (100baseTX <full-duplex>)
            status: active
            supported media:
                    media autoselect
                    media 1000baseT
                    media 1000baseT mediaopt full-duplex
                    media 100baseTX mediaopt full-duplex
                    media 100baseTX
                    media 10baseT/UTP mediaopt full-duplex
                    media 10baseT/UTP
    
    
    [2.4.3-RELEASE][root]/root: pciconf -lv
    em0@pci0:1:0:0: class=0x020000 card=0x6c401462 chip=0x10d38086 rev=0x00 hdr=0x00
        vendor     = 'Intel Corporation'
        device     = '82574L Gigabit Network Connection'
        class      = network
        subclass   = ethernet
    em1@pci0:2:0:0: class=0x020000 card=0x6c401462 chip=0x10d38086 rev=0x00 hdr=0x00
        vendor     = 'Intel Corporation'
        device     = '82574L Gigabit Network Connection'
        class      = network
        subclass   = ethernet
    
    [2.4.3-RELEASE][root@fw.minorhythm.net]/root: dmesg | grep Intel
    CPU: Intel(R) Celeron(R) CPU 1037U @ 1.80GHz (1795.96-MHz K8-class CPU)
    em0: <Intel(R) PRO/1000 Network Connection 7.6.1-k> port 0xe000-0xe01f mem 0xf7d00000-0xf7d1ffff,0xf7d20000-0xf7d23fff irq 16 at device 0.0 on pci1
    em1: <Intel(R) PRO/1000 Network Connection 7.6.1-k> port 0xd000-0xd01f mem 0xf7c00000-0xf7c1ffff,0xf7c20000-0xf7c23fff irq 17 at device 0.0 on pci2
    

    May I know any have the solution to fix this?


  • Galactic Empire

    Tried swapping out the patch leads ?


  • Netgate Administrator

    Mmm, bad cables would also be my first guess there. Not having all 4 pairs connected is about the only reason it would negotiate a 100Mb link.
    Can you set 1Gb full duplex? Can you still pass traffic?

    Steve



  • @nogbadthebad said in Intel Gigabit port but only get 100mbps:

    Tried swapping out the patch leads ?

    I changed to other cable but still the same result.

    @stephenw10 said in Intel Gigabit port but only get 100mbps:

    Mmm, bad cables would also be my first guess there. Not having all 4 pairs connected is about the only reason it would negotiate a 100Mb link.
    Can you set 1Gb full duplex? Can you still pass traffic?

    Steve

    As mentioned, I changed with other cable but still get 100mbps. The link won't up if I change it to 1000base-T full duplex


  • Netgate Administrator

    Try connecting the two ports together as a test. Obviously that will screw with the routing completely but they should be able to negotiate a link. That rules out any external stuff.

    What board is that exactly?

    Steve


  • Rebel Alliance Global Moderator

    You changed it with a cable and to a port you know gets gig?

    Have seen users change to cable that is also bad too many times to count ;)

    You need to validate that the cable can do gig and that the switch port can do gig, etc.

    The test of taking a known good cable and connecting the two interfaces together just to see if they neg gig is valid.



  • @stephenw10 said in Intel Gigabit port but only get 100mbps:

    Try connecting the two ports together as a test. Obviously that will screw with the routing completely but they should be able to negotiate a link. That rules out any external stuff.

    What board is that exactly?

    Steve

    Verify from console to verify the port speed after connect the two ports together?
    It is an unknown board which I purchased from taobao, where I get it know the pfsense box from here

    @johnpoz said in Intel Gigabit port but only get 100mbps:

    You changed it with a cable and to a port you know gets gig?

    Have seen users change to cable that is also bad too many times to count ;)

    You need to validate that the cable can do gig and that the switch port can do gig, etc.

    The test of taking a known good cable and connecting the two interfaces together just to see if they neg gig is valid.

    I used the same cable and port which currently connect to my PC that running at gig, connect it to the pfsense box, it still get 100mbps.

    I will run more test this weekend and share the result.


  • Netgate Administrator

    Yes, connect the ports together then run ifconfig at the console to check the link speed.

    It's unlikely, but possible, that device does not actually have 1G PHYs maybe... Or some firmware issue...

    Steve



  • We are talking about a single patch cord between the 2 devices right, what is in the "middle?" any wall wirings? There is a by-the-book minimum cable length of 1 meter/3 foot blah-blah.

    These prob always turn out to be bad/under-spec cabling, somewhere along the path.



  • @kloon said in Intel Gigabit port but only get 100mbps:

    As mentioned, I changed with other cable but still get 100mbps. The link won't up if I change it to 1000base-T full duplex

    Yeah. Don't ever do that. If it's not autonegotiating properly, fix the problem; forcing it will just screw things up worse.


  • Rebel Alliance Global Moderator

    ^ exactly... You wouldn't believe how many times have this discussion. Gig is designed to auto, if it doesn't auto then something is wrong.. You fix that something vs hard code..

    Only time you would hard code is if your wanting gig to run at 100 or 10..


  • Netgate

    @johnpoz said in Intel Gigabit port but only get 100mbps:

    ^ exactly... You wouldn't believe how many times have this discussion. Gig is designed to auto, if it doesn't auto then something is wrong.. You fix that something vs hard code..

    Only time you would hard code is if your wanting gig to run at 100 or 10..

    And then only if you know the other side is also hard-set and not auto-negotiate.

    About the only place this should ever be the case these days is talking to an ISP 100-Mbit metro-e or something. They often want you to hard-set 100-full for those. They should explicitly ask you to do so.