• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ios - 如何为 iOS 应用程序测试设置仅 IPv6 的网络?

[复制链接]
菜鸟教程小白 发表于 2022-12-11 17:46:17 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我第一次读到关于在 AppStore 中发布的所有新应用程序中强制支持纯 IPv6 网络是在昨天,当时我的应用程序被 Apple 拒绝,并说明这是原因。

所以,我一直在尝试从头到尾重现这一点。我已经通过Apple's guide同样的,并设置了一个 NAT64 网络并将我的 iPhone 连接到它(screenshot)。

但是,当我访问 test-ipv6.com 或任何其他网站以检查设备上的 IPv6 连接时,它会显示“未检测到 IPv6 地址”消息.另外,我无法加载 ipv6.google.com,据报道它只能在 IPv6 网络上加载(如果我错了,请纠正我)。

我是否遗漏了什么,或者我可以做些什么来测试我的应用程序的纯 IPv6 网络兼容性?

P.S:当我在这个 NAT64 网络中尝试时,我的应用程序工作正常并且页面加载正常。但是,在 Apple 的拒绝回复中,这些 API 最终失败了。



Best Answer-推荐答案


您在使用 AFNetworking 吗? 如果是,请更新您的类(class)。 在 AFNetworkReachabilityManager 类的 AFNetworking 库中更改以下代码行

将 AF_INET 更改为 AF_INET6;

+ (instancetype)sharedManager {
    static AFNetworkReachabilityManager *_sharedManager = nil;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        struct sockaddr_in address;
        bzero(&address, sizeof(address));
        address.sin_len = sizeof(address);
        address.sin_family = AF_INET6;  //Change AF_INET TO AF_INET6
        _sharedManager = [self managerForAddress:&address];
    });

    return _sharedManager;
}

否则,您使用什么类或库进行网络连接?

编辑:根据您的要求,这里有一个关于如何测试您的应用并检查它是否已准备好 ipv6 的教程:

http://www.brianjcoleman.com/tutorial-how-to-test-your-app-for-ipv6-compatibility/

Alternate link over Waybackmachine

它涵盖了在您的 Mac 中创建一个仅 IPv6 NAT64 的网络,然后从您的 Mac 共享互联网连接到您的其他 wifi(或蓝牙或其他)设备。

然后您可以在您的应用中进行所有测试,确保所有调用都是通过仅 ipv6 的网络进行的。

编辑2:

那些网站将无法看到您的 ipv6 ip 地址。如果您使用该教程,则 ipv6 地址是 private(网络内部)地址。它用于在你的 iPhone 和你的 mac 之间进行通信。 互联网网站看到的是您的 PUBLIC ip,它由您的互联网服务提供商提供给您的调制解调器,通常是 ipv4 网络。

因此得出结论:您的应用正在使用其 ipv6 地址。那些测试网站不会检测到它,因为它们只看到您的路由器/调制解调器的公共(public)地址。

请引用This link阅读有关公共(public) IP 地址与私有(private) IP 地址的更多信息。

关于ios - 如何为 iOS 应用程序测试设置仅 IPv6 的网络?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39914245/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap