так тут вопрос не в дискавери, а в том, что неправильные данные в snmp. Вот для примера он показывает скорость на интерфейсе, на котором нет линка, а на другом с линком показывает 0
[Expert@CP-GW:0]# snmpwalk -On -v2c -c
127.0.0.1 .1.3.6.1.2.1.2.2.1.2.14
.1.3.6.1.2.1.2.2.1.2.14 = STRING: eth4-03
[Expert@CP-GW:0]# snmpwalk -On -v2c -c
127.0.0.1 .1.3.6.1.2.1.2.2.1.5.14
.1.3.6.1.2.1.2.2.1.5.14 = Gauge32: 10000000
[Expert@CP-GW:0]# ethtool eth4-03
Settings for eth4-03:
Supported ports: [ FIBRE ]
Supported link modes: 10000baseT/Full
Supports auto-negotiation: No
Advertised link modes: 10000baseT/Full
Advertised auto-negotiation: No
Speed: Unknown!
Duplex: Unknown! (255)
Port: FIBRE
PHYAD: 0
Transceiver: external
Auto-negotiation: off
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
Link detected: no