I use debian for my things,but when i config speed 1000 and duplex full the error occur

the exactly command i use: ethtool -s eth0 autoneg off speed 1000 duplex full

  Cannot set new settings: Invalid argument
         not setting speed
         not setting duplex
         not setting autoneg
  Cannot set new settings: Invalid argument
         not setting speed
         not setting duplex
         not setting autoneg

And this is my eth0 information.

   Settings for eth0:
        Supported ports: [ TP ]
        Supported link modes:   10baseT/Half 10baseT/Full 
                        100baseT/Half 100baseT/Full 
     Supported pause frame use: No
     Supports auto-negotiation: Yes
     Advertised link modes:  10baseT/Half 10baseT/Full 
                        100baseT/Half 100baseT/Full 
     Advertised pause frame use: No
     Advertised auto-negotiation: Yes
     Speed: 100Mb/s
     Duplex: Full
     Port: Twisted Pair
     PHYAD: 1
     Transceiver: internal
     Auto-negotiation: on
     MDI-X: Unknown
     Supports Wake-on: g
     Wake-on: d
     Link detected: yes

      driver: bnx2
      version: 2.1.11
      firmware-version: bc 3.5.12 ipms 1.6.0
      bus-info: 0000:04:00.0
      supports-statistics: yes
      supports-test: yes
      supports-eeprom-access: yes
      supports-register-dump: yes
      supports-priv-flags: no

Could any one tell me which is the wrong place?

  • Please post the exact command you're using to set the speed. Jun 8, 2012 at 8:48
  • sorry, i just add it.
    – altman
    Jun 8, 2012 at 8:52
  • 1
    FYI, you should almost never be forcing the link speed/duplex on a Gig link. If I can find the link someone had a really good blog post pointing go various specs saying that forcing the duplex for gig links is actually harmful most of the time. This may have been it... etherealmind.com/…
    – Zoredache
    Jun 8, 2012 at 9:15
  • 1
    While that blog post is interesting, and mostly valid, what he's saying is condradicted by many of the comments. Indeed, at the company I work, it is often necessary to force the speed link on Gig links. Advised by such equipment manufacturers Cisco, Oracle, HP. Clearly we had issues that did not fall into the 'most of the time' category, but I think that many visitors here will fall into this category too.
    – Sirch
    Jun 8, 2012 at 12:19
  • 1
    Incidentally, I know my answer is 1.5 years late, but, the bnx2 driver does not allow disabling autonegotiation with speeds of 1 or 2.5 Gb/s. See bnx2.c:bnx2_set_settings() in the linux kernel source code for details.
    – etherfish
    Feb 24, 2014 at 12:42

2 Answers 2


Did you try,

sudo ethtool -s eth0 speed 1000 duplex full autoneg off

but I support Zoredache's comment, you should probably not be forcing the link speed, and unless it doesn't work without it, you should leave the machine set to autoneg, and ensure the network port is set to the right speed.

  • i follow your answers.But i'm sorry.It's not usefull
    – altman
    Jun 13, 2012 at 6:14
  • 1
    -1 how exactly are your ethtool parameters different from the OP's?
    – vladr
    Jun 16, 2015 at 17:46
  • @vladr the OP edited the question after I posted my answer, and included the command, it wasn't in the question when I originally wrote my answer. Jun 16, 2015 at 21:04

Autonegotiation is a requirement for using 1000BASE-T according to Section 28D.5 of IEEE 802.3-2002 specification, so you cannot disable autonegotiation with 1000BASE-T.

Try -

sudo ethtool -s eth0 speed 1000 duplex full autoneg on

  • 1
    While it's required by the specification, some vendors provide an option to disable autonegotiation while operating at gigabit speeds. This was relevant a decade ago when gigabit NICs were less reliable, but the non-standard configuration option still exists in certain NIC drivers, switches, and other equipment.
    – etherfish
    Feb 24, 2014 at 12:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.