必须禁用网卡电源管理节能功能:在设备管理器中取消勾选“允许计算机关闭此设备以节约电源”,并在高级电源设置中将无线适配器设为“最高性能”、pcie链接状态电源管理设为“关闭”,再通过powershell批量禁用所有活动网卡的节能权限。
要让 windows server 的网卡在锁屏、空闲或远程连接状态下持续在线,必须禁用其“自主休眠权”——即关闭网卡的电源管理节能功能。这个设置默认开启,一旦触发,网卡会物理断电,arp 表清空、tcp 连接重置、rdp/ssh/服务监听全部中断,不是网络延迟,而是硬件离线。
禁用网卡电源管理(图形界面)
这是最直接有效的操作,适用于所有 Windows Server 版本(2012 R2 起):
- 打开“设备管理器”(可右键开始按钮或运行 devmgmt.msc)
- 展开“网络适配器”,找到正在使用的有线网卡(如 Intel I211、VMXNET3、Realtek PCIe GbE 等)
- 右键网卡 → “属性” → 切换到“电源管理”选项卡
- 取消勾选 “允许计算机关闭此设备以节约电源”
- 点击“确定”保存;若提示需重启生效,建议立即重启或至少禁用再启用该网卡
补充:高级电源设置中同步关闭相关策略
仅改网卡属性还不够,系统级电源计划可能覆盖单个设备设置:
- 右键任务栏电池图标 → “电源选项” → 当前计划旁点“更改计划设置” → “更改高级电源设置”
- 展开“无线适配器设置” → “节能模式” → 在“接通电源”列设为 “最高性能”
- 展开“PCI Express” → “链接状态电源管理” → 在“接通电源”列设为 “关闭”(避免 PCIe 总线节电导致网卡失联)
命令行批量确认与加固(推荐用于多网卡或自动化部署)
管理员身份运行 PowerShell,快速检查并强制禁用所有网卡的节能权限:
- 查看当前启用节能的网卡:
Get-NetAdapter | Where-Object {$_.PowerManagementSupported -eq $true -and $_.PowerManagementEnabled -eq $true} | Format-List Name,PowerManagementEnabled - 对所有网卡统一禁用:
Get-NetAdapter | Where-Object {$_.Status -eq "Up"} | ForEach-Object { powercfg /deviceenablewake "$($_.Name)" 2>$null; powercfg /devicedisablewake "$($_.Name)" 2>$null }
(该命令确保唤醒能力可控,同时移除被动节能触发) - 额外加固:禁用网卡的唤醒功能(除非你明确需要 Wake-on-LAN):
Disable-NetAdapterPowerManagement -Name "*" -AllowWakeOnMagicPacket:$false -AllowWakeOnPattern:$false
虚拟化环境特别注意(如 VMware/Hyper-V)
若服务器运行在虚拟机中,还需确认底层网卡类型和驱动:
- VMware 推荐使用 VMXNET3 网卡(非 E1000/E1000E),它原生支持 Windows Server 电源管理接口,且无已知断网 Bug
- 确保已安装最新版 VMware Tools 或 Hyper-V Integration Services,否则网卡电源管理选项可能灰显或无效
- 在 vSphere 中,检查虚拟机设置 → 网络适配器 → 取消勾选“启用此网络适配器的节能模式”(如有)











