The Trick for Accessing IPv6 Network via a Old Router
由于本人在网络协议这方面学艺不精,因为本文很多结论并不能给出合理的解释。但是本人可以保证本文所有结论都是本人实验所得,毫无水分~
以下是实验环境,但是本人不能保证在别的硬件和软件环境下可以达到相同效果。
实验环境:
- 起因:
在GUCAS宿舍上网时需要账号的,账号的收费形式是按月包流量的。由于现在我和舍友白天很少在宿舍,因此有很长一段时间都无法将账户流量用完,造成了不必要的浪费。于是我们决定两人合用一个账号。但是GUCAS账户在登陆后是会暂时与GUCAS宿舍的IP进行绑定。因此每次我登陆账号上网的话,我舍友只能通过我的PC所搭建的代理来访问网络。

考虑再三,我买了个路由器将我和舍友的PC通过一个宿舍IP连接GUCAS网络。

如今IPv6真是好流行的东西,在各大高校开始测试。最爽的是GUCAS的计费系统还不支持IPv6,在GUCAS访问IPv6网络资源是无需登录账户的。但是IPv6也是个新兴事物,目前除非最新系列的路由器,别的路由器都不能很好地支持IPv6。为了让我和舍友在使用路由器的情况下也能使用连接IPv6,看来一阵摸索是免不了的了。唉!
- 摸索:
刚搭建好上图所展示的网络的时候,我就遇到了一个很奇怪的现象:IPv6网络其实是可以访问,只是IPv6的域名无法解析。比如说:我想访问我经常用来下载东西的IPv6 BT站——六维空间(此站只能通过IPv6访问),但是当我在hosts文件中添加此行2001:da8:9000::232 bt.neu6.edu.cn
六维空间即可正常访问了。
由此可见,导致连接路由器的PC无法正常访问IPv6站点的主要原因,并不是IPv6网络的无法访问,而是因为路由器没有对IPv6支持的不完美引起的PC无法正常获得IPv6 DNS。
一个比较直接的解决方法,就是在PC的网络连接属性中设置静态IP,然后手动添加IPv6的DNS。但是设置静态IP毕竟是个麻烦事,万一哪天把本本带出去上网,拿回来又要重新设置。
此时此刻一个新的问题出现于我的大脑,我如何才能方便的获取到IPv6的DNS。
首先分析一下路由器

从上图可知:WAN口用来连接GUCAS网络的,这个端口使用GUCAS网络动态提供的公网IP,而LAN口用来连接局域网内的PC(即我和舍友的PC)。这些LAN使用的是由DHCP协议动态分配或者手动分配的私有IP。由于此路由器是支持IPv4的,对IPv6支持的不好。因此在分配IP的时候,LAN口的PC的IPv4网关和IPv4 DNS都指向了路由器的NAT技术的Inside Global IP address,即192.168.0.1。但是IPv6的没有定义。
我们可以大胆的猜测:如果不考虑WAN口,剩下来的所有LAN口就相当于是一个交换机。所以我试试看地将连接GUCAS网络端口的网线插到了LAN口上,WAN口就置之不理。

果然不出所料,由于交换机原理,我和舍友的PC都自动获取到了IPv6的网关和DNS。显然对IPv6的访问已经无障碍了。IPv6域名也可以被顺利解析了。虽然IPv6的访问问题解决了,取而代之的是IPv4的访问问题了。因为路由器对IPv4支持很完美,所有IPv4的连接都以NAT技术的Inside Global IP address为网关和DNS通过WAN口出去的。但是由于我将WAN口置之不理了,所以IPv4必然不可能正常访问了
- 解决方案:
目前我唯一能想出来的比较好的解决方法是如下图所示:

这样子IPv4和IPv6的网络都可以顺利访问了。
PS:
除了http://bt.neu6.edu.cn,您也可以用http://ipv6.google.com来测试您的机器是否能够正常访问IPv6。
当然在做上面实验的时候,请先确认您的系统已经安装了IPv6协议。
以下更新于 2010年3月7日16点47分
同时确认网络供应商提供IPv6的接入。








Recent Comments