本专题旨在为广大">共享上网用户提供可选方案和技术上的支持。由于
宽带上网的形式和方法多种多样,本专题不可能涵盖所
有的技术方案,但相关的方法可作为参考和借鉴。随着共享上网限制措施的不断发展,共享上网仍然会是一个长远的话题,11545.html">我们有必要了解一下它的原理和基本实现方法。
共享上网原理与方法概述
一、局域网共享上网原理
在局域网共享上网的实现上,无论通过类似路由器这样的硬件设备上网,还是用Windows的Internet连接共享,或者用网关类软件、代理服务器软件等上网,它们的原理都是相同的。
TCP/IP协议规定了三类局域网保留IP地址,这三个地址段分别是: 10.x.x.x、172.16. x.x、192.168. x.x(X在0~255之间,注意实际用时网络号部分不能为全0或全1)。这些IP地址可以在一个局域网内部使用,但直接以这样的内网地址连接到Internet显然是行不通的。
为此,当内部的机器与外部的机器连接时,需要先通过有合法外网地址的主机把内网IP地址转换为合法的外网IP地址,这就是网络地址转换(Network Address Translation),简称NAT。
使用NAT技术可以使一个或数个合法IP地址访问Internet,从而节省了Internet上的合法IP地址;另一方面,通过地址转换,可以隐藏内网上主机的真实IP地址,从而提高网络的安全性。
比如,连接外网的电脑或设备,通过固定或动态获取得到了一个合法的IP地址,如219.254.38.180,它还需要有一个网络内部的地址比如192.168.0.1,用来充当其他电脑的网关。如果局域网内部的一台电脑IP地址是192.168.0.2:4000(4000是它的端口号),想访问Internet上某个主机,192.168.0.2:4000的请求先传到主机192.168.0.1上,主机把这个IP地址转换为219.254.38.180:9000。然后以端口号为9000的这个IP地址向Internet上的那个主机发出请求,回答的数据流则传回给主机219.254.38.180:9000,主机接收到数据后,会查找与9000这个端口号相关联的内部IP地址,当它发现是192.168.0.2:4000后,就把数据传给192.168.0.2:4000,这样,IP地址的转换就完成了。
从以上过程可以看出,如果是电脑来充当网关,内网、外网两个地址就需要两块网卡,分别连接内网和外网。但实际上,当这台电脑是通过交换机或路由器连接到外网时,并不一定必须是双网卡,仅仅单网卡也能实现网关。这就需要用到网关类软件的单网卡功能(如SyGate等),它们会虚拟出一块网卡进行内网的连接并充当网关。不过实际的数据流还是从一块网卡上经过的,网卡负荷较大。
二、共享上网实现方法概述
1. 从实现途径上区分
硬件方式:通过路由器、宽带路由器、内置路由功能的ADSL Modem等实现共享上网。使用硬件方式,一般都能实现共享,但设置稍显麻烦。这种方法使用效果好,但投资也稍高。
软件方式:主要是通过代理服务器类与网关类软件实现。常用的有WinRoute、WinGate、SyGate、CCproxy、UserGate、SpoonProxy、HomeShare、WinProxy、Superproxy、SinforNAT等,还有Windows系统自带的ICS。这些软件中有的还是免费的,虽然方便性不如硬件方式,但能对网络进行有效的管理和控制。