简介这是一份面向Windows Server 2012 R2 x64环境的Intel X722网卡驱动更新包版本26.6适用于数据中心和企业网络中部署X722控制器的运维与网络工程师可用于解决驱动兼容性问题、增强10GbE/25GbE高速链路稳定性并优化高负载传输性能。压缩包内共110个文件以exe驱动安装程序为核心配合大量htm、gif、png、css等格式的安装指南与界面文档以及txt说明、pdf许可协议和tic校验文件整体约29.23MB结构兼顾驱动本体、部署指引和授权信息便于离线安装与更新存档。目前已有2181人学习下载通过其中readme文档可了解更新内容与已知问题installation页面提供图形化安装步骤license文件明确使用条款适合具有一定服务器维护经验的技术人员参考使用。该驱动作为Intel X722控制器的重要软件组件对保障10GbE/25GbE网卡稳定运行、恢复异常连接及提升吞吐表现有直接作用。1. INTEL X722_driver_26.6_x64.zip 这个驱动包解决的是老系统上识别不到新网卡的尴尬INTEL X722_driver_26.6_x64.zip 是我在给某公司一批准备升级万兆的 Server 2012 R2 物理机装网卡的时候第一次认真研究的驱动包。X722 不是消费级独立网卡是集成在服务器主板上的 10GbE 以太网控制芯片支持 SR-IOV 和 iWARP。这批机器原来跑千兆没觉得有什么换上 X722 网卡后系统只能识别到“以太网控制器”打感叹号装驱动的过程远比想象中曲折。后来才发现问题出在驱动包版本和系统补丁的配合上以及旧驱动的清理没做干净。这篇就从拆包、清理、静默安装到验证给出一条完整可复现的路径适合还在让 2012 R2 老机器跑生产的人参照。2. 先搞清楚包里的东西再动手X722 驱动包结构和系统要求2.1 X722 是块什么样的网卡10GbE、iWARP 和 SR-IOV 都靠驱动暴露X722 在服务器平台里的定位是板载网络控制器经常和主板管理控制器打包出现在同一块 SoC 附近外部表现为一个或多个万兆以太网口。它和独立网卡的最大区别是芯片焊在主板上PCIe 链路和 MAC 地址都由厂商预设好用户换不了卡只能换驱动。所以当系统识别不到它的时候问题几乎总是出在软件栈而不是硬件。端口形态由主板上的 PHY 决定有的是 10G BASE-T 的 RJ45有的是 SFP 光口这对后面的链路协商会有影响。X722 真正值钱的功能有三个万兆吞吐、SR-IOV 直通、iWARP RDMA。SR-IOV 允许把物理网口拆成多个虚拟功能直通给 Hyper-V 虚拟机iWARP 是走 TCP/IP 网络的 RDMA不需要特殊交换机对老机房很友好。但这些高级特性并不会因为芯片支持就自动出现在系统里。Server 2012 R2 的内核版本是 NT 6.3发布时间早于 X722 大规模部署的服务器平台系统内置驱动只认识最基础的一组特性。你在设备管理器里看到“以太网控制器”而不是“Ethernet Controller X722”就是系统用通用驱动把设备拉起来了功能不完整是必然的。26.6 这个驱动版本号对应的是一套比较成熟的 Intel LAN 驱动分支。在 Server 2012 R2 上选驱动版本有个规律太新的驱动往往优先适配新版系统对 2012 R2 的老网络栈只做回归测试部分高级属性的默认值会变化太旧的驱动则缺少对 X722 后续 NVM 固件的支持。26.6 这个中间分支在实际使用里碰到的坑最少尤其是万兆链路协商和 SR-IOV 的兼容性明显比早期版本省心。当然省心不代表装完就能用前置清理一步都不能少。2.2 解压后看包内结构安装器、INF 目录和可选工具从硬件厂商下载中心搜“X722 26.6”拿到的就是标题这个 zip 文件。解压后常见结构一般是这样不同小版本的目录命名会有一点差异但大结构不会变文件/目录作用PROWinx64.exe主安装程序同时携带驱动和安装向导ReleaseNotes / Readme版本说明、已知问题、系统要求Drivers 目录INF、SYS、CAT 文件手动指定驱动时用APPS 目录PROSet 工具和高级属性插件可选安装先看 ReleaseNotes 是值得养成的习惯。里面通常会写清楚这个版本支持哪些操作系统、有没有已知问题、是否需要提前打某个系统补丁。我见过不少同事直接双击 PROWinx64.exe 开装装完出现高级属性缺项回头查文档才发现是漏了系统更新。x64 后缀的含义也值得说一句。Server 2012 R2 只有 64 位版本所以这个包就是给你这台机器用的不存在选错架构的问题。但如果你在同一台机器上做过从 2008 R2 到 2012 R2 的就地升级系统里很可能残留着旧版本的 INF 和驱动服务这就是后面要清理的重点。2.3 安装前的系统确认补丁、固件和当前驱动状态动手装驱动之前我先会在目标机器上确认三件事系统版本、已装驱动、主板 BIOS 里的网络固件版本。用下面这组命令可以一次看清Get-ComputerInfo | Select-Object WindowsProductName, WindowsVersion, OsBuildNumber Get-NetAdapter -IncludeHidden | Select-Object Name, InterfaceDescription, DriverVersion, DriverDate第一条命令输出系统完整版本WindowsVersion 显示 6.3.9600 就是 Server 2012 R2。第二条命令列出系统当前能看到的网卡如果 X722 已经被系统用默认驱动带起来这里会显示一个以“Microsoft”开头的驱动日期如果设备还是黄叹号这里可能压根看不到 X722要去设备管理器确认。InterfaceDescription 里出现“Ethernet Controller X722”字样说明 PnP 至少识别出了设备只是驱动不对。系统补丁这一项我的底线是装到 2014 年以后的安全汇总更新。Server 2012 R2 刚发布时的网络栈对新一代网卡的支持不完整尤其是 PCIe 电源管理和 NDIS 6.4 的配合缺少补丁时会出现装完驱动重启后设备直接掉线的情况。如果服务器不方便打补丁至少也要把驱动包 ReleaseNotes 里点名的更新装上否则后面排障会很被动。主板 BIOS 里的 NVM 固件版本也要看一眼。X722 的网络固件是用 BIOS 刷进去的如果服务器出厂时间早、BIOS 一直没更新X722 的 NVM 可能停留在很老的版本表现就是驱动装好了、链路也能上来但一跑大流量就丢链路。这一步不强制每次升级 BIOS但如果后续出现速率和链路问题要能想起来回去查 NVM。3. 正式安装前先做三件小事卸载旧驱动、清理残留、关闭自动更新3.1 从设备管理器先把旧设备卸载干净很多人拿到新驱动直接双击安装结果新版本覆盖旧版本时部分 INF 的注册表项没有正确切换设备管理器里出现两个同名网卡或者一个黄叹号一个正常。我的习惯是先把旧设备从系统里摘掉再做干净安装。打开设备管理器的方式是 WinR输入 devmgmt.msc 回车。找到网络适配器里带 X722 或“以太网控制器”字样的设备右键选择“卸载设备”。卸载时系统会弹窗务必勾选“删除此设备的驱动程序软件”这样驱动文件和注册表信息会一起清掉。如果不勾选等会儿旧 INF 还在驱动库里新驱动装完还是可能被 PnP 匹配错。如果设备当前是黄叹号状态同样要先卸载。这时候卸载的是失败设备记录把设备从枚举列表里摘掉同时删除匹配失败的 INF避免微软的 PnP 引擎反复用同一个错误驱动去匹配硬件。卸载完成后有条件就重启一次让 PCIe 设备重新枚举。这一步看着基础但能减少后面一半的怪问题。3.2 用 pnputil 查驱动库把残留的旧版 INF 删掉设备管理器的卸载只处理当前设备关联的驱动驱动库里可能还躺着其他版本的 INF。Server 2012 R2 上安装过多个版本驱动的机器驱动库里同一个硬件经常有好几个厂商 INFPnP 按排名和日期挑不一定挑最新的。用 pnputil 可以直接操作驱动库命令如下pnputil /enum-drivers | findstr /i x722 e1d pnputil /delete-driver oemXX.inf /uninstall /force第一条命令在驱动库里搜索描述里带 X722 或 e1d 的驱动包返回结果里会看到发布名称通常是 oemXX.inf 这样的格式XX 是数字。找到旧版本后把第二条命令里的 oemXX.inf 换成实际名称执行。参数 /uninstall 表示卸载该驱动包关联的设备/force 强制删除即使驱动当前被占用也会排队处理。要注意的是Intel 网卡驱动在驱动库里经常有两个 INF一个是基础网卡驱动一个是高级属性扩展。如果只删了一个另一个还会在设备管理器里显示旧版本。所以枚举时不要只看有没有 X722还要看提供商是不是 Intel、版本号是不是早于 26.6。删完以后重启驱动库干净了再进入安装环节。3.3 关闭 Windows 驱动自动更新防止装完被回退Server 2012 R2 默认的 Windows Update 会顺带安装设备驱动这在你手工装好 26.6 之后非常危险。系统可能在你重启后自动从更新源拉一个更“新”的驱动把好不容易装好的版本换掉然后网卡高级属性少一半。这不是夸张我实际见过重启后驱动从 26.6 回退到系统自带的旧版本。简单的做法是按 WinR 输入 gpedit.msc在计算机配置、管理模板、Windows 组件、Windows 更新里把“配置自动更新”设为“已禁用”。但这个做法有点一刀切很多机房还是希望系统补丁正常更新。更精确的做法是用下面的注册表策略只排除驱动不影响补丁reg add HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate /v ExcludeWUDriversInQualityUpdate /t REG_DWORD /d 1 /f reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\DriverSearching /v SearchOrderConfig /t REG_DWORD /d 0 /f第一条让质量更新不再包含驱动。第二条禁止系统在设备安装时自动联机搜索驱动。两边一起设Windows Update 还会装补丁但不会再碰网卡驱动。如果机房里有 WSUS 或类似的集中更新平台那还要在平台侧的驱动分类里排除 Intel 网卡否则客户端注册表策略会被平台策略覆盖。很多回退问题其实不是系统默认行为而是集中管理平台的驱动投放策略没排干净。4. 两种安装方式图形向导适合单台静默命令适合批量4.1 单台机器用 setup.exe 图形安装注意选择覆盖安装图形安装适合第一台试点或者机房只剩一两台机器需要处理。先把 zip 包解压到本地磁盘我习惯放在 C:\drivers\x722_26.6 这样的纯英文路径下避免安装器在中文路径上出现解压异常。然后进入目录右键管理员身份运行 PROWinx64.exe。安装向导的第一步是接受许可协议接着会让你选择功能组件。这里我会把 PROSet 组件也勾上而不是只装基础驱动。原因很简单X722 的很多高级属性比如 RSS 队列数、Flow Control、SR-IOV 开关都要在驱动加载完整后才出现在网卡高级属性页里。只装基础驱动设备管理器里能看到网卡但高级属性页是空壳。如果系统里已经存在旧版本向导会提示修复或覆盖选覆盖。装完后向导大概率要求重启。不要跳过重启直接测试万兆部分 NDIS 中间驱动在重启前不会生效链路速率看起来正常但实际收包会有问题。重启之后再进入第 4.3 节的验证步骤才算是装完。4.2 批量机房用命令行静默安装并处理返回码一次装几十台机器再一台台点向导就太累了。解压后的目录里PROWinx64.exe 支持静默安装参数我常用的命令如下C:\drivers\x722_26.6\PROWinx64.exe -s -overwrite参数 -s 表示静默模式全程不弹界面-overwrite 表示覆盖已存在的旧版本不加这个参数系统检测到旧版时会中止安装。第一次运行时自解压和安装会连续进行命令行会卡住一段时间看起来像没反应属正常现象不要中途开第二个进程。为了让机房同事看清楚装得成不成功我会在批处理里把返回码处理一遍echo off set DRVC:\drivers\x722_26.6\PROWinx64.exe %DRV% -s -overwrite set RC%errorlevel% if %RC%0 ( echo [OK] install complete, no restart needed ) else if %RC%3010 ( echo [OK] install complete, restart required shutdown /r /t 300 ) else ( echo [FAIL] return code %RC% )返回码 0 表示安装完成且不需要重启3010 是 Windows Installer 风格的约定表示安装完成但需要重启系统才能完成最终部署其他返回码就是失败了。把脚本输出到远程管理平台事后看日志比逐台点设备管理器靠谱得多。如果要更底层地操作也可以直接用 pnputil 只装 INFpnputil /add-driver C:\drivers\x722_26.6\Drivers\e1d64.inf /install这种方式只加载基础驱动不装 PROSet 高级组件适合最小化安装场景。注意 INF 文件名以实际解压目录为准不同版本可能不叫 e1d64.inf进 Drivers 目录看一眼再填。4.3 安装完成后的即时验证驱动版本、链接状态和速率装完驱动重启后第一件事不是去配置交换机而是先在系统里确认 X722 真的被正确驱动起来了。用这条命令看全局状态Get-NetAdapter | Sort-Object Name | Format-Table Name, Status, MacAddress, LinkSpeed, DriverVersion, DriverDate正常情况下状态是 Up链路速率根据对端设备显示 10 Gbps 或 1 Gbps驱动版本显示 26.6 对应的具体构建号。如果这里显示的还是 0 bps 或者状态是 Disabled说明驱动装上了但端口没有拉起检查网线和对端设备如果驱动版本不对回到第 3 章的清理流程重新做一遍干净安装。还要顺手看一个东西网卡高级属性页里有没有 RSS、SR-IOV、iWARP 这些选项。有说明 PROSet 装全了没有说明你刚才只装了基础驱动需要回头补装高级组件。这一步判断比看版本号更直观。5. X722 在 Server 2012 R2 上的五个避坑记录这些坑是我和机房同事在一轮一轮排障中记下来的每一条都符合“现象、原因、解决”的套路照着排查能省下大把时间。5.1 设备管理器黄叹号以太网控制器代码 10现象驱动装完重启设备管理器里 X722 显示为“以太网控制器”状态是“该设备无法启动代码 10”网卡完全不能用。原因最常见的是旧驱动残留和系统补丁缺失。旧 INF 没有被彻底清除时PnP 引擎可能给设备匹配了错误的驱动文件导致 NDIS 服务起不来另外 2012 R2 缺少后续网络栈补丁时PCIe 网卡在电源管理切换中会初始化失败。解决先按第 3 章把旧驱动卸载干净然后用 pnputil 清掉驱动库里所有旧版 INF重启后再装 26.6。如果重启后还是代码 10去设备管理器里手动指定驱动右键设备、更新驱动程序、浏览我的电脑、指向解压目录里的 Drivers 文件夹选对应 INF 安装。最后再不行进 BIOS 把 SR-IOV 和 VT-d 临时关掉装完驱动重启后再打开部分主板对初始化顺序比较挑剔。5.2 链路速率只有 1 Gbps10G 起不来现象驱动状态正常网卡已连接但 Get-NetAdapter 里 LinkSpeed 显示 1 Gbps对端明明是万兆口。原因链路协商失败或网卡高级属性里被限制了速率。X722 的万兆口在自协商模式下如果对端交换机端口被配置成强制 1G 模式协商结果就是 1G还有一种是网卡高级属性里的“Link Speed”或“Speed Duplex”被设定为 1G。10G BASE-T 端口用超五类线也会出现协商到 1G 的情况。解决先在网卡高级属性里把速率选项改成“Auto Negotiation”关闭任何强制速率。然后检查交换机端口配置把端口改成自协商。最后换线短距离万兆尽量用 Cat6A 或以上线缆旧机房里的超五类跳线是万兆协商失败的高发原因。这三步按顺序走完链路速率基本就正常了。5.3 Hyper-V 里 SR-IOV 怎么都开不了现象虚拟交换机上已经勾选了“启用单根 I/O 虚拟化”虚拟机网络适配器也开了 SR-IOV但虚拟机关机后在适配器信息里仍然看不到 SR-IOV 生效。原因SR-IOV 生效需要 BIOS、网卡驱动、Hyper-V 三层同时支持。BIOS 没开 VT-d 或 SR-IOV 开关网卡驱动的高级属性里没有启用 SR-IOV或者系统里存在网卡 Teaming 配置都会导致功能被静默禁用。解决进 BIOS 打开 VT-d 和 SR-IOV在网卡高级属性里确认“SR-IOV”和“Virtual Machine Queues”都是启用状态然后在 Hyper-V 虚拟交换机上勾选 SR-IOV 选项再对虚拟机的网络适配器勾选“启用 SR-IOV”。如果还不行检查服务器上有没有配置网卡分组带分组功能的物理网卡不会向 Hyper-V 暴露 SR-IOV 能力。5.4 iWARP/RDMA 不工作测试性能没有提升现象计划里说好走 RDMA结果实际跑大包传输时CPU 占用和普通 TCP 一样高网卡高级属性里的 iWARP 开关也开了但就是没效果。原因Server 2012 R2 的 iWARP 需要系统安装“远程直接内存访问(RDMA)”功能不装这个功能驱动层就算支持系统协议栈也不会暴露 RDMA 接口。另外 iWARP 属于 TCP 上的 RDMA若中间网络设备启用了流量整形或 TCP 卸载握手也会失败。解决在服务器管理器里添加功能勾选“远程直接内存访问 (RDMA)”或者直接执行Install-WindowsFeature RDMA安装完重启再用 Get-NetAdapterRDMA 查看 X722 网卡是否出现 RDMA 能力。如果输出为空列表说明功能组件和驱动之间没有握手成功优先检查网卡高级属性里的“Enable iWARP”是否被新版系统补丁改回禁用状态重新启用并重启。5.5 装完 26.6 重启后驱动版本自动回退现象驱动装好、高级属性齐全、链路也正常但只要重启一次或过一晚设备管理器里驱动版本就变成旧版本高级属性少了一大半。原因Windows 更新在后台安装了它认为“更合适”的驱动版本。即便你手动安装过新驱动系统驱动库里的其他版本如果匹配优先级更高PnP 引擎会在下次重启时重新选择驱动造成回退。解决把第 3 章的注册表策略设置好关闭驱动自动搜索。同时如果机房有更新管理平台要在更新平台里排除 Intel 网卡驱动分类。最后重新覆盖安装一遍 26.6并检查驱动版本号确认不再变化。这里没有捷径驱动库和更新策略两头都要堵住只堵一头大概率还会回退。6. 用 PowerShell 做一次完整验证并配置 RSS 队列6.1 验证驱动状态和统计数据驱动装完别急着收工我会把下面这组命令当成标准动作跑一遍Get-NetAdapter -IncludeHidden | Format-Table Name, Status, LinkSpeed, DriverVersion Get-NetAdapterStatistics -Name Ethernet 0 | Format-List ReceivedBytes, SentBytes Get-NetAdapterAdvancedProperty -Name Ethernet 0 | Where-Object {$_.DisplayName -match RSS|Flow Control|Jumbo|SR-IOV}第一条确认网卡状态和链路第二条看统计数据确认网卡实际上在收发流量而不是只亮了链路灯第三条把高级属性里和性能相关的项目拉出来确认 RSS、流控、巨型帧、SR-IOV 这些选项都在并且值是你想要的状态。如果第三条返回空说明高级组件没装全回第 4 章补装。6.2 调整 RSS 队列数让多线程吞吐跑起来X722 的默认 RSS 队列数对高并发业务来说偏保守。跑虚拟化或者高流量转发时我会把接收队列调到 8让多核 CPU 分担收包压力。命令如下Set-NetAdapterAdvancedProperty -Name Ethernet 0 -RegistryKeyword NumberOfRSSQueues -RegistryValue 8 Restart-NetAdapter -Name Ethernet 0注意网卡名称要以第一段命令查出来的实际名为准中文系统里可能是“以太网 0”而不是“Ethernet 0”。这里有一个容易翻车的点不同版本的 Intel 驱动对 RegistryValue 的类型要求不一样有的要求整数有的要求字符串报错时把后面的 8 加上英文双引号再试一次。Restart-NetAdapter 会断网几秒远程操作时确认带外管理可用再执行。调整完后再次 Get-NetAdapterAdvancedProperty 检查配置是否生效同时跑一轮大流量确认 CPU 分布是否均匀。这套流程走完X722 在 Server 2012 R2 上的部署才算真正落地。我自己后来的习惯是装完驱动不马上交付先跑一遍这套验证把 RSS 队列和流控都调好再交到运维手里省得后面生产一压测就回来找我查网卡。希望帮到你。本文还有配套的精品资源点击获取
阅读完成 · 觉得有帮助?