开发中使用IPv6的好处

1、IPv6:避免了网络地址转换(NAT)

2、通过网络通过使用简化的头提供了更快的路由

3、防止网络分段

4、避免广播邻居地址解析

不建议使用底层的网络API

下图展示的蓝色部分的这些API都是不存在兼容性问题的,而我们平时自己用的包括那些第三方的网络库大部分都是用的这些API。

大部分情况下,我们用高级的API完全能够实现我们的需求,而且高级API封装的很便于使用,很多底层的像适配IPv6的工作都已经帮我们做好了。而用底层API会有大量的工作要我们自己来做,更容易产生bug。PS:系统自带的网络类已经支持了IPv6我们只需放心使用就好,例如NSURLSession等。

不要直接使用IP地址

比如下面这个API,nodename这个参数不要传IP地址,而应该用域名

这个方法在著名的第三方Reachability中是用到的,我们常用的第三方网络库AFNetworking就用了这个。所以用到的同学得好好查一下了。

检查不兼容IPv6的代码

搜一下工程里有没有下面的这些API,这些都是只针对IPv4做处理的,有的话就删了。

inet_addr()

inet_aton()

inet_lnaof()

inet_makeaddr()

inet_netof()

inet_network()

inet_ntoa()

inet_ntoa_r()

bindresvport()

getipv4sourcefilter()

setipv4sourcefilter()

如果用到了下面左边的这些IPv4的类型,那么它们相应的IPv6类型也需要做处理

本地搭建IPv6测试环境

最后我们来搭一个IPv6的测试环境吧,你所需要的就是一台用非Wi-Fi的方式上网的Mac电脑。

我们的要做的其实就是用Mac做一个热点,然后用iPhone连接这个Wi-Fi,听起来很容易。区别是这次我们产生的是一个本地的IPv6 DNS64/NAT64网络,这项功能是OS X 10.11新加的。和我们以前开启热点方式不一样的地方在于,我们在“系统偏好设置”界面选中“分享”的同时,要按住“Option”键。

1.先确保你的Macbook非Wi-Fi方式连接到网络

2.在系统偏好设置中,按住键盘上的option键,并点击“共享”,“共享”功能是在10.11版本新添加的。

PS:一定要按住option键,如果你在下面的步骤中没有看到“创建NAT64网络“勾选框,就回到这一步,按住option键

共享

3.在左侧的共享服务列表中选择“互联网共享”,并勾选“创建NAT64网络”

4.选择已经连接到的网络,例如:以太网;并勾选Wi-Fi

NAT64网络

5.点击“Wi-Fi 选项”按钮,设置Wi-Fi的名字和安全设置。

Wi-Fi

6.勾选左侧列表中的“互联网共享”,这样就启用了互联网共享。

互联网共享

7.完成上面的设置后,在菜单栏上可以看到原来Wi-Fi图标上有个向上的箭头,这表示共享连接已经打开。现在你就可以使用IPv6的网络

现在我们用iPhone连接上这个刚创建好的热点就可以测试了,注意此时要把iPhone设成飞行模式,以保证只用Wi-Fi上网。

