用2kserver做NAT之后内网无法上网的问题求解

环境:一台2k server做服务器,另一台2k pro做客户机。服务器通过虚拟拨号用ADSL连接上Internet。

在做NAT之前,其实客户机已经通过“Internet连接共享”(ICS)实现了类似的功能,完全可以正常使用。我只是看过win2k的帮助之后,想试试用“路由和远程访问”来做一个NAT的这第二条路而已。但是独立解决了一些问题之后,实验到了接近最后的阶段却无法继续进行下去了。
我用的是网上很多地方都有教授的方法,比如:
http://www.dsl2002.com/nat/road/router.html
当客户机试图访问Internet的时候,从服务器上路由和远程访问的管理器中可以看到在连接外网的端口中有映射形成,也能看到有外出的数据包被进行了网络地址转换(计数有增加)。但是客户机方面没有任何反应,就像被防火墙拦了一样,毫无反应直到超时。而传入的数据包的计数也没有增加,也就是说Internet对送出的数据包根本没有回应。
防火墙都已经确认关闭,而且马上从NAT切换回ICS就又一切正常了。所以我怀疑是地址转换出了点问题,但不知道是哪里有问题,还请有经验的大虾多指点。
---------------------------------------------------------------

其实,这是一个简单的问题。因为用NAT做代理(在不用ISA SERVER 2000的情况下),NAT要求对外网的IP地址是静态的。换句话说就是,你用ICS做共享,外网的IP地址是可以自动更换的。当用NAT做代理的时候,比如,你这次用ADSL拨号上去的IP是61.139.2.69,你在NAT的外网的地址池里面设置的也是61.139.2.69,那么就可以实现代理。但是下次你拨号上去的时候,你的外网IP又变成了61.139.65.4,但是你NAT的外网地址池里面的IP仍然是61.139.2.69。这样就导致了客户机不能连接Internet。
所以解决办法有几个:
1。你每次拨号上去的时候,都先要用ipconfig才察看ISP给你分配的外网IP,并修改NAT里面的外网网卡的地址池。
2。装ISA SERVER 2000,可以实现动态IP的自动更新。
3。安装其他的代理软件。
---------------------------------------------------------------

呵呵,楼上的说法我认为不正确,2000 server作NAT根本不必自己来更改外网地址,具体参照如下,尤其注意需要添加一个到ADSL的静态路由!!

通过ADSL共享上网:右击服务器名--属性--选择路由器,选择请求拨号--确定--展开网络接口--右击--新建请求拨号接口--选择PPPOE连接--填入用户名,密码,域不用添!右击新建的连接--属性--安全--下拉列表选择"允许没有安全措施的密码"--然后切换到"网络"标签--TCP\IP"属性--高级--使用IP标头压缩.接着展开"IP路由选择"下的NAT/基本防火墙--右击--新增接口,本地连接和环回都要添加(注意远程路由器的"在此接口上启用 NAT"复选框确保其选中,其余设置默认)
如果是双网卡的情况,展开"IP路由选择"下的NAT/基本防火墙--右击网卡B--"在此接口上启用 NAT"复选框确保其选中.
展开IP路由选择下的静态路由--右击--新建静态路由--接口选远程路由器,全部填入0,勾选"使用此路由来初始化请求拨号式连接"
---------------------------------------------------------------

感谢superliufa(瓜皮) 和sungod8(琤) (Heros Ⅲ 凤凰),今天我已经做了试验,证明我说法是错误的,谢谢两位。
帮我纠正了错误,使我更新了我原来错误的概念。谢谢,万分感谢!

---------------------------------------------------------------

一般情况下nat不成功的的情况有两个,一是因为不允许对包进行修改造成的,二是因为路由表错误,nat是建立在路由基础上的。
可以从这方面分析原因。我觉得你这个原因可能出在路由表上,windows自动生成的路由表完全是垃圾。呵呵。你可以试着把windows的路由表全部删除,重新写一个干净一点的试一下。
不过话说回来,我在windows下实验nat没出现任何问题哈,很顺利就做成了,只是实验环境很纯粹,你的网络环境恐怕有点问题哟。

Published At
Categories with 服务器类
Tagged with
comments powered by Disqus