Outils et diagnostic NIC : lire un module depuis le serveur · Cartes d’interface réseau · Cartes réseau et commutateurs · Documentation · CodingBox
CodingBox Documentation

Outils et diagnostic NIC : lire un module depuis le serveur

Un serveur n’a pas de show interface transceiver, mais dispose de la même information un niveau plus bas : le pilote NIC lit l’EEPROM du module et l’expose via ethtool, des utilitaires constructeur et, sous Windows et ESXi, via leurs propres commandes. Cette page recense les outils par OS et par constructeur, ce que chacun montre (identité, DDM, compteurs FEC, état de la liaison, PCIe), et comment interpréter la sortie quand une liaison est down ou que les erreurs s’accumulent.

Linux : ethtool

CommandeAffiche
ethtool eth0état de la liaison, débit, duplex, autonégociation, modes pris en charge/annoncés, type de port (FIBRE/DA)
ethtool -m eth0 (--module-info)EEPROM décodée : identifiant, constructeur, PN, SN, date, conformité, longueur d’onde, longueurs ; DDM (température, Vcc, bias, puissance Tx/Rx, seuils, indicateurs d’alarme) si le module en dispose
ethtool -m eth0 raw on hex ondump brut A0h (et A2h) pour une comparaison octet par octet (Plan mémoire)
ethtool -m eth0 page 0x11 … (plus récent)pages CMIS sur les modules 400G et plus
ethtool -i eth0pilote, version, version du firmware/NVM, adresse de bus
ethtool -S eth0statistiques, dont erreurs CRC, FEC corrigées/non corrigées selon le pilote
ethtool --show-fec eth0 / --set-fec eth0 encoding rsmode FEC configuré et actif
ethtool -s eth0 speed 25000 duplex full autoneg offforcer le débit
ethtool -p eth0 5faire clignoter la LED du port pour l’identifier
ethtool --show-priv-flags eth0indicateurs propres au pilote (p. ex. link-down-on-close)

Autres sources sous Linux : dmesg filtré sur sfp, module et link (messages du pilote sur la qualification du module), lspci -vv -s <addr> (largeur/débit de la liaison PCIe sous LnkSta), ip -s link show eth0 (compteurs), /sys/class/net/eth0/ (carrier, speed).

Outils constructeur

ConstructeurOutilUsages clés
Nvidia / Mellanoxmlxlink -d <pci> -m -e -cinfos module et DDM (-m), diagramme de l’œil/TEB et FEC (-e, -c), partenaire de liaison ; mlxlink … --fec_override, --speeds
Nvidia / Mellanoxmlxconfig -d <pci> q / settype de port (IB/ETH), type de liaison, KEEP_ETH_LINK_UP, FEC override, éclatement (breakout)
Nvidia / Mellanoxmst status, mlxfwmanagerliste des périphériques, firmware
Nvidia / Mellanoxibstat, ibportstate, iblinkinfoétat, largeur, débit du port InfiniBand (Fabric IB)
Intelethtool -mprincipal ; Intel n’a pas d’outil dédié de dump de module
Intelnvmupdate64e, epct64emise à jour du firmware NVM ; configuration des ports (options de port E810, p. ex. 2×100G vs 4×25G)
Inteldmesgmessages ixgbe/i40e/ice: unsupported module (Compatibilité des transceivers)
Broadcombnxtnvm, niccliNVM, réglages de port, FEC/AN, infos transceiver
Marvellqedctl—
AMD Solarflaresfupdate, sfbootfirmware, modes de port
Chelsiocxgbtool—

Windows

CommandeAffiche
Get-NetAdapterétat de la liaison, débit
Get-NetAdapterAdvancedProperty -Name "Ethernet 2"débit/duplex, mode FEC, jumbo — modifiable avec Set-NetAdapterAdvancedProperty
Get-NetAdapterHardwareInfoemplacement PCIe, largeur/débit de la liaison
Get-NetAdapterStatisticscompteurs
Intel PROSet : Get-IntelNetAdapter, Get-IntelNetAdapterSettingréglages spécifiques à Intel ; infos module dans le Gestionnaire de périphériques → onglet Link Speed
Nvidia WinOF-2 : mlx5cmd -Stat, mlxlink (version Windows)infos module et diagnostics de liaison
Observateur d’événements → Systèmemessages du pilote sur les modules non pris en charge

Les pilotes Windows exposent rarement le DDM ; utilisez les outils constructeur ou lisez le module sur l’établi.

VMware ESXi

CommandeAffiche
esxcli network nic list / get -n vmnic0liaison, débit, pilote, firmware
esxcli network nic stats get -n vmnic0compteurs
esxcli system module parameters list -m ixgben / set -m ixgben -p "…"paramètres du pilote, là où c’est pris en charge
esxcli intnet … (plugin Intel), esxcli mellanox … / mlxlink (plugin Nvidia)diagnostics constructeur, dont infos module
vmkernel.log« unsupported module », flaps de liaison
esxcli hardware pci listétat de la liaison PCIe

Lire la sortie

ObservationSignificationÉtape suivante
ethtool -m : « Cannot get module EEPROM information : Operation not supported »le pilote ne l’expose pas, le port n’a pas de module, ou l’I²C du module ne répond pasvérifier dmesg, réenficher, essayer un autre port (Erreurs de lecture et d’écriture)
Identité lisible, Link detected: no, puissance Rx normaledésaccord de débit/FEC/ANethtool --show-fec, comparer avec le commutateur (FEC et AN)
Puissance Rx −40 dBm / « -inf »pas de lumièrefibre, extrémité distante, polarité (Pas de liaison)
Bias et puissance Tx correctes, Rx marginaleconnecteur sale, liaison longuenettoyer, bilan (Puissance Rx et bilan)
Compteurs FEC non corrigibles en hausseliaison à la limiteniveaux DDM, classe de câble, température (VDM et métriques FEC)
Température > 70 °C dans un serveur 1Uflux d’airrepositionner, emplacement OCP (Ports et PCIe)
LnkSta: Speed 8GT/s, Width x8 sur une carte 2×100Ggoulot d’étranglement PCIeemplacement/bifurcation
dmesg : unsupported moduleliste blanche du piloteCompatibilité des transceivers sur les NIC

Surveillance depuis le serveur

  • La sortie de ethtool -m est analysable automatiquement ; une tâche cron ou un node exporter avec le collecteur ethtool exporte le DDM vers une supervision de type Prometheus (Surveillance).
  • La sortie JSON de mlxlink (--json) chez Nvidia et les compteurs FEC d’ethtool -S chez Intel constituent de bons signaux avant défaillance (Fiabilité et surveillance des liaisons).
  • Des intervalles d’interrogation de 30–60 s suffisent ; le DDM lui-même se met à jour au mieux chaque seconde.

Dans CodingBox

ethtool -m raw on hex on et CodingBox lisent les mêmes octets : quand un module se comporte différemment sur une NIC et sur l’établi, comparez les deux dumps champ par champ — un pilote qui ne réécrit rien affichera des données identiques, et toute différence pointe vers les pages dynamiques propres au module ou vers une erreur de lecture (Check transceiver, Lecture du DDM avec des outils).


Si vous trouvez une inexactitude ou une erreur dans cet article, sélectionnez le passage concerné et appuyez sur Ctrl+Enter pour .