随着CERNET2的飞速建设,现在许多大学的校园网已经开始部署IPv6协议了。IPv6的好处是显而易见的,它不但使我们能够拥有全球唯一的 IP地址,而且给我们提供了第二条网络出口。尤其在进行P2P的时候,如果能够连接上IPv6的用户,速度往往可以彪到1M/s~2M/s。同时IPv6上的很多资源也是很实用的,例如IPTV、免费代理服务器等等。但是IPv6也带来一些问题,比如说IPv6路由器的设置。
相信很多大学的宿舍里网络接口的数目都是少于宿舍电脑数目的,另外对于一些大学,校园网出口是通过IPv4地址进行认证的,如果想要宿舍里所有人共享一个网关帐户,就需要用到路由器的NAT功能。可问题是NAT技术目前不支持IPv6,也就意味着路由器后面的电脑无法获得IPv6地址,也无法享受IPv6 资源。这篇文章要讨论的问题就是如何配置无线路由器,使得路由器后的电脑能同时使用IPv4与IPv6网络。本文所讨论的情况仅限于IPv4 IPv6双栈的情况。
想要配置如此高级的功能,简陋的官方固件显然是不能满足我们的需要,于是我们需要第三方固件的帮助。第三方固件主要有DD-WRT、Tomato以 及DD-WRT。本文使用的是DD-WRT,但是其实只要是支持IPv6的基于Linux的固件理论上都可以实现。不过并不是所有无线路由器都支持第三方 固件的,首先要确定你的路由器能不能支持第三方固件,另外你的路由器必须有4MB以上的Flash空间才能使用支持IPv6路由器的固件版本。我的路由器是Asus WL-500G Deluxe,4M Flash,32M RAM,使用的固件为DD-WRT v24-sp2 (08/23/09) std-nokaid-usb。注意,刷机操作有让路由器变砖的危险,并且会使你的路由器丧失保修,请谨慎行事。
首先我们需要在电脑上安装IPv6协议,Windows用户请在开始-运行里输入ipv6 install,Linux 用户请在终端中输入insmod IPv6。然后我们要把电脑直接接在校园网接口上,让它自动获得IP地址,Windows用 户在命令行提示符窗口中输入ipconfig,Linux用户在终端输入ip -6 addr show/ip -6 route show。以Windows用户为例,我们会得到类似以下一些信息
Ethernet adapter Wireless Network
Connection:Connection-specific DNS Suffix . :
IP Address. . . . . . . . . . . . : 10.2.90.146Subnet Mask . . . . . . . . . . . : 255.255.255.0IP Address. . . . . . . . . . . . : 2001:250:209:5d11:21d:92ff:fec1:8109
IP Address. . . . . . . . . . . . : fe80::21d:92ff:fec1:8109%4
Default Gateway . . . . . . . . . : 10.2.90.1 fe80::213:d4ff:fee8:50b8%4
这里面有用的信息是IP Address中2001开头的地址,和Default Gateway中fe80开头的地址,把它们记录下来备用。
然后登录到路由器Web页面,选择“管理”,找到“IPv6支持”选项,选择“启用”,并在出现的Radvd选项上选择“启用”。在Radvd配置文本框 中输入:
interface br0 {
AdvSendAdvert on;
prefix 2001:XXXX:XXXX:XXXX::/64 {
AdvOnLink on;
AdvAutonomous on;
其中prefix后面的X替换为之前获得的IPv6地址的对应内容,点击页面最下方的“应用”进行保存
然后进入“命令”页面,在指令解释器里输入:
insmod ipv6
sleep 5
radvd -C /tmp/radvd.conf
ip -6 route add ::/0 via fe80::XXXX:XXXX:XXXX:XXXX dev vlan1 metric 256
ip -6 route add 2001:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX/128 dev br0 metric 128
ip -6 neigh add proxy 2001:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX dev vlan1
将第4行fe80后面的X替换为之前得到的Default Gateway地址,将第5、6行2001后面的X替换为之前的IP Address
点击“保存为启动指令”
到这里IPv6路由器配置就完成了,拔下路由器电源,把WAN口连接到校园网,LAN口连接到电脑上,插上电源。等电脑显示网络已连接以后,在终端中输入ping6 ipv6.google.com,如果得到类似下面的结果,说明配置成功了
C:\ping6 ipv6.google.com
Pinging ipv6.l.google.com [2001:4860:c004::68]
from 2001:250:209:5d11:21d:92ff:fec1:8109 with 32 bytes of data:
Reply from 2001:4860:c004::68: bytes=32 time=62ms
Reply from 2001:4860:c004::68: bytes=32 time=66ms
Reply from 2001:4860:c004::68: bytes=32 time=64ms
Reply from 2001:4860:c004::68: bytes=32 time=63ms
Ping statistics for 2001:4860:c004::68:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 62ms, Maximum = 66ms, Average = 63ms