Vpn拨号无法访问外网服务解决方案遇到一个朋友问我FTP服务器的问题,说他的服务器有时内网不能访问服务,有时外网不能访问服务。简述下环境:他的服务器有2个网卡,分别是给企业内网FTP(192.168.0.0段)和外网FTP(125.71.*.*段)服务的。服务器所在的地址A网卡(内网)是172.16.0.0,而B网卡(外网)是125.71.*.*,这2个地址段都是静态IP地址,要交换数据,肯定得设网关。如果直接给windows设置2个默认网关(一般朋友可能认为默认网关就是网关),就会出现这样的提示:如果你确定的话,就会出现了不能正常工作的现象。现在解释这是为什么。首先看由此设定的tcp/ip参数而产生的路由表:在Windows中,默认网关是指发往0.0.0.0缺省网段的地址,这是一个特殊的地址,其目的地为所有不知道路由的网段,所以在设置了2个默认网关的时候,其中的一个网关将被启用,而另外一个将作为冗余。从路由表中,我们可以看到他们的metric值都为10,这就是说他们的计量标准,都是一样的。此时Windows就不知道怎么使用这个默认网关,于是就出现一下选择125段的,一会又选择172段的,造成了他的问题。现在问题明了了,就好解决了。解决的方法就是:设置网络的时候两个网卡都不设置网关,然后在静态路由表里单独永久添加两个网关就可以了。关于windows的路由表命令,这里阐述一下:route/?(系统自带的是英文解释,我自己翻译的)列举当前系统的路由表ROUTE[-f][-p][命令[目的地][MASK空格+子网掩码][网关][计量标准][接口]-f清除现在所有去往网关的路由信息-p使用了add命令后,用-p命令,使得系统自动加载和使用,默认是临时的,重启将丢失,其他命令可以不使用。win95下不支持。如果你忘记了-p,可以使用bat文件放在启动组。命令举例:PRINT列举当前路由信息ADD添加一条路由信息DELETE删除一条路由信息CHANGE修改当前路由信息目的地目标网络,既即将发往的地址段MASK子网掩码标识子网掩码目标网络的子网掩码,不指定将使用255.255.255.255网关发往目标网络的网关,既下一跳地址接口指定的下一跳接口计量标准用于矢量路由协议的路径计算和选择,一般不写。相关详细见:看完了介绍一头雾水是不?那么现在就来套那个问题,既然已经知道了他的需求,写命令就容易了。在cmd里面加2条静态路由:route-padd0.0.0.0MASK0.0.0.0125.71.*.***该条目注意,添加的是网段,缺省的是0.0.0.0,不是具体的地址,否则需要通配码。**route-padd192.168.0.0MASK255.255.0.0172.16.0.1**同样的,要写网段。因为不知道他的子网情况,所以用16位掩码全部给他匹配了所有的子网另一种写法是:从routeprint上面看到的0xY这个接口IF(InterFace)也可以写为route-padd0.0.0.0MASK0.0.0.0IFY**Y=在routeprint看到的0xY后面的大Y**输入后,朋友疾呼,问题搞定。。最后补充一下change命令,如果你需要修改路由表,可以用这个命令routechange0.0.0.0MASK0.0.0.0125.71.*.***缺省网络所有的ip和子网掩码均为0。该命令修改默认网关的指向**