mac电脑配置iPV6环境测试,只需一个手机

iOS开发中如何模拟IPv6网络测试 App


原文链接:

http://www.jianshu.com/p/49960caf021e

http://www.cocoachina.com/ios/20160613/16626.html

苹果于2016年5月4日告知开发者应用需要在6月1日前支持IPv6-only,也就是说在 6 月 1 日后发布的新版本是需要支持 IPv6-only.
原文地址:https://developer.apple.com/news/?id=05042016a
请看下图:

mac电脑配置iPV6环境测试,只需一个手机_第1张图片
Paste_Image.png

其中蓝色部分的高级API,其实都已经帮我们做好了IPv6的支持,我们使用的大多数第三方网络库也都是基于这些高级API的,所以这里我们不需要做什么改动。 需要注意的是下面的红色部分的底层的socket API需要做出适配支持。


适配支持方案

  • 不要使用硬编码的IPv4的地址,取而代之应该使用域名;
  • 搜一下是否有用到下面的这些API,这些API都是只针对IPv4做处理的,删除掉就可以:
    • inet_addr()
    • inet_aton()
    • inet_lnaof()
    • inet_makeaddr()
    • inet_netof()
    • inet_network()
    • inet_ntoa()
    • inet_ntoa_r()
    • bindresvport()
    • getipv4sourcefilter()
    • setipv4sourcefilter()
  • 如果项目中用到了以下的IPv4的类型,那么也要支持相应的IPv6类型
mac电脑配置iPV6环境测试,只需一个手机_第2张图片
Paste_Image.png
  • 如果强制需要使用IPv4的地址,苹果官方的适配方法给出了解决方式。Use System APIs to Synthesize IPv6 Addresses

适配支持验证方法

首先通过Mac的共享网络共享一个IPv6的无线网,跟已往创建方式不同的是进入共享时需要按住Option键,不然Create NAT64 Network
的选项不会出现
相应步骤如下:

第一步:

mac电脑配置iPV6环境测试,只需一个手机_第3张图片
Paste_Image.png

第二步:

mac电脑配置iPV6环境测试,只需一个手机_第4张图片
Paste_Image.png

第三步: 需要使你的iPhone连接上分享出来的热点即可 注:需要将iPhone的蜂窝网络数据关掉,以保证只有通过WiFi在连接网络.

mac电脑配置iPV6环境测试,只需一个手机_第5张图片
Paste_Image.png

注意: 手机上面的 HTTP代理必须关闭.

通过以上步骤,就可以模拟 IPv6进行测试您的项目是否已经适配了 IPv6了. 猿兄媛妹们,赶紧测试你们的 app 是否支持 IPv6吧! 明天就是端午节, 提前祝福大家节日快乐.


你可能感兴趣的:(Objective-C)