我的一台机器双网卡(不是服务器),现工作需要,一块需要上公网(外网),一块上公司内部数据网,要同时都访问,但现在有个问题,上外网(宽带拨号后)就上不了内网,上内网上不了外网(需断开外网),应该怎样配才能解决呢?我的系统及网络配置:操作系统是WIN2000,内网网卡ip:192.168.1.11,内网网关:192.168.1.254,外网网卡ip:自动获取,网关:无。
为了以上问题,我查阅了网上很少有解决方法,唯一较好的方法是手动添加路由点,并且区分优先权,方法如下:
前提是已拨号上网:运行cmd,至CMD窗口下运行以下命令:
route delete 0.0.0.0 mask 0.0.0.0 192.168.1.254 (删除内网网关)
route change 0.0.0.0 mask 0.0.0.0 220.184.16.118 metic 2 (改变默认外网网关优先权为2,220.184.16.118为外网分配的ip地址)
route add 192.0.0.0 mask 255.0.0.0 192.168.1.254 metic 1 (添加内网路由点,且优先权设置为1)
通过以上命令,确实能同时访问内外网了,但每次重起又会丢失,你可以做成BAT批命令文件,将外网ip做成参数输入,但这样还是麻烦:每次重起并拨号上网后需查询外网ip,再进入运行批命令文件。
经过研究路由的原理,我找到了一劳永逸更简单的办法,首先介绍一下路由原理:双网卡机器一般内网网卡ip都设置了网关地址,而windows默认网关只能有一个,不上外网的情况下默认网关就是内网网关,拨号上网后默认网关自动改为外网分配的ip,即所有数据流都流向外网网卡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.1.254(创建永久路由点),结束。这样未拨号上网时正常访问内网,拨号上网后能同时访问内外网。