网外(Internet)访问代理服务器内部的实现方法
由于公网IP地址有限,不少ISP都采用多个内网用户通过代理和网关路由共用一个公网IP上INTERNET的方法,这样就限制了这些用户在自己计算机上架设个人网站,要实现在这些用户端架设网站,最关键的一点是,怎样把多用户的内网IP和一个他们唯一共享上网的IP进行映射!就象在局域网或网吧内一样,虽然你可以架设多台服务器和网站,但是对外网来说,你还是只有一个外部的IP地址,怎么样把外网的IP映射成相应的内网IP地址,这应该是内网的那台代理服务器或网关路由器该做的事,对我们用私有IP地址的用户也就是说这是我们的接入ISP服务商(中国电信、联通、网通、铁通等)应该提供的服务,因为这种技术的实现对他们来说是举手之劳,而对我们来说是比较困难的,首先得得到系统管理员的支持才能够实现。因为这一切的设置必须在代理服务器上做的。
要实现这一点,可以用Windows 2000 Server 的端口映射功能,除此之外Winroute Pro也具有这样的功能,还有各种企业级的防火墙。而对于我们这些普通用户,恐怕还是用Windows 2000 Server最为方便。
先来介绍一下NAT,NAT(网络地址转换)是一种将一个IP地址域映射到另一个IP地址域技术,从而为终端主机提供透明路由。NAT包括静态网络地址转换、动态网络地址转换、网络地址及端口转换、动态网络地址及端口转换、端口映射等。NAT常用于私有地址域与公用地址域的转换以解决IP地址匮乏问题。在防火墙上实现NAT后,可以隐藏受保护网络的内部拓扑结构,在一定程度上提高网络的安全性。如果反向NAT提供动态网络地址及端口转换功能,还可以实现负载均衡等功能。
端口映射功能可以让内部网络中某台机器对外部提供WWW服务,这不是将真IP地址直接转到内部提供WWW服务的主机,如果这样的话,有二个蔽端,一是内部机器不安全,因为除了WWW之外,外部网络可以通过地址转换功能访问到这台机器的所有功能;二是当有多台机器需要提供这种服务时,必须有同样多的IP地址进行转换,从而达不到节省IP地址的目的。端口映射功能是将一台主机的假IP地址映射成一个真IP地址,当用户访问提供映射端口主机的某个端口时,服务器将请求转到内部一主机的提供这种特定服务的主机;利用端口映射功能还可以将一台真IP地址机器的多个端口映射成内部不同机器上的不同端口。 端口映射功能还可以完成一些特定代理功能,比如代理POP,SMTP,TELNET等协议。理论上可以提供六万多个端口的映射,恐怕我们永远都用不完的。
一、下面来介绍一下通过NAT共享上网和利用NAT来实现端口映射。
1、在Windows 2000 Server上,从管理工具中进入“路由和远程访问”(Routing and Remote Access)服务,在服务器上鼠标右击,-》“配置并启用路由和远程访问”
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台电脑,其中一台上装了Sambar 5.1b5做的Web服务器,Web端口是80,待会就从外网(用192.200.200.55来替代)来访问这个192.168.0.2:80上的网页)
这台NAT主机上开通了IIS 5.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、在"地址池"选项表里添加你需要提供端口重定向的起始地址与结束地址.(也
就是你要拿出来搞端口映射的所有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的定向页差不多。