共享上网技术浅析
2009-09-18黄巍马文静吴晓霞
黄 巍 马文静 吴晓霞
摘要:目前的IP地址数量不能满足上网的需求,用户需要更少的费用来完成上网,这就需要共享上网技术。本文对共享上网技术做了简单的分析,供读者参考。
关键词:共享上网代理服务器网络地址转换(NAT)
0 引言
目前,越来越多的家庭和企业需要访问互联网。必须承认的是,互联网已经无时不刻的影响着我们的生活。截止至2007年初的统计数字显示,我国网民数达1.44亿,其中宽带上网用户9700万户[1]。不仅仅是企业,越来越多的家庭也拥有了不止一台电脑。电脑的普及促进了互联网的发展,互联网的发展也反作用于用户购买更多的电脑来访问互联网。这样带来一个问题就是,能不能满足所有的用户访问互联网的需求。对于网络接入提供者来说,必须认清的现实是,目前互联网使用的是TCP/IP协议,而目前的版本32位地址长度的IPv4能够提供的IP地址数量理论上最多是40亿个,可是由于划分类别,可使用的数目远低于理论值,再加上初期分配不均等原因,造成我国等发展中国家面临着IP地址紧缺的现状。用户访问互联网,必须拥有一个IP地址才行,没有IP地址,意味着用户无法访问互联网。对于用户来说,关心的是如何能够支付更少的费用,使自己的所有电脑都能够访问互联网。无论是网络接入提供者,还是网络用户,采用共享上网的技术,都是解决上面所述的问题的有效手段。
1 共享上网技术
目前,共享上网的技术主要有两种:一种是采用代理服务器(Proxy)技术,另一种是采用网络地址转换(NAT)技术。从互联网接入的要求来看,两种共享上网技术都能够实现多台电脑共同使用一个IP地址来访问互联网,从而节省了IP地址的使用;从应用的角度来看,两种技术都可以满足只申请一条宽带就实现多台电脑访问互联网,从而节省了互联网接入的成本。因此,可以说,两种共享上网的技术都能够满足运营商和用户的需求。
1.1 代理服务器方式 两种共享上网技术中,代理服务器技术出现的比较早,适合于接入电脑数不多的场合。通常的组网形式是:向ISP申请一条接入线路,连接到局域网的电脑中挑选出一台性能比较好的一台,这台电脑就作为局域网其他电脑上网的代理服务器,在这台电脑上安装代理服务器软件,分配好各种应用的端口号。将局域网中的其他电脑连接至这台电脑,然后在应用程序上设置使用代理服务器,并且把SOCKET地址指向代理服务器的IP地址和端口号。这样,局域网中的所有电脑就都能够共享上网了。从技术细节上分析,局域网中的享受代理服务的客户机将每次连接互联网的应用请求发给代理服务器,代理服务器接到请求后将每个客户机的请求做好记录,然后将这个请求作为自己的请求进行互联网的访问,得到互联网的访问结果之后,再将这些结果按照做好的记录转发给局域网中的客户机。例如,客户机B要访问网站www.baidu.com,它在浏览器中输入网址并且回车之后,已经设置好代理服务器的浏览器将这个请求发给代理服务器A,A接到请求之后,去访问网站www.baidu.com,得到网站的内容(HTML代码)之后,将这些内容转发给B,B的浏览器接收到这些HTML代码之后,解释成网页页面,从用户的角度来看,B实现了访问互联网的需求。从技术细节分析上可以看出,代理服务器是工作在应用层上的,它所处理的都是具体的应用程序发出的应用请求,所以要求充当代理服务器的电脑性能要高,同时局域网中的电脑数目也不要过多,否则,代理服务器很可能会因为大量的应用请求耗尽本机资源而没有响应,导致不能完好的提供代理服务的工作。
1.2 网络地址转换(NAT)方式 网络地址转换(NAT)方式出现在代理服务器工作方式之后。从用户应用的角度来看,它的组网形式可以和代理服务器的形式相同;也可以将服务器的工作交给路由器来做,这样就不需要专门的主机来充当了。设置好NAT服务器(网关)之后,局域网中的客户机不需要每个应用程序都设置代理服务,只需要在网络连接中,将网关和DNS服务器设置为NAT服务器的IP地址就可以了,比代理服务器方式的设置简单得多。从技术细节上分析,网络地址转换,网络地址在这里指的是互联网地址,即IP地址;转换指的是由客户机地址转换成了网关地址,为了区别不同的客户机,需要使用端口号。举例说明,局域网中主机A需要访问网站www.baidu.com,它将这个应用请求封装成IP数据包之后发送给网关B。网关B在接收到IP数据包之后,并不完全打开去识别数据包中的内容,只是查找IP数据包的包头信息中源地址和目的地址。找到源地址之后,将源地址记录,再将这个数据包的源地址改成网关B的IP地址,并且加上随机端口号,将修改过后的数据包发往目的地址。端口号的作用是网关用来识别局域网中的不同主机。目的地址接收到请求之后,做出响应,将含有端口号的结果数据包发回,网关接收到发回的数据包后,根据端口号来判断这个数据包的原始请求主机,然后再按照记录好的原始IP地址发送到主机A。从这样的分析中,可以看出,网络地址转换这种工作方式没有涉及到应用层,主要工作是在网络层和传输层完成的。代理服务器转发的是应用层的数据,网络地址转换方式转换的是IP数据包,比代理服务器工作方式减少了一个封装和解封装的过程。所以,网络地址转换工作方式拥有更快的转发速度,同时,因为只是转发数据包,也只需要占用更少的资源。可见,网络地址转换方式客户机设置更简单,服务器占用资源少,转发快。正是由于这些优点,一经出现之后,就受到了欢迎,并逐步取代了代理服务器工作方式。
1.3 共享上网技术的优缺点 由于篇幅限制,上文已经提到过的优点就不再赘述,共享上网还有一个优点就是,可以隐藏被提供共享上网服务的电脑的真实IP地址,在一定程度上避免黑客的攻击,所以,某种意义上说,共享上网可以起到一定的网络防火墙的作用。缺点也是显而易见的,一个是速度上,无论哪种方式,都需要有一个转换的过程,即使再快,也需要一定的时间,所以,会造成一定的延迟;另一个是带宽上,一条线路被多台电脑共同享用,带宽自然会减少。与共享上网带来的优点相比,缺点是微不足道的,也是无法避免的。
2 路由器上NAT的设置
代理服务器方式可以在服务器上安装CCProxy,WinProxy等软件,NAT方式可以在电脑中安装Sygate等软件,在Windows XP中已经有了集成,不需安装软件也可以实现,设置都很简单,不再详述。仅以在企业中,多台电脑环境下拥有一个IP地址的情况下,路由器的配置步骤进行简单说明,供读者参考。以下的过程都是在路由器上完成:①配置默认路由到ISP的网关②设置访问控制列表,允许内部网络访问互联网③设置地址池,标明拥有能够访问互联网的IP地址起止范围,由于只拥有一个IP,所以起止地址都是这一个,在命令最后说明允许重载④在端口上说明nat的出入方向,局域网为入方向,外网为出方向。
参考文献:
[1]http://top.chinaiiss.org/content/2007-05-18/1249.shtml.