ios - 无法在 swift ios 或 mac os 中获取公共(public) IP

标签 ios swift

如何在不使用第三方 URL 的情况下使用 swift 获取移动设备或 Mac 的公共(public) IP 地址。

任何人都可以帮忙吗,我也尝试过苹果 portmapper.h 类,但它返回 nil

let data = PortMapper.findPublicAddress()
print(data) 

显示nil

最佳答案

在大多数网络中,用户使用的设备很少有公共(public) IP...将有路由器或防火墙等,并且可能有公共(public) IP,或者可能通过另一个具有公共(public) IP 的设备进行路由。

使用第三方的原因是因为第三方只能看到设备网络用于访问它们的公共(public) IP,因此您知道这是正确的 IP。

关于ios - 无法在 swift ios 或 mac os 中获取公共(public) IP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48238018/

相关文章:

ios - 我的类(class)的 Xcode 6.4 自动完成功能不起作用?

objective-c - 在 swift assert(0) 中无法将 Int 类型的值转换为预期的参数类型 Bool

ios - 在 Swift 中,可以使用 NSDateComponents 来帮助 NSDate 保持纳秒精度吗?

ios - 获取 UINavigationController 向后滑动的进度

ios - 当 UITextfield 更改时禁用键盘

ios - Swift 3 中的二维数组

ios - 如何在 iOS 10 beta 中测试 ReplayKit 广播?

ios - 使用Deezer SDK for iPhone播放歌曲

ios - Controller 之间通过自定义委托(delegate)进行通信

objective-c - PhoneGap 2.2.0 自定义构建配置