win设置同时链接内外网
需求
我需要访问内网的几个固定IP。例如 10.76.55.43
,172.89.45.2
。等等,但是内网链接好后,无法访问互联网,不利于开发的效率提升。故此,现需求如下:
通过网线走内网访问固定IP的服务。
通过Wi-Fi走外网访问互联网。
思路
其实思路很明确,只要你访问内网服务,就直接路由到内网即可,其余的一律走外网。所以,我们只要简单的改一下路由表
配置就行。
1.断开网线链接
当然,你可以物理意义上的把网线给拔掉。或者,直接禁用网络。
2.链接WiFi找网关
首先,点一下Wi-Fi链接,我们需要找到你WiFi的网关。链接好后,输入
1 | ipconfig |
找到你WiFi那列,找到网关(gateway),记录下来这个地址,例如192.168.8.1。
⚠️下面也是基于这个网关而写的,你需要换成你自己的
输入
1 | route print -4 |
查看接口列表,找到你的有线网卡和无线网卡的接口数字,例如我的如下
1 | =========================================================================== |
从上面可以看出,有线网卡的接口id为 16,无线网卡为 9.
⚠️下面也是基于这个ID而写的,你需要换成你自己的
3.重置路由表
终端输入
1 | route delete 0.0.0.0 |
删除路由转发。
4.添加外网路由
在终端输入如下命令:
1 | route -p add 0.0.0.0 mask 0.0.0.0 192.168.8.1 metric 1 IF 9 |
这里解释一下各个含义:
route -p
:永久有效,这样就不会随着重启系统而重置路由metric 1
:设置跳跃数为1的高优先级。metric数字越小,优先级越高。IF 9
:配置接口ID为Wi-Fi
add 0.0.0.0 mask 0.0.0.0 192.168.8.1
:设置192.168.8.1为我的外网网关,子网掩码为*.*.*.*
,代理的IP地址也为*.*.*.*
,这这里的*
为通配符,表示所有,在命令中直接用0
代替。
5.添加内网路由
在终端输入一下命令:
1 | route -p add 10.0.0.0 mask 255.0.0.0 10.89.100.1 metric 2 IF 16 |
这里再次解释一下各个含义:
route -p
:同上。metric 2
:设置跳跃数为2。IF 9
:配置接口ID为网线
。add 10.0.0.0 mask 255.0.0.0 10.89.100.1
:设置10.89.100.1 为我的内网网关,子网掩码为255.*.*.*
,代理的IP地址也为10.*.*.*
,开头的所有IP。
6.设置链接网线的静态IP(可选的步骤)
如果你的内网是专门给你分配了静态IP,你需要设置电脑在内网的固定IP。例如,内网给我分配了10.89.100.128
为我的专属IP,并且设定了专门的DNS服务器(10.101.1.3)解析。
直接在终端输入:
1 | netsh interface ip set address "以太网" source=static addr=10.89.100.128 mask=255.255.255.0 gateway=10.89.100.1 |