route 是什么
route 用于查看和修改 Windows 的 IPv4 路由表:往哪儿发包由路由表决定,同一条目标网段可能同时存在直连、专线、VPN 等多条路径,此时比的是跃点数(metric),小的优先。多网卡主机、专线分流、VPN 只走特定网段这类需求,常用 route 手工加一条静态路由解决。加 -p 参数可持久化,重启后依然存在。
基本信息
| 适用平台 | Windows 7/10/11 与 Windows Server 的 CMD |
|---|---|
| 查看 | route print、route print -4(只看 IPv4) |
| 添加 | route add 目标网段 mask 掩码 网关 [metric 跃点] [if 接口号] [-p] |
| 修改/删除 | route change 目标网段 mask 掩码 新网关;route delete 目标网段 [mask 掩码] |
| 持久化 | -p 写入注册表,重启保留;不加则重启后消失 |
| 权限要求 | 查看无需提权,增删改需要管理员 |
典型使用场景
- 专线分流:指定办公网段走专线网关,其余流量继续走默认出口
- VPN 拆分流:只让内网网段走 VPN,避免所有公网流量绕行隧道
- 多网卡环境:为内网卡指定特定网段,防止走错出口造成时通时不通
- 临时验证:排障时临时加一条路由测试可达性,测完即删
- 持久化配置:为固定网段的服务器固化路由,重启不失效
常用示例
常用示例
route print -4 # 只看 IPv4 路由表
route print -4 | findstr "10.20" # 查特定网段的现有条目
route add 10.20.0.0 mask 255.255.0.0 192.168.1.254 metric 5 # 临时加路由,跃点 5
route -p add 10.20.0.0 mask 255.255.0.0 192.168.1.254 # 持久化,重启保留
route add 10.30.0.0 mask 255.255.0.0 0.0.0.0 if 12 -f # 直连网段(-f 表示无网关)
route change 10.20.0.0 mask 255.255.0.0 metric 2 # 调整跃点,优先级更高
route delete 10.20.0.0 mask 255.255.0.0 # 删除指定条目
REM PowerShell 等价命令
REM Get-NetRoute / New-NetRoute -DestinationPrefix 10.20.0.0/16 -NextHop 192.168.1.254路由表逐列读法
| 列 | 含义 | 注意 |
|---|---|---|
| 网络目标 | 目标网段地址 | 0.0.0.0 代表默认路由,改动直接影响上网 |
| 网络掩码 | 网段掩码,决定网段大小 | 255.255.255.255 表示单主机路由 |
| 网关 | 下一跳地址 | 显示「在链路上」表示直连,无需下一跳 |
| 接口 | 出站网卡地址 | 多网卡主机务必核对,否则流量走错卡 |
| 跃点数 | 优先级,越小越优先 | 同目标多条路由时比数值,而非看先后顺序 |
多条路由命中同一目标时,Windows 选跃点数最小的;跃点数相同则按最长前缀匹配等规则决定,手工排障时先 route print 对齐现状,再决定加还是改。
route change 只能改网关与跃点数,改不了目标网段与掩码;要换网段必须先 delete 再 add。删除时不带 mask 会删掉所有匹配该目标地址的条目。
排障与回滚
排障与回滚
route print -4 > D:\route_backup.txt # 改动前留档
route -p add 10.20.0.0 mask 255.255.0.0 192.168.1.254 # 持久化前确认网关可达
tracert -d 10.20.1.10 # 验证是否真的走了新路径
route delete 10.20.0.0 # 回滚:删掉刚加的条目持久路由写入注册表(HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\PersistentRoutes 及 Interfaces 分支)。机器迁移、网卡更换、IP 规划调整后旧条目仍然生效,会造成难查的「改好了又复发」。