Description

How to manually set the link-mode/speed on the fxp0 port.

Symptoms

By default, the link-mode and speed of the fxp0 interface is set to auto-negotiation.

In many customer installations, the duplex and speed of this interface is manually set.  However, with some configurations the link-mode/speed does not change if either duplex or speed setting is configured.   When the autonegotiation with the switch does not produce the desired duplex/speed setting, a configuration may be modified to set this manually.

For example :
If you examine the fxp0 interface may reveal it is running the correct speed, but incorrect duplex setting.

user@jochberg-re0> show interfaces fxp0
Physical interface: fxp0, Enabled, Physical link is Up
  Interface index: 1, SNMP ifIndex: 1
  Type: Ethernet, Link-level type: Ethernet, MTU: 1514, Speed: 100mbps
  Device flags   : Present Running
  Interface flags: SNMP-Traps
  Link type      : Half-Duplex
  Link flags     : None
  Current address: 00:80:42:13:65:aa, Hardware address: 00:80:42:13:65:aa
  Last flapped   : Never
  Input packets : 500396
  Output packets: 108561



The obvious solution is to set the link-mode to full, as the speed is already correctly negotiated to 100Mbps.  So a configuration might look like this :

user@jochberg-re0> show configuration interfaces fxp0
link-mode full-duplex;
unit 0 {
    family inet {
        address 172.27.18.230/24;
    }
}



After a commit, this is 'expected' to fix the port duplex. 

user@jochberg-re0> show interfaces fxp0
Physical interface: fxp0, Enabled, Physical link is Up
  Interface index: 1, SNMP ifIndex: 1
  Type: Ethernet, Link-level type: Ethernet, MTU: 1514, Speed: 100mbps
  Device flags   : Present Running
  Interface flags: SNMP-Traps
  Link type      : Half-Duplex
  Link flags     : None
  Current address: 00:80:42:13:65:aa, Hardware address: 00:80:42:13:65:aa
  Last flapped   : Never
  Input packets : 501000
  Output packets: 109456



However, another look at the interface, and it is still running in half-duplex mode.  Why?

Solution

The manual/autoconfiguration settings on an Ethernet interface, if only one of the two (link-mode + speed) is configured, then it will still autonegotiate.  The solution to the problem is to configure both - the link-mode and the speed.

With the following configuration :

user@jochberg-re0> show configuration interfaces fxp0
link-mode full-duplex;
speed 100m;
unit 0 {
    family inet {
        address 172.27.18.230/24;
    }
}


The link-mode is now correctly set to 100M and FULL-DUPLEX as required.