ios服务器需要开启ipv6的支持,针对iOS审核要求为应用兼容IPv6相关推荐

  1. 针对苹果最新审核要求 为应用兼容IPv6

    在WWDC2 015上苹果宣布iOS 9将支持纯IPv6的网络服务.2016年初开始所有提交到App Store的应用必须支持IPv6.而今年5月初,苹果宣布6月1日后所有应用必须支持IPv6-onl ...

  2. 针对苹果最新审核要求为应用兼容IPv6

    在WWDC2015上苹果宣布iOS9将支持纯IPv6的网络服务.2016年初开始所有提交到App Store的应用必须支持IPv6.为确保现有的应用是兼容的,我们需要注意下面几点. 不建议使用底层的网 ...

  3. ios服务器需要开启ipv6的支持,关于ios苹果APP审核 支持IPv6的问题解答

    今天,有位朋友询问关于苹果APP上架审核的问题,并问国内是否有服务器支持IPv6,原因是他们开发了一个苹果APP,在上架审核时被退回.退回原因见下图: 大概原因是说苹果目前审核APP需要支持IPv6才 ...

  4. 光明勇士iOS服务器维护,《光明勇士》安卓iOS全区服停机维护公告

    各位萌主大人: 圣诞佳节气氛渐浓,为了给大家带来更好的游戏体验,我们将于12月26日5:00-7:00对iOS.安卓全区服(除iOS[先行体验服],安卓[蜜汁烤鱼])进行停机维护.请各位萌主大人提前下 ...

  5. 手把手教你如何给 Docker 开启 IPv6 网络支持

    关注「开源Linux」,选择"设为星标" 回复「学习」,有我为您特别筛选的学习资料~ Docker默认是不开启IPv6支持的,但是我们某些业务往往又需要IPv6的支持,特别是IPv ...

  6. 执行ios命令_MEDUZA:一款针对iOS应用程序的通用SSL解绑工具

    MEDUZA MEDUZA是一款针对iOS应用程序的通用SSL解绑工具,该工具基于Frida开发,可以当作SSLKillSwitch工具的替代品.本来我是想自己开发自己用的,而且原本并不打算开源出来. ...

  7. 华为开启位置服务器,android 开启位置服务器

    android 开启位置服务器 内容精选 换一换 请先在服务器所在区域购买充足的配额,具体操作请参见购买主机安全配额.购买配额后,请切换到配额所在区域对服务器开启防护.若您购买的是基础版/企业版/旗舰 ...

  8. 服务器cpu对游戏的支持,多核服务器性能实测篇―浪潮:服务器cpu玩游戏怎么样...

    至强5500多 核处理器尽管问世只有半年多时间,但目前基于它的服务器产品在市场上已经很常见了,可以说在主流的1-2路服务器新品中都可以看到它的身影.而此间的旗舰机型基本上都定位为2U高度的双路机架式服 ...

  9. mc服务器权限文件,mc服务器如何开启权限

    mc服务器如何开启权限 内容精选 换一换 CCE对其他云服务有诸多依赖关系,因此在您开启IAM系统策略授权后,在CCE Console控制台中的各项功能需要配置相应的服务权限后才能正常查看或使用,详细 ...

最新文章

  1. sdut 2137 数据结构实验之求二叉树后序遍历和层次遍历
  2. 2018年第九届蓝桥杯 - 省赛 - C/C++大学A组 - A. 分数
  3. 【Matlab】矩阵三角分解法求解方程组
  4. oracle行转列 case,Oracle 行转列总结 Case When,Decode,PIVOT 三种方式
  5. LeetCode 1847. 最近的房间(排序离线计算 + 二分查找)
  6. Photoshop 通道
  7. java统计计数_java – 使用LongAdder计算统计计数器的最大值?
  8. active mq topic消费后删除_【SpringBoot MQ 系列】RabbitListener 消费基本使用姿势介绍
  9. html5小游戏抓包,wireshark抓包分析
  10. 8.声卡驱动06-自己实现alsa驱动-虚拟声卡-widget
  11. 工业线阵相机与面阵相机特点分析
  12. win7 计算机 其他 删除,win7双系统怎么删除一个?windows7双系统删除一个方法汇总...
  13. 大数据要学javaweb吗_自学java大数据可以找到工作吗?该怎么学?
  14. 【FaceRevelio】一种用于智能手机的带有前置摄像头的 人脸活跃度检测系统
  15. 使用python框架Django搭建web应用
  16. 报表相关的同比和环比
  17. Pytorch TextCNN实现中文文本分类(附完整训练代码)
  18. 蚁群算法求解TSP问题
  19. knn算法,利用numpy简单实现
  20. MATLAB连接USRP实现数据采集

热门文章

  1. 车险赔付率分析报告_车险有变!价格…
  2. C++ 指向子类的指针转型为指向父类类型指针之后指向的对象地址不变
  3. MATLAB的GUI中给坐标轴四周加上边框
  4. Android之Tab类总结
  5. Linux系统编程——I/O多路复用select、poll、epoll
  6. 微服务架构设计模式~交互方式
  7. 现代程序设计 作业 2
  8. JAVA中vector是否存在数据_如何找出std :: vector中是否存在项目?
  9. flutter天气_牛笔!自己用Flutter撸一个天气APP
  10. mysql 取年月日 语句_MySQL学习从这里出发!