Патчер EEPROM для Intel X520: переключение бита по смещению 0x58 для приёма любого модуля SFP+ на любой ОС
Карты Intel X520 (82599) применяют список одобренных модулей SFP+; под Linux помогает параметр ixgbe, но на Windows или ESXi такой опции нет. В gist приводится Python-скрипт, который считывает EEPROM карты через ethtool -e и устанавливает бит 0 в байте по смещению 0x58 (0 = только модули Intel, 1 = любой модуль) с помощью ethtool -E, используя специфичное для устройства магическое значение. Пользователи сообщали о несовместимостях с Python 3 и Ubuntu 22.04, которые были исправлены в форках, о том, что карты остаются разблокированными после переноса в Windows, и как минимум об одной X520-SR2, которая после патча всё равно отклоняла модули не от Intel.
- Оборудование: Intel X520-DA1, Intel X520-DA2, Intel X520-SR2, Intel 82599ES
- Трансиверы: сторонние SFP+
- Форм-фактор: SFP+
Симптомы/сообщения:
unsupported SFP+ module rejected on Windows/ESXi
no carrier with non-Intel module
Comments 2
Загрузитесь в Linux (подойдёт live USB), запустите скрипт от root, чтобы установить бит 0 по смещению EEPROM 0x58 через ethtool -E с правильным magic-значением; изменение постоянное и после этого работает на любой ОС. На Python 3 / Ubuntu 22.04+ используйте исправленную сообществом версию.
Некоторые варианты, например X520-SR2, могут продолжать отклонять модули даже после патча.