网外(Internet)访问代理服务器内部的实现方法作者:ZealousJulyEmail:zsj008od@sina.com鲨鱼丸ID:zsj008odThursday,May30,2002由于公网IP地址有限,不少ISP都采用多个内网用户通过代理和网关路由共用一个公网IP上INTERNET的方法,这样就限制了这些用户在自己计算机上架设个人网站,要实现在这些用户端架设网站,最关键的一点是,怎样把多用户的内网IP和一个他们唯一共享上网的IP进行映射!就象在局域网或网吧内一样,虽然你可以架设多台服务器和网站,但是对外网来说,你还是只有一个外部的IP地址,怎么样把外网的IP映射成相应的内网IP地址,这应该是内网的那台代理服务器或网关路由器该做的事,对我们用私有IP地址的用户也就是说这是我们的接入ISP服务商(中国电信、联通、网通、铁通等)应该提供的服务,因为这种技术的实现对他们来说是举手之劳,而对我们来说是比较困难的,首先得得到系统管理员的支持才能够实现。因为这一切的设置必须在代理服务器上做的。要实现这一点,可以用Windows2000Server的端口映射功能,除此之外WinroutePro也具有这样的功能,还有各种企业级的防火墙。而对于我们这些普通用户,恐怕还是用Windows2000Server最为方便。先来介绍一下NAT,NAT(网络地址转换)是一种将一个IP地址域映射到另一个IP地址域技术,从而为终端主机提供透明路由。NAT包括静态网络地址转换、动态网络地址转换、网络地址及端口转换、动态网络地址及端口转换、端口映射等。NAT常用于私有地址域与公用地址域的转换以解决IP地址匮乏问题。在防火墙上实现NAT后,可以隐藏受保护网络的内部拓扑结构,在一定程度上提高网络的安全性。如果反向NAT提供动态网络地址及端口转换功能,还可以实现负载均衡等功能。端口映射功能可以让内部网络中某台机器对外部提供服务,这不是将真IP地址直接转到内部提供服务的主机,如果这样的话,有二个蔽端,一是内部机器不安全,因为除了之外,外部网络可以通过地址转换功能访问到这台机器的所有功能;二是当有多台机器需要提供这种服务时,必须有同样多的IP地址进行转换,从而达不到节省IP地址的目的。端口映射功能是将一台主机的假IP地址映射成一个真IP地址,当用户访问提供映射端口主机的某个端口时,服务器将请求转到内部一主机的提供这种特定服务的主机;利用端口映射功能还可以将一台真IP地址机器的多个端口映射成内部不同机器上的不同端口。端口映射功能还可以完成一些特定代理功能,比如代理POP,SMTP,TELNET等协议。理论上可以提供六万多个端口的映射,恐怕我们永远都用不完的。一、下面来介绍一下通过NAT共享上网和利用NAT来实现端口映射。1、在Windows2000Server上,从管理工具中进入“路由和远程访问”(RoutingandRemoteAccess)服务,在服务器上鼠标右击,-》“配置并启用路由和远程访问”2、点“下一步”3、选“Internet连接服务器”,让内网主机可以通过这台服务器访问Internet.(最好先配置好NAT共享,让内网主机可以正常上网,不然的话,配好端口映射后再来配置NAT共享就有点麻烦了,弄的不好NAT还共享不了。)4、选“设置有网络地址转换(NAT)路由协议的路由器”,不要选“设置Internet连接共享(ICS)”.(ICS与NAT的区别在于使用的容易程度上,为了启用ICS,只需要选择一个复选框就可以了,而为了启用NAT,则需要更多的配置任务,此外,ICS用于小型网络上的原因还在于:针对内部主机,它需要有一个固定的IP地址范围;针对与外部网络的通信,它被限制在单个公共IP地址上;它只允许单个内部网络接口。)5、先在此说一下我的网络情况:Internet连接192.200.200.3(也是个内部地址,没办法,铁通的网络不太好,网速不快,价钱又贵,我的命真苦啊)宿舍内连接192.168.0.1(宿舍里连有局域网,共4台电脑,其中一台上装了Sambar5.1b5做的Web服务器,Web端口是80,待会就从外网(用192.200.200.55来替代)来访问这个192.168.0.2:80上的网页)这台NAT主机上开通了IIS5.0,端口是80,用端口映射的办法把8081端口映射到内部主机192.168.0.2的80端口上。6、在“路由和远程访问服务器安装向导”中选“Internet连接”(就是连向Internet的那个连接),点“下一步”。7、选“完成”到此为止,NAT共享设置也就完成了,内部的主机也能上网了。内部主机的网络设置如下:IP地址范围是912.168.0.2~192.168.0.254,子网掩码为255.255.255.0,网关为192.168.0.1,DNS为ISP给的地址,我们的是211.98.xxx.xxx二、利用NAT来映射端口1、添加NAT协议。右击“常规”,-》“新路由选择协议”2、在“新路由选择协议”中选择“网络地址转换(NAT)”,点击“确定”3、这样在“IP路由选择”中就多了一项“网络地址转换(NAT)”4、右击“网络地址转换(NAT)”,添加“新接口”5、在“网络地址转换(NAT)的新接口”中选择“Internet连接”(也就是连向Internet的那个连接,可不要选错咯)6、在“网络地址转换-Internet连接属性”中选中“公用接口连接到Internet”,复选“转换TCP/UDP头(推荐)”7、在地址池选项表里添加你需要提供端口重定向的起始地址与结束地址.(也7、就是你要拿出来搞端口映射的所有IP地址,一般情况下我们就一个IP地址,所以可以不用“地址池”不同之处后面再讲。这里假设有8个地址,设置如下:添好后是这样的:8、在特殊端口选项表里提供了你需要定向的数据连接协议(是TCP还是UDP协议,如Web和FTP就是TCP协议的),选准后“添加”9、“添加特殊端口”,这里就是设置端口映射的核心了,把NAT主机的哪个端口映射到内网主机的哪个端口就在这里设置,由于设有“地址池”,所以可以在“公网地址”中添上“地址池”中的任一地址,这里添的是“192.200.200.3”,也就是我的地址,如果你在前面没有设置“地址池”,那么在这个选项页中“在此地址池项”为灰色不可选,你只能选“在此接口”,也就是你只有一个公网IP地址,这比较适合只有一个IP的朋友,可以不用“地址池”,何必做多余的设置呢?假如有问题的话,还不是自找麻烦。“传入端口”就是别人从网外访问有公网IP的NAT服务器的端口,这里设的为8080。“专用地址和传出地址”就是内部主机的IP地址和提供特殊服务的端口,这里是把192.200.200.3上的8080端口映射到192.168.0.2上的80端口。这就是TCP协议端口的重定向,至于UDP的定向页差不多,下图就是添加端口映射后的情况。四、测试结果在192.200.200.55出测试了一下NAT主机上的Web服务器和内网中192.168.0.2上建的Web服务器,得出结果如下:(不好意思,中间改过一下端口号,192.200.200.3上的8081端口映射到192.168.0.2的80端口)现在大家该清楚了吧,大家可要好好利用哦:)祝各位好运2002-5-311:30am发表于鲨鱼丸,在此感谢鲨鱼丸等老大的支持更多精采