天极网最近发表的青岛一位NetSwap用户的《ADSL+无线路由器布网实战》的文章,介绍了一种无线路由器在家庭ADSL宽带接入模式下的部署方法。读过此文后,作为一名在网络应用方面的专家,特提出有关看法,补充探讨,以对网友正确使用无线路由器提供帮助。
什么是无线路由器:无线路由器是指可以连接LAN和WAN,带有路由功能和无线接入(AP)功能的网络设备。
我们来看看市场上常见的无线路由器的硬件结构:
1.不带交换模块的普通双口无线路由器。一个RJ45口为WAN口,也就是UPLink到外部网络的接口。另一个RJ45口为LAN口,用来连接普通局域网。
2.带有2-4个LAN口交换模块的无线路由器。基本结构和上面的相同,但是在内部多一个网络交换机芯片,也就多了几个LAN的网络接口。LAN接口之间工作在交换模式下。
通常无线路由的WAN口和LAN之间的路由工作模式一般都采用NAT(Network Address Transfer)方式。即是把LAN口的192.168.x.x或者10.x.x.x的私有地址转换为WAN口的ip地址。
NAT地址转换是用来做什么的呢?我们知道私有的地址是不能够和互联网上的其它计算机进行通信的。所有无线路由器把LAN口接受到的数据包中的私有地址转到WAN口上的可以和互联网通信的网络地址。
的补充讨论(图一)" /在家用网络和互联网通信的时候,由于接入商的线路(如ADSL)只给我们提供一个有效的Internet互联网地址,所以家用网络设备都采用了NAT技术。
但是NAT也有局限性,由于用户端使用的地址是私有的,假如是需要外面的数据包先行发进来,或者说用户端的程序需要双向的通信时,就会出现从外到内的通信链路不能建立的现象。很多网友在使用一些P2P软件或是即时通信软件的文件传送和音频视频功能时,就会发现通信的一方可能不能正常工作,或是根本就会连接失败。
为了解决这个问题,人们提出了一种新的NAT技术,就是uPNP NAT(网络即插即用技术),在使用uPNP NAT后,在私有网络内部的客户端可以事先通知NAT设备,说“我在这里”,那么监听的端口就可以自动映射到NAT设备的外部地址上。以前不能正常使用的网络软件工作起来就不会那么麻烦了。MSN,还有很多软件都支持uPNP,也就保证了用户在局域网内可以正常的和外部进行语音视频通信以及文件传送了。
目前市面上大部分的无线路由器都支持uPNP协议。而ADSL Modem由于芯片和固件(Firmware)的限制(现在市面上ADSL Modem使用的芯片和固件一般都是在数年前的设计完毕的),却往往不支持uPNP功能。
还有值得一提的是,不管是否支持uPNP的NAT设备,在做NAT时,由于要记录发包的源地址和目标地址之间的转换关系,所以最后送到互联网上的IP包的头部都要比正常情况下略微大一些。而且NAT的过程中,存在IP包的拆包和再封包的操作,所以对NAT设备的CPU也有一些消耗,当大量的包需要作这种处理时,就会降低一些网络的性能。当然这种降低主要取决于设备处理能力的强弱和IP包本身的大小。通常情况下影响是微乎其微的,但我们也要尽可能少的使用NAT。
我们再来看《ADSL+无线路由器布网实战》一文。在该文描述的配置中,ADSL Modem工作在Router模式,完成了PPPOA拨号和NAT两个功能。在ADSL Modem的LAN口又接了无线路由器的WAN,无线路由器也工作在NAT状态,出现了两个私有IP地址段192.168.1.x和10.0.0.x。
也就是说,在一个IP包的发送过程中作了两次NAT转换。
假设用户通过ADSL拨号获得的IP是61.128.193.2,无线终端通过无线路由器获得的IP为10.0.0.2,那么在发送数据时的路径就是:
的补充讨论(图二)" /从10.0.0.2到61.128.193.2的转换过程中,不光白白的多做了一次NAT转换,而且最要害是,由于很多ADSL Modem上的NAT不支持uPNP NAT,所以就算连接在后面的无线路由器支持uPNP NAT功能,整个网络也无法实现uPNP NAT,那么很多P2P软件或者MSN类的软件就不能发挥全部功能了。
所以我们建议,关闭ADSL Modem的拨号功能,让他工作在Bridge(网桥)模式,通过无线路由器来完成ADSL拨号和uPNP NAT。
以我家的实际例子,我的ADSL Modem是ALCATEL SPeedToUCh Home Plus 511型号的ADSL路由器,我关闭了他的路由功能,只用来做ADSL Modem。然后使用无线路由器TP LINK TL-WR245(带四口交换的无线路由器)完成PPPOE拨号和NAT。
的补充讨论(图三)" /该无线路由器支持uPNP NAT。我的MSN和P2P软件都工作的很好。
的补充讨论(图四)" /
我猜想,原作者采用《ADSL+无线路由器布网实战》描述的设置来配置网络的一个很大的原因可能在于,很多无线路由器的宽带拨号不支持PPPOA协议。其实就算无线路由器不支持PPPOA拨号,也可以把ADSL Modem的LAN口直接接到无线路由器的LAN口上,避开第二次NAT。但值得注重的是,这样的接法要求连接线缆为端口互连的交叉线缆。无线路由器的LAN口IP地址要和ADSL Modem的LAN口IP地址在同一个网段且不能互相冲突,ADSL Modem或无线路由器的DHCP服务只能打开其中一个。这样的接法,虽然不能实现uPNP NAT,但是起码可以少做一次NAT地址转换。
综上所述,希望广大的读者在根据自己的实际情况选择合适的方案来建立自己的家庭无线局域网,同时也希望无线路由器的生产厂家根据实际情况,能够把更多的实用的功能(如增加PPPOA协议)集成到产品上,为大家使用提供更多的便利。