如何在 iOS 设备上获取关联接入点的 IP 地址
Posted
技术标签:
【中文标题】如何在 iOS 设备上获取关联接入点的 IP 地址【英文标题】:How to get the IP address of the associated access point on an iOS device 【发布时间】:2014-03-23 14:54:08 【问题描述】:用例:
我们有一个 ios 应用程序,您可以在其中运行 iOS 设备与其关联的无线接入点之间的网络测试以测试吞吐量。应用程序可以获取iOS设备的IP地址,但用户必须输入接入点的IP。
问题:
任务是获取关联接入点的 IP 地址,并为用户预先填写,从而避免用户干预。
我的方法:
找出接入点的 Mac 地址/BSSID。 我通过使用 Captive Network API 来做到这一点。
发出 ARP 请求以找出与接入点关联的 IP。 到目前为止,我还无法做到这一点。谷歌和 SO 搜索让我在这里陷入了死胡同。以下是一些类似的问题: How do I query the ARP table on iPhone? 和 ARP Requests on iPhone
问题:
这样做的正确方法是什么?简而言之,获取 iOS 设备所连接的接入点 IP 地址的最佳方法是什么。
【问题讨论】:
***.com/a/9173849/1405008 没有“ARP 请求查找 IP”之类的东西。 ARP 用于查找 MAC 地址。寻找 RARP。 【参考方案1】:WiFi 接入点不一定是支持 IP 的设备(尽管其中许多是,但用于配置,而不是通信,目的)。
即使您确实获得了实际接入点的 IP 地址,您将如何测试吞吐量?您可以发送 ICMP Echo 请求,但这只会为您提供瞬时往返时间,而不是吞吐量,并且出于安全原因,许多 IP 设备都配置为不响应 ICMP ECHO 请求。
【讨论】:
以上是关于如何在 iOS 设备上获取关联接入点的 IP 地址的主要内容,如果未能解决你的问题,请参考以下文章