ipv4-only网络环境下访问ipv6站点的三种方式

转自: http://blog.csdn.net/lvshaorong/article/details/52209060

苹果2016年5月4日向开发者发出提醒,App Store将于今年6月1日实施全新策略,届时所有提交至苹果App Store的iOS应用申请必须要兼容面向硬件识别和网络路由的最新互联网协议--IPv6-only标准。

首先来评论一下,不得不说ipv6在国外的普及程度要比中国快的多,包括一些第三世界国家。但是中国除了少数的教育网之外,运营商卖给家庭的宽带是不会给你ipv6地址的,有些地区甚至给你个公网的ipv4都是奢侈的事情。究其原因,不外乎一下几点:

1、ipv6硬件设施设置建设投入巨大。如果是在国内网络基础设施水平为0的状态下铺设ipv6的线路不是难题,问题是国内已经部署了太多的ipv4设备,而要淘汰更新这些设备会造成巨大的开支,而且对于运营商来说,这并不在近几年的日程上,所以国内ipv6地址非常难得,一般用户是无法体验ipv6环境的。这给开发者兼容ipv6工作带来了极大的不方便。

2、ipv6的ip浩如烟海,无法有效的做到屏蔽。比如GFW在屏蔽ipv4中发挥了极大的作用,像facebook,google等网站几乎做的滴水不漏。一些服务提供商如果做的太过火,用不了几分钟GFW的工作人员就能全部封死。也就是说,ipv4为GFW的健壮性提供了必要的基础。而ipv6本事网段就非常庞大,再加上IPSec等协议的加密,对GFW提出了极高的挑战。目前一些教育网ipv6用户可以用极高的速度访问youtube,google等,如果普及开来后果不堪设想。

但是作为一名开发人员,不能因为办公室的网络条件不行就等着被app store拒绝,只能硬着头皮没有条件制造条件也要上,下面主要说一下怎样在国内ipv4的环境下创造一个ipv6环境测试app的ipv6支持性。以下所讲的方法一开始我也不知道,是我去g+上问了一下,很多专业人士给出的建议

方案一:4to6的隧道

方案二:自建VPS S-S服务器

方案三:购买支持ipv6的VPN

方案一:6plat.org+openVPN(无需资金投入)

先从官网摘一段介绍:

“IPv6应用实验平台”(以下简称“6Plat”)是由下一代互联网国家工程中心(CFIEC)发起的实验性的IPv6过渡技术测试平台。目的是为了推动IPv6应用落地,充实IPv6资源,加快IPv6过渡步伐。同时也为需要进行IPv6测试的企业和个人提供一个优质和开放的测试环境。

“6Plat”集成了以下IPv6过渡功能:
IPv4到IPv6接入功能;
IPv6到IPv4转换功能;
企业IPv6接入功能。

“6Plat”所有功能都基于现有开源软件搭建而成,IPv6资源由CFIEC提供,因此“6Plat”完全面向公众开放,并且供免费使用。

方案优点:无需资金投入,部署迅速,可以访问国内ipv6站点和一部分国外被封锁的ipv6站点

缺点:

1、带宽有限,无法进行大批量的传输;

2、无法通过wifi或者代理的方式进行分享;

这里我们主要使用的是6plat.org提供的“46模块——IPv4到IPv6”功能,需要配合openVPN这个软件,支持windows,MAC os,Android,IOS。

原理是使用openVPN在你的电脑上建立一个虚拟网卡,然后建立一条ipv4到ipv6的隧道,将电脑上的请求封包后通过ipv4网络传送到ipv6网络中的服务主机,然后封成ipv6包发到目标服务器,然后主机接收ipv6包的服务器响应,将ipv6包封入ipv4包后发回客户端,客户端收到ipv4包后解包,然后处理里面的ipv6包。

本人经过测试,使用在6Plat.org提供的 4to6隧道,其体验和教育网的ipv6相似,可以通过修改host文件或者直接访问ipv6地址的形式访问google和youtube。具体的搭建方式我直接copy一下官网的说明,对于电脑和手机来说都不困难。


