Loading... > 转载文章,排版可能出现错误,建议到原文阅读:[(26条消息) 奇淫技巧 | route命令设置网络优先级_青Cheng序员石头的博客-CSDN博客](https://blog.csdn.net/DynmicResource/article/details/120134745) > `route`命令在`Windows`环境下用于展示或操作`IP`路由表。所谓路由表可以理解一条一条的路由信息,即路由表中含有网络周边的拓扑信息。路由表创建的主要目标是为了实现路由协议和静态路由选择。 ##### 0.背景 如果一个电脑上有双网卡,有时需要指定访问指定网段的时候用指定网络设备。一般情况下,windows能够自动选择合适的网络设备去访问不同的网段。但这次我遇到了一点不一样的问题。 我的网络环境如下: **有线网卡** `ip 192.168.93.111 netmask 225.255.255.254 gateway 192.168.93.221` **无线网卡** `ip 192.168.91.7 netmask 225.255.255.0 gateway 192.168.91.1` 我想通过有线网卡去访问`192.168.5.22`,整个网络链路都是畅通的,我通过`tracert`命令去跟踪路由,发现打印的第一个网关就是`192.168.91.1`,这个说明是通过无线网卡去访问目标地址的,当然最后无法寻到目标地址。 `tracert \-d 192.168.5.22` 通过查资料发现`route`能设置路由的优先级,从而帮助我们解决问题。 ##### 1.route初体验 ###### 1.1命令说明 该命令执行必须拥有管理员权限,所以要用管理员运行`cmd` \`\`\` # 命令格式 ROUTE \[-f\] \[-p\] \[-4|-6\] command \[destination\]\[[MASK](https://so.csdn.net/so/search?q=MASK&spm=1001.2101.3001.7020) netmask\] \[gateway\] \[METRIC metric\] \[IF interface\] \`\`\` 命令支持 `print`,`add`,`delete`,`change` 可选项解释:  ###### 1.2查看路由表信息 可以通过`route print` 查看路由表信息 `route print` 运行此命令会展示接口信息,以及系统当前的IPv4和IPv6路由表 **接口列表**  根据打印信息我们可以看到有线设备的接口编号是`49`,无线接口编号是`11` **ipv4路由表**  \-_网络目标_,表示目标主机 \-_接口_,表示指定路由的接口地址 \-_跃点数_,表示访问路由到目标网络的成本,即表示优先级,数字越大成本越高,优先级越低。 当然还有`ipv6`的路由表,因为还没有用到,就不打印出来了,可以设置可选参数`-4` 只打印`ipv4`的路由表信息。 `route print \-4` ##### 2.route更改优先级 ###### 2.1通过添加到目标主机的路由 确定目标主机地址,添加路由 `route add 192.168.5.0 mask 255.255.255.254 192.168.93.221 if 49` 一般来说添加此条路由规则以后就能按照指定网络设备去访问目标主机,但是如果存在另一条目标主机相同的路由,就可能不会按照你预想的路径去访问。这样跃点数`METRIC`能起到作用。 ###### 2.2通过设置目标主机的优先级路由 `route add 192.168.5.0 mask 255.255.255.254 192.168.93.221 metric 2 if 49` 把`METRIC`值设置的足够小,就能优先使用此条路由路径。但是也有例外,路由表的路由路径一般会设置目标主机`0.0.0.0`的路由规则,有时候会针对所有的网络设备接口进行设置。这个可能会覆盖上面设置的路由规则。建议修改针对`0.0.0.0`目标主机的路由规则。 \`\`\` # 修改路由信息 route change 0.0.0.0 mask 255.255.255.254 192.168.93.221 metric 2 if 49 \`\`\` 以上的命令都是临时有效的,重启电脑会失效的,要想永久生效,请使用可选参数`-p` ###### 2.3设置metric的方法 建议参考微软官方文档 [An explanation of the Automatic Metric feature for IPv4 routes](https://support.microsoft.com/en-us/help/299540/an-explanation-of-the-automatic-metric-feature-for-ipv4-routes) ###### 2.4其它设置方法 也许命令行对于非计算机专业领域的人群不是很友好,可以参考图形页面设置方法。 <How to Change the Priority of Wired/Wireless Network Cards in Windows> ##### 3\. route扩展 只打印匹配的项 `route print 172*` 删除指定路由 `route delete 172.19.1.28` 另外,如果添加无效的`MASK`会产生错误。 ##### 4.实践操作 如果有外网和内网冲突,参照以下指令解决。以下方案的目标是外网优先,特殊设置内网访问的路由规则。 \`\`\` # 删除全部指向0.0.0.0的路由配置 route delete 0.0.0.0 # 添加永久的通过外网网卡访问所有目标地址路由规则 route add 0.0.0.0 mask 0.0.0.0 192.168.130.1 \-p # 添加永久的通过内网网卡访问指定目标地址的路由规则 route add 192.168.3.0 mask 255.255.255.0 192.168.93.225 \-p 最后修改:2022 年 12 月 30 日 10 : 08 AM © 转载自他站 赞赏 要多恰饭才能长胖 赞赏作者 支付宝微信