解决双网卡机器同时访问内外网的问题

以前为了方便测试,我在自己的电脑(不是服务器)安装了双网卡,双网卡接入的是两个不同的网络但都可上网。最近为了搭建和测试VPN,我将其中一块网卡接入一个小型内网(即不能访问Internet),此时便遇到问题:只能访问那个小型内网,却无法访问Internet,经查阅众多解决方案后,觉得还是手动添加路有点比较好,同时区分优先权。

以下是系统环境与解决方案:

本机内网IP:192.168.3.172    子网掩码:255.255.255.0  内网网关:192.168.3.240    (不可访问Internet)

本机外网IP:192.168.1.199    子网掩码:255.255.255.0  内网网关:192.168.1.1       (可访问Internet)

方案:

打开“运行”〉输入“CMD”,然后输入以下命令:

route delete 0.0.0.0 mask 0.0.0.0 192.168.3.240             #删除内网网关

route change 0.0.0.0 mask 0.0.0.0 192.168.1.1 metric 2          #改变默认外网网关优先权为2,220.184.16.118为外网分配的ip地址

route add 192.0.0.0 mask 255.0.0.0 192.168.3.240 metric 1     #添加内网路由点,且优先权设置为1

现在终于可以内网外网同时访问了,但问题依然有,重启之后这些更改就失效,需要重新配置,如果你会写DOS批处理,可以在开机的时候自启动就好了,以下是我写的批处理参考:(复制到记事本,网关自己更改,然后把后缀改为.bat即可)

@ echo off

route delete 0.0.0.0 mask 0.0.0.0 192.168.3.240           

route change 0.0.0.0 mask 0.0.0.0 192.168.1.1 metric 2         

route add 192.0.0.0 mask 255.0.0.0 192.168.3.240 metric 1

很简单吧,呵呵


其实也有更简单的方法,只是上边的方法适合测试或不常用双网卡实现内外网的,但公司里确实需要固定的,这就手动调整就显得太麻烦了

下面再介绍一种方法:

首先介绍一下路由原理:双网卡机器一般内网网卡ip都设置了网关地址,而windows默认网关只能有一个,不上外网的情况下默认网关就是内网网关,使用外网上网后默认网关自动改为外网分配的ip,可以使用route print查看,即所有数据流都流向外网网卡ip,导致此时不能访问内网。用route print命令查看此时的路由情况不难发现地址0.0.0.0(可以把0看成通配符)开始的路由点有两个,一个是内网网关,一个是外网ip,而外网ip成了默认网关。因此我的思路是:不用内网网关,将内网网关做成永久路由点且仅过滤内网网段(192开头的ip数据),而不改变外网的默认网关,这样根据优先权,访问内网的数据会从永久路由点走,其它数据从外网的默认网关走(路由表设置的特殊地址除外),从而达到目的。具体方法如下:
        到内网本地连接属性设置中记住网关ip地址并删除内网网关,运行CMD窗口,运行以下命令route -p add 192.0.0.0 mask 255.0.0.0 192.168.3.240(创建永久路由点),结束。这样未连接外网时正常访问内网,连接外网后能同时访问内外网。


现在很多企业为了安全都是使用内外网的,希望以上信息对你有所帮助

 

***************************************************

route add命令的主要作用是添加静态路由,通常的格式是:
route ADD 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3 IF 2
参数含义:^destination ^mask ^gateway metric^ ^interface
destination【网段地址】
mask【子网掩码】
gateway【网关地址】
metric 【路由跳数】
if【端口号】
一般情况下,不涉及本机地址,除非你要做测试。
其中:
可以省略【路由跳数】参数;
当通往该网关地址的路径唯一时,【端口号】参数可以省略。(因为在多端口的路由交换设备上,可能存在通往同一个IP地址的多条备份路径。)
mask 是关键字,不能省略。
route add 134.105.0.0 mask 255.255.0.0 134.105.64.1
意思是:所有需要发往134.105.0.0/16地址段的IP数据包,全部由134.105.64.1路径转发。
这个命令在大型IP网络组建时经常用到,在不同厂商的设备上命令格式可能不同,但原理是一样的。
如果有多条路由,根据不同的路由协议(比如rip, ospf等)的规定,一般优先选择网段地址小的路由。比如,当以下两条路由同时被添加的时候:
route add 134.105.0.0 mask 255.255.0.0 134.105.64.1
route add 134.105.128.0 mask 255.255.128.0 134.105.0.1
目标地址是134.105.128.1的IP包会优先选择第二条路由。
***************************************************

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值