Windows平台:

首先需要下载OpenVPN的Windows客户端,然后根据官网给出的配置文本新建6plat.o文件,然后向官网发邮件申请个人的帐号(免费),之后就可以使用OpenVPN的客户端和申请到的用户名密码上ipv6网站了。


官网地址:http://bbs2.6plat.org/d/19


OpenVPN Windows客户端下载地址:http://d.6plat.org/open-install-2.4.0-I601.exe.zip

申请个人账号:申请入口

6plat.o下载(Windows,MAC,Android,IOS等全平台适用):http://download.csdn.net/detail/lvshaorong/9845367



  • 然后使用OpenVPN客户端打开6plat.o文件,然后输入自己申请的用户名和密码即可
  • 用ipconfig /all命令查看网卡参数:

  • 测试连通性:

  • 测试网址ipv6-test.com

  • 现在已经成功接入IPv6网络,您可以畅游IPv6世界了。


Android平台:

使用方法同Windows版类似,同样需要6plat.o文件,并发邮件申请帐号密码,只是OpenVPN客户端需要另行下载

原理同Windows平台一样,首先需要去网上下载一个openVPN的客户端(使用上面zip包里面的apk安装包也可以),我这里用的是非官方的

ipv4-only网络环境下访问ipv6站点的三种方式_第1张图片

安装完毕之后,从压缩包里取出o文件传送到手机sd卡上,然后打开openVPN,点击右上角的加号

点“导入”,选择刚刚放进sd卡的o文件,然后点击右上角的对号

ipv4-only网络环境下访问ipv6站点的三种方式_第2张图片    ipv4-only网络环境下访问ipv6站点的三种方式_第3张图片


然后退到配置文件列表,点击刚刚添加的配置文件,在用户名和密码均输入6plat.org然后点击确定

然后看着日志一行一行的打印出来,openVPN就开启成功,然后登陆ipv6-test.com测试一下就好

注:这里的用户名密码应改为你自己发邮件申请的用户名和密码

ipv4-only网络环境下访问ipv6站点的三种方式_第4张图片      ipv4-only网络环境下访问ipv6站点的三种方式_第5张图片



其他平台(IOS,Mac,Linux):

ios客户端的配置与Android差不多,不过IOS估计下载不到openVPN软件,需要使用美国账号。

客户端和配置文件可以到6plat.org自行下载


配置好了ipv6通道以后,除了通过专业的测试站点,再推荐给大家几个站点来测试ipv6的效果

1、ipv6.baidu.com,此站点ipv4和ipv6均能连通,但是ipv4看到也页面是一个错误提示,而ipv6用户直接跳到了百度首页

ipv4-only网络环境下访问ipv6站点的三种方式_第6张图片

2、ipv6.taobao.com,此站点只支持ipv6的访问,会显示淘宝首页,ipv4用户访问是空白或者404

3、通过ipv6上谷歌:

6plat.org提供的ipv6服务器地址在国内,使用域名如ipv6.google.com是不能上谷歌的,但是直接访问ipv6域名可以,方法如下:

首先使用nslookup命令行命令查询ipv6.google.com的ipv6地址,然后用浏览器访问该ipv6地址,结果如下

ipv4-only网络环境下访问ipv6站点的三种方式_第7张图片

ipv4-only网络环境下访问ipv6站点的三种方式_第8张图片

点击网页中的google图标,你就进入谷歌首页啦!

在谷歌首页搜索youtube,点击第一条搜索结果,你就进Youtube啦,现在你就可以看视频了,只不过由于的原因,速度并不快,但是据说在原生ipv6环境下是非常快的。

方案二:S-S

方案优点:

通过代理访问,速度较快带宽较大,而且可以通过代理的方式进行分享

网上有很多销售SS账号的,就像卖VPN一样,需要选择一个支持IPv6的SS节点

缺点:

1、如果没有现成别人搭好的SS服务器,可以自己租用一个有IPv6和IPv4线路接入VPS服务器,需要一定的资金投入。



