Verrouillage constructeur et « unsupported transceiver »
Le problème de transceiver le plus courant, de loin. Les constructeurs de commutateurs et de NIC — Cisco, Intel, HPE/Aruba, Juniper, Mellanox et d’autres — vérifient les chaînes d’identification qu’un module rapporte depuis son EEPROM, et refusent ou signalent les modules qu’ils ne reconnaissent pas.
Ce que les ingénieurs apprennent à leurs dépens : « unsupported » ne veut pas dire « ça ne fonctionnera pas ». Sur la plupart des plateformes, le statut est informatif et le port peut être amené à monter.
Symptômes
| Plateforme | Ce que vous voyez |
|---|---|
| Cisco IOS | Port notconnect — unsupported ; journal %C4K_TRANSCEIVERMAN-3-INCOMPATIBLE |
| Cisco IOS après une mise à jour | Le port passe en errdisable, motif gbic-invalid |
| Mellanox | L’EEPROM est lu mais pas de liaison : speed and type: Not supported |
| Intel X520 / ixgbe | no carrier avec un SFP non-Intel |
Ce qui fonctionne
Cisco. Deux commandes sont couramment intégrées dans les configurations de base pour autoriser les modules tiers sur tous les ports :
service unsupported-transceiver
no errdisable detect cause gbic-invalid
Particularités de plateforme : sur certaines versions Catalyst 9200, la première commande renvoie % Ambiguous command — tapez-la en entier ; sur Nexus 9000, c’est une commande cachée sans complétion par tabulation, mais elle est acceptée.
Intel X520 (Linux). Chargez le pilote avec l’option qui autorise les modules non-Intel :
modprobe ixgbe allow_unsupported_sfp=1
Une variante persistante qui bascule un bit dans l’EEPROM propre au NIC existe et est documentée dans les sources ci-dessous — maniez-la avec précaution, car une écriture erronée dans l’EEPROM du NIC n’est pas récupérable sur le terrain.
Série ASR 9000. Un module inséré dans un port déjà up peut ne pas être détecté : shut le port, insérez le module, puis no shut.
Le remède radical — recoder le module. Réécrivez l’ID constructeur et la référence du module pour qu’il se présente comme un module natif. C’est ce que fait CodingBox dans l’EEPROM editor, avec recalcul de CC_BASE/CC_EXT et une sauvegarde prise au préalable. Voir Recodage EEPROM pour le mécanisme.
Le conseil que tout le monde répète
Gardez un module OEM d’origine de chaque type sur l’étagère. Insérez-le avant d’ouvrir un ticket de support, pour que le constructeur ne puisse pas attribuer le problème aux optiques tierces.
Vérifier sur le commutateur
Après l’une ou l’autre de ces actions, confirmez que le module est vu et lu : voir Vérifier les optiques sur un commutateur pour les commandes par NOS, et comparez avec l’identité que CodingBox lit sur banc.
Ce que compare exactement un hôte — nom, PN, OUI, motif de numéro de série, signature constructeur — et à quelle étape du démarrage il rejette : Champs constructeur, Ce que fait l’hôte.
Comportement de validation par constructeur et contournements dans un seul tableau : Comment chaque NOS valide un module ; les chaînes PN exactes attendues par les plateformes : Références OEM ; syntaxe des commandes par NOS : Recettes de configuration de port.