Doubt I'll get any answer back after all this time but just wanted to say "me too". I'm getting the same problem as the op back in 2009
with my 8086:1010 Intel Corporation 82546EB Gigabit Ethernet Controller (Copper)
dual port ethernet card and Ubuntu 22.04.2 LTS using e1000
driver:
# ethtool eth1
Settings for eth1:
Supported ports: [ FIBRE ]
Supported link modes: 1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: on
Port: FIBRE
PHYAD: 0
Transceiver: internal
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
# ethtool eth2
Settings for eth2:
Supported ports: [ FIBRE ]
Supported link modes: 1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: on
Port: FIBRE
PHYAD: 0
Transceiver: internal
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
# ifconfig eth1
eth1: flags=6147<UP,BROADCAST,SLAVE,MULTICAST> mtu 1500
ether MAC_BOND0 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
# ifconfig eth2
eth2: flags=6147<UP,BROADCAST,SLAVE,MULTICAST> mtu 1500
ether MAC_BOND0 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
that I have configured in LACP bond0
:
# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v5.15.0-69-generic
Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2+3 (2)
MII Status: down
MII Polling Interval (ms): 100
Up Delay (ms): 100
Down Delay (ms): 100
Peer Notification Delay (ms): 0
802.3ad info
LACP active: on
LACP rate: fast
Min links: 0
Aggregator selection policy (ad_select): stable
System priority: 65535
System MAC address: MAC_BOND0
bond bond0 has no active aggregator
Slave Interface: eth1
MII Status: down
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: MAC_ETH1
Slave queue ID: 0
Aggregator ID: 1
Actor Churn State: churned
Partner Churn State: churned
Actor Churned Count: 1
Partner Churned Count: 1
details actor lacp pdu:
system priority: 65535
system mac address: MAC_BOND0
port key: 0
port priority: 255
port number: 1
port state: 71
details partner lacp pdu:
system priority: 65535
system mac address: 00:00:00:00:00:00
oper key: 1
port priority: 255
port number: 1
port state: 1
Slave Interface: eth2
MII Status: down
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: MAC_ETH2
Slave queue ID: 0
Aggregator ID: 2
Actor Churn State: churned
Partner Churn State: churned
Actor Churned Count: 1
Partner Churned Count: 1
details actor lacp pdu:
system priority: 65535
system mac address: MAC_BOND0
port key: 0
port priority: 255
port number: 2
port state: 71
details partner lacp pdu:
system priority: 65535
system mac address: 00:00:00:00:00:00
oper key: 1
port priority: 255
port number: 1
port state: 1
that is in state down
of course since both interfaces have MII Status: down
. The dmesg shows:
# dmesg | grep -E "bond0|eth[1|2]"
[ 42.999281] e1000 0000:01:0a.0 eth1: (PCI:33MHz:32-bit) MAC_ETH1
[ 42.999292] e1000 0000:01:0a.0 eth1: Intel(R) PRO/1000 Network Connection
[ 43.323358] e1000 0000:01:0a.1 eth2: (PCI:33MHz:32-bit) MAC_ETH2
[ 43.323366] e1000 0000:01:0a.1 eth2: Intel(R) PRO/1000 Network Connection
[ 65.617020] bonding: bond0 is being created...
[ 65.787883] 8021q: adding VLAN 0 to HW filter on device eth1
[ 67.790638] 8021q: adding VLAN 0 to HW filter on device eth2
[ 70.094511] 8021q: adding VLAN 0 to HW filter on device bond0
[ 70.558364] 8021q: adding VLAN 0 to HW filter on device eth1
[ 70.558675] bond0: (slave eth1): Enslaving as a backup interface with a down link
[ 70.560050] 8021q: adding VLAN 0 to HW filter on device eth2
[ 70.560354] bond0: (slave eth2): Enslaving as a backup interface with a down link
So both eth1 and eth2 are UP and recognised, ethtool
says Link detected: yes
but their links are DOWN. I have the same confusing port type of FIBRE reported by ethtool
(capabilities reported by lshw
are capabilities: pm pcix msi cap_list rom ethernet physical fibre 1000bt-fd autonegotiation
). It is weird and I suspect some hardware or firmware issue. Any ideas are welcome.
P.S: It is not the switch or the switch ports and it is not the cables already tested that.