双网卡默认网关冲突本质是windows仅允许一条活跃的0.0.0.0默认路由,后配置网关会覆盖前者;解决关键是保留外网默认路由,再为内网网段添加带网卡id的永久静态路由,并禁用内网卡“远程使用默认网关”选项。
windows 多网卡环境下,默认网关冲突的本质是系统只允许一条活跃的 0.0.0.0 默认路由,后配置的网卡网关会覆盖前一个,导致内网或外网断连。解决关键不是删掉某个网关,而是保留一条默认路由(通常给外网),再为内网网段单独加精准静态路由。
确认两张网卡的基础信息
以管理员身份打开 CMD,依次执行:
-
ipconfig /all→ 记下每张网卡的 IPv4 地址、子网掩码、默认网关(比如内网卡:192.168.10.100/24,网关192.168.10.1;外网卡:192.168.1.100/24,网关192.168.1.1) -
netsh int ipv4 show interfaces→ 找到内网连接对应的Idx编号(例如12),后续添加路由必须用这个 ID
清理并锁定默认路由方向
- 运行
route print,查看“IPv4 路由表”中是否有多条0.0.0.0行。若有,说明存在冲突。 - 删除错误的默认路由(比如误指向内网网关的那条):
route delete 0.0.0.0 mask 0.0.0.0 192.168.10.1 - 只保留一条默认路由,指向外网网关(如
192.168.1.1)。若没有,可手动添加:route -p add 0.0.0.0 mask 0.0.0.0 192.168.1.1 - 进入内网卡属性 → IPv4 → 高级 → 取消勾选 “在远程网络上使用默认网关”,防止系统重启后自动生成冲突路由。
为内网网段添加永久静态路由
用 route -p add 命令告诉系统:“去这个内网段,必须走这张网卡”:
- 格式:
route -p add mask if <idx></idx> - 示例(内网段
192.168.10.0/24,网关192.168.10.1,Idx 为12):route -p add 192.168.10.0 mask 255.255.255.0 192.168.10.1 if 12 - 多个内网段(如
10.0.0.0/8、172.16.0.0/12)需逐条添加,每条都带-p参数确保重启有效。
验证配置是否生效
- 再次运行
route print,确认:- 只有一条
0.0.0.0默认路由(指向外网网关) - 新增的内网路由条目存在,且“接口”列显示正确 IDX
- 只有一条
- 测试连通性:
ping 192.168.10.1(内网网关)ping 8.8.8.8(外网) - 查看路径:
tracert 192.168.10.50,确认跳转从内网卡发出 - DNS 注意:只在外网卡填公网 DNS(如
114.114.114.114),内网卡 DNS 留空或仅填内网 DNS,避免解析异常
不复杂但容易忽略











