windows不支持多个默认网关同时生效,仅依据metric值最小的0.0.0.0/0路由转发;metric越小优先级越高,相同则行为不确定;可通过图形界面设接口跃点数、命令行route change或powershell set-netipinterface调整。
windows 系统本身不支持“多个默认网关同时生效”——它只会选一条 0.0.0.0/0 路由作为出口。所谓“配置多个默认网关的优先级”,实质是手动干预路由表,为不同网卡的默认路由设置不同跃点数(metric),让系统在多条默认路由共存时,自动选用 metric 最小的那条。
关键就一点:Metric 越小,优先级越高;值相同则行为不确定,可能轮询或按绑定顺序随机选。
下面分三类常用场景,讲清楚怎么配、为什么这么配、哪里容易出错:
图形界面改跃点数(适合大多数用户)
这是最稳妥、持久、无需记命令的方法,直接改网卡的 IPv4 协议跃点基准值:
通过 SSH 隧道从 Android 设备在互联网上对 Windows PC 实现完整远程控制的设置与使用指南,适用于远程桌面访问、安全 RDP 等。
- 按 Win + R 输入
ncpa.cpl,打开网络连接 - 右键你要设为「主上网」的网卡(比如有线以太网),选「属性」→ 双击「Internet 协议版本 4 (TCP/IPv4)」→ 点「高级」
- 取消勾选「自动跃点」,在「接口跃点数」里填一个较小整数,如 5(外网用)
- 对另一网卡(如 Wi-Fi 或内网口),同样操作,但填较大值,如 25(差值建议 ≥10,避免临界模糊)
- 点确定保存,无需重启,立即生效,且永久保留
命令行微调默认路由 Metric(需管理员权限)
图形界面设的是“基础跃点”,而最终路由表里的 Metric = 接口跃点数 + 路由跃点数。如果发现 route print -4 里某条默认路由的 Metric 不理想,可直接改:
- 以管理员身份运行 CMD 或 PowerShell
- 先查当前默认路由:
route print -4 | findstr "0.0.0.0" - 假设你要把「Wi-Fi 网关 192.168.0.1」的 Metric 改为 10,对应接口索引是 15:
route change 0.0.0.0 mask 0.0.0.0 192.168.0.1 metric 10 if 15 - 加
-p参数可永久写入(如route change -p ...),否则重启失效
PowerShell 精准控制(适合多网卡/批量管理)
用 IfIndex 定位更可靠,尤其当网卡名含空格或中文时:
- 管理员 PowerShell 中运行:
Get-NetIPInterface -AddressFamily IPv4 | ft InterfaceAlias,IfIndex,InterfaceMetric - 找到目标网卡的 IfIndex(比如以太网是 12,WLAN 是 5)
- 设高优网卡跃点为 5:
Set-NetIPInterface -InterfaceIndex 12 -AddressFamily IPv4 -InterfaceMetric 5 - 设低优网卡跃点为 30:
Set-NetIPInterface -InterfaceIndex 5 -AddressFamily IPv4 -InterfaceMetric 30 - 该设置直接影响后续生成的默认路由,比 route 命令更底层、更稳定
注意:只动目标为 0.0.0.0 mask 0.0.0.0 的那几条默认路由;内网明细路由(如 192.168.1.0/24)不用改,也不该动。改错随时能删掉再加,或直接重启还原。










