iOS和OS X如何检测Wi-Fi网络何时是个人热点?


31

当有可用的“个人热点”网络时,它将在iOS和OS X的可用网络列表中显示一个链链接图标,而不是通常的锁定图标。

OS X中的Wi-Fi网络选择下拉列表

我的问题是,OS X如何区分这些网络?802.11是否规定了热点如何以不同方式广播其SSID?


5
我给你+是因为你让我与

2
听起来像是一个突破有线/混杂嗅探器的机会。
皮质

我删除了答案,因为显然iPhone个人热点不是临时网络。我相信还有其他数据将网络确定为个人热点,但我还没有答案的具体信息。(我可以肯定地说,它不是基于@emotality建议的MAC地址)
Josh

打赌,有一个Apple特定的IEEE802.11 Beacon Frame扩展,与其他设备一样(例如Ciscos CCX)宣布了绑定。不幸的是我没有设备可以测试。
Max Ried 2015年

Answers:


7

我认为这个问题应该发布在反向工程堆栈交换站点上。您正在询问有关黑匣子的实现细节...

事实上,我身边没有一个小挖/System/Library/CoreServices/Menu Extras/AirPort.menu/System/Library/Frameworks/CoreWLAN.framework/

有一种CWNetwork称为的私有方法isPersonalHotspot

char -[CWNetwork(Private) isPersonalHotspot](void * self, void * _cmd) {
    eax = [*(self + 0x4) objectForKey:@"IOS_IE"];
    eax = LOBYTE(eax != 0x0 ? 0x1 : 0x0) & 0xff;
    return eax;
}

似乎只是检查一些标识符。我认为SFRemoteHotspotDevice并且WiFiXPCEventProtocol可能还有更多低级细节,但我没有检查。

顺便说一句,还有一个属性来标识是否是CarPlay网络

@interface CWNetwork : NSObject <NSCopying, NSSecureCoding>
... //redacted
@property(readonly) BOOL isPersonalHotspot;
@property(readonly) BOOL isCarPlayNetwork;
... //redacted

Apple控制着硬件,驱动程序和操作系统,我想它们可以在广播WiFi信号时轻松添加额外的元数据,以便Mac知道是否添加链图标。

如果有人确切知道苹果是如何做到的,请告诉我。:)


0

链形图标显示互联网连接正在通过另一台设备桥接。它不是专门针对个人热点的。


除了Wi-Fi连接几乎总是桥接到另一台网络设备这一事实之外,这并不能真正解释为什么在Android设备上创建的热点不会显示带有链接图标的原因。
user3052786

在macOS Sierra上,使用Android设备创建的热点显示链图标。
Suraj

-1

苹果公司与苹果公司进行对话,他们知道自己的产品,并且知道何时不是苹果设备。苹果可能有自己的MAC地址范围,或者他们只是看到有关此设备的所有信息,即:

如果转到“关于本机”,请依次单击“系统报告”,“网络”,“ Wifi”。您将看到有关此网络/设备的以下详细信息。

无线上网详细信息

检查以下接口:卡类型,MAC地址或区域设置。这些可能全部是“ Apple标识符”。当使用iPhone进行热点开发时,Apple决定与Mac共享信息以表明它是Apple设备。


我要说的是,我真的很怀疑一开始是否有这种可能,因为除了MAC之外,这些信息都没有在802.11中共享,但是在阅读之后,我开始认为您的理论可能有一些优点。 MAC地址的3个八位字节表示设备的制造商,Apple在其所有iDevice上使用MAC地址的单独制造商部分。
user3052786

现在,如果我能以某种方式欺骗接入点的BSSID,使其以iDevice的形式出现,那么我可能会证实或反驳这一理论……任何人都知道如何实现这一目标?(或者是否可以完全实现?)
user3052786 2015年

大声笑不,我认为在这里提出黑客问题不是一个好主意,但是如果您回答了问题,则可以将答案标记为正确。:D
情绪化

我认为并非如此。甚至使用Android设备创建的热点也会显示“链”图标。
Suraj

Suraj Thapar,您在哪里看到这种情况?
Coroos

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.