最下面有图片版pdf下载。
本文教程参考http://bbs.et8.net/bbs/showthread.php?t=1000636 进行拟写与说明,因为该论坛不开放注册,所以图片信息是本人通过实践得出来的结论。
这个教程,能够让你学会,如果在DD-wrt固件的路由器上开启ipv6隧道,并实现子网内所有用户可以访问ipv6网络。
注意,本教程所使用必须支持jffs功能,如果你刷的DD-wrt固件没有多余空间提供jffs支持,以下工作做了也是白做。
一、准备工作:
1、给路由器刷写支持ipv6协议的DD-wrt固件(如何刷写,不再本教程范围)
察看固件是否支持ipv6,DD-wrt 管理页面中,管理(Administation)—>管理(Management)页签是否有IPv6支持(IPv6 Support)如下图
2、打开路由wan网ping 设置
DD=wrt管理页面中,安全(Security)—>防火墙(Firewall)页签中,将“阻止来自WAN口的匿名请求(ping)(Block Anonymous WAN Requests(ping))的勾选去掉,如图
3、开启路由器jffs支持
DD-wrt 管理页面中,管理(Administation)—>管理(Management)页签中,找到JFFS2支持(JFFS2 Support)
将JFFS2选为Enable,Clean JFFS2选为Enable,点击应用(Apply),应用后再将Clean JFFS2选为Disable,点击保存(Save),然后重启路由器(Reboot Route)。
4、注册隧道帐号
这里,我们使用的是he.net网站提供的ipv6隧道,申请这个隧道,不是只给你一个ipv6地址,而是分配给你一段ipv6地址,这么多的ipv6地址,给你家里每个产品分配一个都用不完。
首先我们打开隧道申请地址:http://tunnelbroker.net ,如何申请的,我就不一一描述了,申请成功后,登陆。点击页面的 Create Regular Tunnel 链接,申请ipv6隧道。
申请很简单,在IPv4 endpoint中输入你当前链接外网使用的ipv4地址,系统能够自动检测出你所是使用的当前外网地址,显示在You are viewing from IP 一栏中,直接抄上去即可。在下面选择一个你需要使用的IPv6隧道服务器,默认会自动算出最快的服务器给你作为你的选择,你不改的话,直接提交即可。
如果提交失败,很有可能是你准备工作第二步没有开启外网ping功能,隧道服务开启前需要检测该ip是否可用。
5、记录相关信息。
点击 Click For Main Page 链接,返回主页面,看到如下图信息。
点击Tunnel列表的链接,可以查看你创建的隧道信息。如下下图。
二、配置路由器。
1、建立启动文件运行文件
建立一个文件,命名为 “radvd.sh”。想里面填写一下内容(请不要使用windows记事本保存,尽量使用一下第三方强大的编辑器,保存为utf-8编码,linux结尾格式文档。我刚做这文件的时候在windows下保存放进去无法运行。):
sleep 10
insmod ipv6
USERID="(记录1)"
PASSWORD="(账户密码您登陆Tunnelbroker网站的密码)"
TUNNELID="(记录2)"
MD5PASSWORD=`echo -n $PASSWORD | md5sum | sed -e 's/ -//g'`
while [ true ]
do
IPV4=$(ip -4 addr show dev ppp0 | awk '/inet / {print $2}' | cut -d/ -f1)
if [ "$IPV4" != "$OLDIP" ]
then
/usr/bin/wget 'http://ipv4.tunnelbroker.net/ipv4_end.php?ipv4b='$IPV4'&pass='$MD5PASSWORD'&user_id='$USERID'&tunnel_id='$TUNNELID -O -echo "`date` ip address changed" >> /tmp/startup.debug
ip tunnel del he-ipv6
ip tunnel add he-ipv6 mode sit remote (记录3) local $IPV4 ttl 255
ip link set he-ipv6 up
ip addr add (记录4) dev he-ipv6
ip -6 addr add (记录8的/64前面加1) dev br0 # 示例:ip -6 addr add 2001:470:1f05:ddb::1/64 dev br0ip route add ::/0 dev he-ipv6
ip route add (记录8) dev br0
fi
if [ `ps | grep radvd | grep -vc grep` -ne 1 ]
then
将文件内容中,带括号中的内容,替换为你所获得的信息,记录标志均在上面的图片中得到指示。包括括号。注意保留空格。然后将脚本保存,上传与路由器的/jffs/radvd文件夹中,并赋予执行权限。(如何上传?这个不再本文范围内,学习linux的会知道怎么操作。实在不会,参考autoddvpn的jffs操作,你可以上传到一个空间,然后wget下来。autoddvpn地址:http://code.google.com/p/autoddvpn/)
2、设定路由radvd
DD-wrt 管理页面中,管理(Administation)—>管理(Management)页签中,IPv6支持(IPv6 Support)选项内,如下图所示:
IPv6设置为Enable ,Radvd enabled设置为Enable,在Radvd config中输入如下代码:
interface br0 {
AdvSendAdvert on;
prefix (记录8) {
AdvOnLink on;
AdvAutonomous on;
};
RDNSS (记录6) {
AdvRDNSSOpen on;
};
};
用所记录信息,替换代码中相应的位置,包括括号。注意保留空格。
3、设定开机启动。
DD-wrt 管理页面中,管理(Administation)—>命令中(Commands)页签中,输入一下命令:
/jffs/radvd/radvd.sh
命令到以上为止,点击保存为启动命令(Save Startup)。重启路由器,当路由器启动后,就会添加隧道信息。并为并地后端计算机自动分配ipv6地址。
当你的路由器完全连上网络之后,你可以察看你的计算机是否已经获取到ipv6地址。Windows 下无法获取Radvd分配的DNS信息,则需要手动设置DNS为记录6,本人ubuntu10.10能够自动获取到ipv6地址以及DNS服务器信息。
这是后你尝试访问ipv6.google.com,如果能够访问成功,实现了ipv6地址的访问。
三、关于翻墙。
1、windows下的路由解析好像是先解析ipv4的dns,再解析ipv6的dns,常常导致系统会访问ipv4网络,若域名只绑定了ipv6地址,才通过ipv6网络访问。
2、linux下是先解析ipv6,再解析ipv4,所以访问顺序恰好相反,这就是为什么我在ubuntu10.10能够轻松登陆facebook与twitter而windows不能。不过有时候网络也是会抽风的。
3、windows下需要刷先访问ipv6网络,必须设定hosts。有人维护的hosts列表在https://docs.google.com/View?id=dfkdmxnt_61d9ck9ffq 这里。
4、本文只是说了个大概。由于内容太多,需要会的知识太多,只能你们自己个人完成了。
注意:
本文有可能将来被大量用于路由翻墙,为了尽可能不让GFW发现,请大家转载文章的时候,使用加密文章形式,在文章标题加上密码即可,让想学的人能够进来,而GFW无法检测到。
twitter的ipv6地址无法ping通,所以只能用dns来解析。所以各位,我也无法告诉你twitter的ipv6地址是所少。
带图片版教程下载地址:
DD-wrt+IPv6网络配置 over wall.pdf (487.28K)
希望大家看了之后,不要随意公开转载。保持文章保密传输。避免被G*F*W,发现了。
貌似没有看到图片。
pdf文件下载才有。不敢这么张扬路由 over wall 方法。
好淫!!!
ubuntu下面,翻墙超级简单!!win7下面麻烦死了…一直用vpn,看看新闻…
主要是还有手机等其他设备,把这个架在路由上,还是不错滴。vpn被墙,麻烦啊。
嗯,我看看去,不过现在用别人的机器,不是linux,真是不爽。
飘过,暂时还用不上
呵呵,哥今后将致力于路由自动翻墙。哈哈。
/usr/bin/wget
这一句和ccf的对比了一下,后面的链接是不是有问题?
明白了,原来是可恶的自动换行,呵呵,你可以参照CCF论坛的,要看图片的话,可以下载pdf里面的,CCF的没办法看图片,晚点修正。
Windows 下无法获取Radvd分配的DNS信息,则需要手动设置DNS为记录,
其他都完成了就是这个不明白,也不知道DNS是多少,访问google出现无法解析DNS提示
就是在windows下手动配置ipv6的dns,也就是上面说的记录6,你也可以上网搜一下ipv6的dns设置到网卡里面ipv6协议的dns里面去