Intel i225 / i226-V 固件升级指南
Intel i225 / i226-V 固件升级
背景
i225 / i226-V 这两代 Intel 2.5G 网卡,网上一直有不少关于 断流、掉线、网络不稳定 的讨论。
在恩山等论坛上也能看到很多相关帖子,其中一种比较常见的说法是,网卡芯片距离主板上的其他高发热部件较近,长时间使用后可能因为积热导致网络异常。
因此很多讨论最终都会把问题归结到:
- 网卡硬件本身的问题
- 主板设计或散热问题
- 网卡芯片温度过高
- 驱动兼容性问题
我这边实际使用过程中也一直存在经常性断网的问题,3秒到必须重新插拔网线不等。
之前尝试过不少方法,包括:
- 给网卡和主板加强散热
- 降低机箱内部温度
- 更新 Intel 网卡驱动
- 更换不同版本的驱动
- 调整部分网卡高级属性
但实际使用下来,断网问题依然存在。
后来在 GitHub 上看到了 i225 / i226 的 NVM 固件升级资料,因此尝试升级网卡固件。
需要说明的是,升级固件并不代表一定能够解决所有 i225 / i226 的断流问题,目前观察中
本文主要记录固件升级方法以及实际操作过程。
相关固件及工具:
GitHub:intel_i225_i226_firmware
i225 与 i226-V
本文实际操作使用的是:
1 | Intel Ethernet Controller I226-V |
因此,如果使用的是 i225,也可以参考下面的操作过程。
注意:i225 和 i226-V 使用的固件文件并不相同。
不要直接把本文中的 i226-V 固件文件刷入 i225,实际操作时需要根据自己的网卡型号选择对应的 NVM 文件。
1. 安装驱动
首先安装 EEUPDATE 所需要的驱动。
找到:
1 | iqvsw64e.inf |
右键该文件,选择 安装。
2. 查看当前固件版本
以管理员身份打开 PowerShell 或 CMD。
进入 EEUPDATEW64e.exe 所在目录:
1 | cd 当前目录 |
然后执行:
1 | .\EEUPDATEW64e.exe /nic=1 /eepromver |
执行后会列出当前系统中 EEUPDATE 能够识别到的 Intel 网卡。
例如:
1 | NIC Bus Dev Fun Vendor-Device Branding string |
其中:
1 | NIC 1 |
表示系统中识别到了两块可以操作的 Intel 网卡。
命令中的:
1 | /nic=1 |
就是指定操作第一块网卡。
随后可以看到当前固件版本,例如:
1 | 1: EEPROM Image Version: 2.23 |
表示当前网卡固件版本为:
1 | 2.23 |
3. 更新固件
注意:
如果电脑中存在多个 Intel 网卡设备,刷写之前一定要确认目标网卡对应的 NIC 编号。
如果担心选错,也可以先在设备管理器中禁用其他不需要操作的网卡。
i226-V 版本 2.32:2MB
固件说明:
执行:
1 | .\EEUPDATEW64e.exe /nic=1 /d NVM\FXVL_125C_V_2MB_2.32.bin |
如果刷写成功,会看到:
1 | Writing SHARED FLASH. PLEASE DO NOT INTERRUPT THIS PROCESS. |
i226-V 版本 2.32:1MB
执行:
1 | .\EEUPDATEW64e.exe /nic=1 /d NVM\FXVL_125C_V_1MB_2.32.bin |
4. 如何判断使用 1MB 还是 2MB 固件
i226-V 固件存在 1MB 和 2MB 两种 Flash 版本。
如果不知道自己的网卡具体使用哪种容量,可以先尝试 2MB 版本。
如果当前设备实际使用的是 1MB Flash,刷入 2MB 固件时可能出现:
1 | 1: Shared Flash image update FAILED! Flash index is bad or out of range |
此时改用:
1 | .\EEUPDATEW64e.exe /nic=1 /d NVM\FXVL_125C_V_1MB_2.32.bin |
即可。
i225 同样需要根据对应网卡型号和 Flash 容量选择正确的固件文件,具体文件名以固件仓库中的说明为准。
5. 实际刷写过程
下面是我这块 i226-V 从 2.23 升级到 2.32 的实际操作记录。
首先查看当前固件:
1 | C:\Users\admin\Desktop\intel_i225_i226_firmware>.\EEUPDATEW64e.exe /nic=1 /eepromver |
输出:
1 | Using: Intel (R) PRO Network Connections SDK v2.38.10 |
可以确认升级前版本:
1 | 2.23 |
然后刷入 2MB 的 2.32 固件:
1 | C:\Users\admin\Desktop\intel_i225_i226_firmware>.\EEUPDATEW64e.exe /nic=1 /d NVM\FXVL_125C_V_2MB_2.32.bin |
输出:
1 | Using: Intel (R) PRO Network Connections SDK v2.38.10 |
看到:
1 | Shared Flash image updated successfully. |
说明固件已经成功写入。
固件写入过程中不要关机、重启或断电,也不要强制结束 EEUPDATE。
6. 完全断电
固件刷写成功之后:
- 关闭电脑
- 拔掉电源线
- 等待大约 1 分钟
- 重新接通电源
- 开机
这一步非常重要。
如果主板开启了 Wake on LAN,电脑正常关机之后网卡可能仍然处于待机供电状态。
因此仅仅执行 Windows 关机,并不一定意味着网卡已经完全掉电。
固件更新之后最好拔掉整机电源,让网卡完全断电后再重新启动。
7. 验证升级结果
重新开机后,再次执行:
1 | .\EEUPDATEW64e.exe /nic=1 /eepromver |
如果升级成功,应该可以看到:
1 | 1: EEPROM Image Version: 2.32 |
也就是固件版本由:
1 | 2.23 |
升级到了:
1 | 2.32 |
8. 常用命令
查看当前固件版本:
1 | .\EEUPDATEW64e.exe /nic=1 /eepromver |
i226-V 刷写 2MB 固件:
1 | .\EEUPDATEW64e.exe /nic=1 /d NVM\FXVL_125C_V_2MB_2.32.bin |
i226-V 刷写 1MB 固件:
1 | .\EEUPDATEW64e.exe /nic=1 /d NVM\FXVL_125C_V_1MB_2.32.bin |
总结
i225 / i226-V 的断流问题网上已经讨论了很多年。
从目前能看到的各种反馈来看,原因并不一定只有一个,可能涉及:
- 网卡芯片本身
- 主板硬件设计
- 温度
- 驱动版本
- NVM 固件
- 路由器或交换机兼容性
- 2.5GbE 链路协商
我自己在尝试加强散热、更新驱动等方法后,依然存在偶发断网,因此最后又尝试升级了 NVM 固件。
目前先作为一次操作记录。
后续如果能够确认 2.32 固件是否真正改善了断流问题,再继续更新本文。
Intel i225 / i226-V 固件升级指南
https://jetyu.me/post/intel-i225-i226-firmware-update-guide.html