引言
之前我一直是在 vps 上自搭梯子来科学上网(Do+ssr),虽说网速挺快,也能触达大部分网站。但还有一类网站无法访问,那就是 IPv6 网站。我曾经在 Ubuntu 下折腾了很久,都没有成功用上我的 ssr。最后看网上的教程,接入 IPv6 网络(开启 Teredo 隧道),修改了 hosts 文件,再配合XX-Net一起食用,又恢复了原来的 freedom。关于 Ubuntu 下如何科学上网,抽个时间单独写一篇吧。逃:)
相比 Ubuntu,win 就不那么友好了。我在校园网、寝室电信、家里的电信网络环境里,都能在 Ubuntu 下开启 IPv6 服务。但是 win 复杂的配置让我摸不着头脑(好吧,其实是我不懂),就一直没能在 win 上体验过 IPv6 的便捷。网上已经有人试过通过配置 vps 和服务器端的 ss(r) 来使用 IPv6 服务,方法有些麻烦,我就懒得折腾了。正好前几天权游第八季开播,这么火的剧我还没看过一集,而且质量也很好。强哥就给我推荐了北邮人,这是个 IPv6 的 BT 网站,有很多高质量的影视资源。于是,我就开始了 win 下 IPv6 的探索之旅······
啥是 IPv6?
别说 IPv6 ,很多人可能连 IPv4 都不太清楚。我之前也只是听过这两个名词,直到学了计算机网络,我才逐渐揭开了 IPv6 神秘的面纱。
IPv6 是下一代因特网协议。大部分因特网使用 IPv4,而且此协议在 20 多年来被证明是可靠的、富于弹性的。然而,IPv4 也存在局限性并且随着因特网的扩展会导致许多问题。IPv6 是 IPv4 的更新版本并且它将逐渐替代 IPv4 而作为网际标准。
IPv6 地址的大小和格式使得寻址功能大为增强。
IPv6 地址大小为 128 位。首选 IPv6 地址表示法为 x:x:x:x:x:x:x:x,其中每个 x 是地址的 8 个 16 位部分的十六进制值。IPv6 地址范围从 0000:0000:0000:0000:0000:0000:0000:0000 至 ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff。
如何开启IPv6
ISP 商直接提供 IPv6 支持
部分地区的运营商已开通 IPv6原生支持。比如电信运营商已经在骨干网实现了IPv6支持。
高校教育网一般已开通原生 IPv6。
通过各种隧道获取 IPv6 支持
公网ip用户:6to4 隧道
内网ip用户:teredo 隧道
未开通原生 IPv6 的教育网用户:教育网 ISATAP 隧道
教育网用户可以通过双栈及 ISATAP 隧道的方式进行 IPv6 的访问。
双栈方式
所谓双栈( Dual IP Stack ),是指用户计算机及全校网络设备上同时运行 IPv4 和 IPv6 协议栈,同时支持两种协议的数据传输。在双栈开通区域,无需额外配置( IPv6 地址 及DNS 均自动获取),只要正常认证通过,即可直接使用 IPv6 网。对于不支持双栈的区域,用户可以通过 ISATAP 隧道的方式进行IPv6的访问。
ISATAP隧道方式
ISATAP全名是Intra-Site Automatic Tunnel Addressing Protocol,是一种IPv6隧道技术,使用户可以在IPv4网络上访问IPv6资源。
具体实现
川大校园网已经开通了 IPv6 网络,用户可以通过双栈及 ISATAP 隧道的方式进行 IPv6 的访问。目前,望江校区、华西校区均开通了双栈方式,江安校区只有部分区域支持。
我是使用了 ISATAP 隧道方式接入了 IPv6 网络。
启动
Win+X 打开 CMD 或 Windows PowerShell(管理员), 在命令行下操作。
若系统自动启用了其他隧道会影响正常访问,可选择禁用其他IPv6隧道:
1 | netsh interface teredo set state disable (禁用 teredo 隧道) |
设定 ISATAP 路由器和启用 ISATAP 隧道:
1 | netsh interface isatap set state default |
测试 IPv6 连接
1
2ping -6 ipv6.test-ipv6.com
ping -6 [2001:470:1:18::125]
连接成功:
不需要每个包都收到了,只要有包成功发送接收,就表明连通了。
重置 IPv6 配置(可选)
1
netsh interface ipv6 reset
检查
通过命令 ipconfig /all 查看当前网络信息:
若有2001:250:2003:为前缀的IPv6地址,说明已正常连接了我校IPv6网,
若是其他前缀的IPv6地址,如FE80:或2001:0::等开头的,说明IPv6未连通或是连接的非我校IPv6网。
如果发现掉线了:
执行这3条,全禁掉
1 | netsh interface teredo set state disabled |
查看teredo状态
1 | netsh interface ipv6 show teredo stat |
teredo状态如下:
最后再重复之前的设置过程就好了。
以下操作为非必须。如果按照上述提示操作以后仍无法正常访问 IPv6 站点,可以尝试:
- 右键点击桌面“计算机”图标,选择“管理”,展开“服务和应用程序”,选择“服务”,确认“IP Helper”服务已开启;
- 确认 Teredo 隧道已经关闭(管理员模式在命令行运行 netsh int teredo set state disable);
- 确认原生 IPv6 已经关闭( Internet 协议版本 6 (TCP/IPv6)前的对勾取消,位置在控制面板→网络和 Internet→网络和共享中心→更改适配器设置→双击本地连接→属性);
尝试重启系统。
IPv6常用资源
一、IPTV
清华大学:http://iptv.tsinghua.edu.cn/
北京邮电大学 http://tv.byr.cn/show
中国科技大学:http://tv6.ustc.edu.cn/
东北大学:http://video.neu6.edu.cn/
沈阳航空航天:http://dh.sau6.com/
安徽农业大学:http://itv.ahau.edu.cn/
二、BT
三、其他
Google : https://ipv6.google.com/
ipv6测试 :http://result.ds.test-ipv6.com/
ipv6论坛:http://www.ipv6forum.com/