Найти тему
Nag.news

Блокировка трансиверов в коммутаторах Arista. Как избежать?

Каждый вендор хочет, чтобы клиент использовал его оборудование, например коммутаторы, маршрутизаторы и т.д. (включая трансиверы). Если в коммутаторах Cisco установить трансивер Juniper, то он будет "жаловаться", но с помощью давно известной команды service unsupported-transceiver, проблема исчезает (хотя компания Cisco сама говорит, что использовать эту команду не рекомендовано). Но в этой статье мы поговорим об коммутаторов Arista.

Для примера возьмём коммутатор DCS-7148SX-F Arista и установим трансивер Cisco в любой порт. В ответ Arista выведет гневное сообщение:

Apr  3 03:33:58 localhost XcvrAgent: %TRANSCEIVER-3-DISABLED: The transceiver for interface Ethernet6 has been disabled because it is not qualified. 
(manufacturer CISCO-AVAGO model SFBR-709SMZ-CS1 serial number AVD1824AA03)
Apr  3 03:34:05 localhost XcvrAgent: %TRANSCEIVER-3-DISABLED: The transceiver for interface Ethernet10 has been disabled because it is not qualified. 
(manufacturer CISCO-AVAGO model SFBR-7702SDZ-CS5 serial number AGD1648446D)

Если посмотреть, как определяется трансивер, то увидим, что это Cisco:

localhost#sh inv
  Port Manufacturer     Model            Serial Number    Rev
  ---- ---------------- ---------------- ---------------- ----
  6    CISCO-AVAGO      SFBR-709SMZ-CS1  AVD1824AA03      G4.1
 10   CISCO-AVAGO      SFBR-7702SDZ-CS5 AGD1648446D      G2.5

Если мы посмотрим на состояние трансиверов, то обнаружим, что коммутатор не распознает уровень сигнала Rx и Tx (dB):

localhost#sh int transceiver
If device is externally calibrated, only calibrated values are printed.
N/A: not applicable, Tx: transmit, Rx: receive.
mA: milliamperes, dBm: decibels (milliwatts).
                               Bias      Optical   OpticalTemp       Voltage   Current   Tx Power  Rx Power  Last UpdatePort      (Celsius)  (Volts)   (mA)      (dBm)     (dBm)     (Date Time)-----     ---------  --------  --------  --------  --------  -------------------Et6        22.88      3.32      0.00     -40.00    -40.00    2025-04-03 03:34:31
Et10       22.34      3.32      0.00     -40.00    -40.00    2025-04-03 03:34:26

Однако, есть возможность отключения проверки оригинальности трансиверов у коммутатора Arista. Файл называется enable3px.key.

localhost#copy usb1:enable3px.key flash:
Copy completed successfully.

Если посмотрим снова, как определились трансиверы, то все осталось без изменений:

localhost#sh inv
  Port Manufacturer     Model            Serial Number    Rev
  ---- ---------------- ---------------- ---------------- ----
  6    CISCO-AVAGO      SFBR-709SMZ-CS1  AVD1824AA03      G4.1
  10   CISCO-AVAGO      SFBR-7702SDZ-CS5 AGD1648446D      G2.5

После посмотрим, может ли он работать с Rx и Tx-каналов трансивера и увидим, что всё хорошо!

localhost#sh int transceiver
If device is externally calibrated, only calibrated values are printed.
N/A: not applicable, Tx: transmit, Rx: receive.
mA: milliamperes, dBm: decibels (milliwatts).Bias      Optical   OpticalTemp       Voltage   Current   Tx Power  Rx Power  Last Update
Port      (Celsius)  (Volts)   (mA)      (dBm)     (dBm)     (Date Time)
-----     ---------  --------  --------  --------  --------  -------------------
Et6        26.07      3.32      7.03     -2.58     -5.91     2025-04-03 03:36:54
Et10       27.25      3.33      7.61     -2.48     -3.13     2025-04-03 03:36:53

Теперь предлагаю рассмотреть, что за магия находится в данном файле. Если открыть файл, мы увидим следующую команду:

EMC,677096c7

Можем сделать вывод, что в регистр EMC заносится значение 677096C7, которое пропускает проверку вендора в оперативной памяти коммутатора. Данный файл можно заменить следующими командами:

service unsupported-transceiver wiprolabs f5047577
service unsupported-transceiver EMC 677096c7

Компания Arista не сообщает про данный способ отключения проверки оригинальности трансиверов, тем не менее он есть, по аналогии с Cisco.