背景介绍#
在windows系统,笔记本会遇到同时具备有线和无线都共存的场景。
一般情况下,有线的速率和稳定性是优于无线的。
特别是生产环境下,有线是第一选择。有线无效的情况下,自动跳转无线。
网上一般资料都有通过设置跃点数来实现 有线优先的功能,但是,也会遇到即使设置了跃点,也无效的情况。
本文就是对这种情况的补充设置。
Windows 下 手动改 metric 但系统仍然优先用 Wi-Fi,通常是因为:
- 默认网关存在多个优先项(路由表里有两条 default route)。
- Windows 10/11 会忽略手动 metric,如果网卡是 DHCP 自动分配,系统可能自动覆盖设置。
- 无线网卡连接时强行插入了更优先的默认路由。
我们可以用下面几步彻底解决 👇
一、确认路由表
先看当前路由优先级:
route print
在输出里关注 0.0.0.0
的默认路由,比如:
IPv4 路由表
===========================================================================
活动路由:
网络目标 网络掩码 网关 接口 跃点数
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.100 25 <-- 有线
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.200 50 <-- 无线
这里 跃点数 (metric) 决定优先级,越小越优先。
如果你发现无线的 metric 比有线还小,就算你在网卡属性里改了,它可能还是被 DHCP 覆盖。
二、强制修改路由 metric
你可以直接用 route
命令来设置(比网卡属性更强硬):
1. 先删除无线的默认路由
route delete 0.0.0.0 if <无线网卡接口号>
2. 再加上 metric 大的默认路由
route add 0.0.0.0 mask 0.0.0.0 <网关地址> metric 50 if <无线网卡接口号> -p
同时确保有线的默认路由 metric 小,例如:
route add 0.0.0.0 mask 0.0.0.0 <网关地址> metric 10 if <有线网卡接口号> -p
其中 if
后面的号可以在 route print
里看到对应网卡。
加 -p
表示持久生效,重启不会丢失。
三、彻底禁用“自动 metric”
有时 DHCP 还是会覆盖,解决方法是:
-
打开 注册表编辑器
路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{网卡GUID}
-
找到你的无线网卡项,新增或修改一个
DWORD (32位)
值:InterfaceMetric = 50
-
对有线网卡也设定,比如
InterfaceMetric = 10
。 -
重启网络(或重启电脑)。
这样 DHCP 就不会再随意改 metric 了。
四、最简单粗暴的办法(备选)
如果你只想要“插网线就走有线,拔掉才走无线”:
- 直接在 Wi-Fi 适配器 → 属性 → IPv4 → 高级 → 网关 把默认网关删掉(保留 IP 和子网掩码)。
→ 这样 Wi-Fi 只在有线断开时才会接管上网。