g+上的专业人士说,就socks5协议来说,不用管客户端是ipv4还是ipv6协议,只要服务端是ipv6协议就可以让客户端畅通无阻的在ipv6环境下进行通讯。我也买过一个支持IPv6的节点,效果还不错,对于IPv6的站点畅通无阻,而且我本地还是IPv4 only环境,实在找不到自己部署一台ipv6环境的VCS来做代理服务器。不过要注意该服务器ping ipv6.google.com能ping同才算是ipv6服务器哦。

获得相应的SS账号之后配置客户端即可,Android直接下载SS APP,IOS可以使用Wingy这个免费APP,如果是电脑,在Linux可以使用Privoxy进行socks5转HTTP代理,Windows下可以使用Proxifier进行SS全局代理

下面是Android客户端使用SS代理之后测试IPv6的结果

ipv4-only网络环境下访问ipv6站点的三种方式_第9张图片ipv4-only网络环境下访问ipv6站点的三种方式_第10张图片



方案三:购买支持ipv6的VPN

ipv4的VPN和SS比较易得,而且价格也非常实惠,一个月只需一顿工作餐的价格就能享受很高的网速和稳定的连接。但是支持ipv6的真的是太难找了,一些VPN提供商为了让你提高网速,还会主建议你关闭ipv6,所以对于庞大的VPN市场来说,ipv4才是主流客户的需要,也是商家销售的主要商品。商家为了节省贷款,提高速度,会尽量的ipv6屏蔽掉,所以这个也非了我很长一段时间来寻找销售ipv6-support的VPN服务。

注:如果想要平衡价格和方便性,请参考方案二的自己搭建VPS服务器。

下面就给大家推荐一个服务的提供商:https://www.perfect-privacy.com/-with-ipv6-support/

它在官网上明确指明了自己支持ipv6,而且还是客户端为ipv4-only环境下的ipv6服务支持,但是价格确实比较贵,以欧元计算。。。大家有时间慢慢算吧。这个服务比较适合懒得动手但是不差钱的用户,公司要是给报销也是极好的,下面引用它官网的一段原文:

[plain]  view plain  copy
  1. But unfortunately many ISPs still do not provide IPv6 connectivity. With Perfect Privacy VPN you can work around that since we provide a dual stack VPN tunnel: Once you are connected to Perfect Privacy you will always have optional IPv6 even if your provider does not offer it.  
  2.   
  3. This dual stack VPN means you can use an IPv6 address from everywhere: In an internet cafe, mobile in the train or in a hotel – simply establish a Perfect Privacy connection and you will receive an IPv6 address.  
  4.   
  5. This is especially advantageous if you have an ISP that only gives you a virtual IPv4 address (behind NAT) – more and more providers like to do that because they are running out of available IPv4 addresses. Some providers try to work around problems by providing a so called dual stack lite tunnel, where IPv4 packets are being encapsulated into IPv6 packets for the transport to the provider. Such DS lite setups may cause problems if you want to reach your home network from somewhere else. In such cases the fully fledged dual stack VPN from Perfect Privacy can improve your connection stability and speed.  

从这段介绍中能看出它的功能和实现方法,我个人感觉还是挺靠谱的,但是由于资金问题,我也没有亲自测试过,官网也不提供试用,需要的童鞋需要自己做判断。


后记:

查询一个域名所对应的IPv6地址,在windows下可以使用nslookup命令,加-qt参数,如:nslookup -qt=AAAA ipv6.baidu.com 114.114.114.114

在linux下可以使用dig 加AAAA参数,如:dig @208.67.222.222 service.qraved.io AAAA

ipv4-only网络环境下访问ipv6站点的三种方式_第11张图片

就可以仅显示ipv6结果,如果不这样设置的话,一般只能查询到ipv4地址

另外再推荐一个网站http://www.webdnstools.com  通过它可以防止国内DNS污染的情形,检验本地DNS结果是否正确,还能查询IPv6的DNS,查看DNS请求的Trace Route等,可以检查DNS查询的过程和路由上的耗时


你可能感兴趣的:(ipv6)