Wie erkennt iOS und OS X, ob ein Wi-Fi-Netzwerk ein persönlicher Hotspot ist?


31

Wenn ein persönliches Hotspot-Netzwerk verfügbar ist, wird anstelle des üblichen Schlosssymbols in der Liste der verfügbaren Netzwerke unter iOS und OS X ein Kettenverbindungssymbol angezeigt.

Dropdown-Liste zur Auswahl des Wi-Fi-Netzwerks in OS X

Meine Frage ist, wie unterscheidet OS X diese Netzwerke? Ist in 802.11 festgelegt, wie Hotspots ihre SSIDs unterschiedlich übertragen?


5
Ich habe dir ein + gegeben, nur weil du mich mit dem Exploded Rice zum Lachen gebracht hast :)
Ruskes

2
Klingt nach einer Gelegenheit, einen Wireshark / Promiscuous Sniffer auszubrechen.
Cortices

Ich habe meine Antwort gelöscht, weil anscheinend ein persönlicher iPhone-Hotspot kein Ad-hoc-Netzwerk ist . Ich glaube, es gibt andere Daten, die das Netzwerk als persönlichen Hotspot identifizieren, aber ich habe noch keine genauen Angaben für eine Antwort. (Ich bin ziemlich sicher, dass es nicht auf MAC-Adresse basiert, wie @emotality vorgeschlagen)
Josh

Ich wette, es gibt eine Apple-spezifische IEEE802.11 Beacon Frame-Erweiterung, die Tethering ankündigt, wie es andere tun (z. B. Ciscos CCX). Leider habe ich kein Gerät zum Testen.
Max Ried

Antworten:


7

Ich denke, diese Frage sollte in Reverse Engineering Stack Exchange- Website veröffentlicht werden. Sie fragen nach den Implementierungsdetails für eine Black Box ...

Tatsächlich habe ich ein bisschen an /System/Library/CoreServices/Menu Extras/AirPort.menuund herumgebuddelt/System/Library/Frameworks/CoreWLAN.framework/

Es gibt eine private Methode mit dem CWNetworkNamen isPersonalHotspot:

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

Es scheint nur einige Bezeichner zu überprüfen. Ich denke SFRemoteHotspotDeviceund habe WiFiXPCEventProtocolmöglicherweise niedrigere Details, aber ich habe nicht nachgesehen.

Übrigens gibt es auch eine Eigenschaft, um festzustellen, ob es sich um ein CarPlay-Netzwerk handelt

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

Apple steuert die Hardware, die Treiber und das Betriebssystem. Vermutlich können sie beim Senden des WLAN-Signals problemlos zusätzliche Metadaten hinzufügen, damit Ihr Mac weiß, ob das Kettensymbol hinzugefügt wird oder nicht.

Wenn jemand genau herausfindet, wie Apple den Trick gemacht hat, lass es mich wissen. :)


0

Das Kettensymbol zeigt an, dass die Internetverbindung über ein anderes Gerät hergestellt wird. Es ist nicht speziell für persönliche Hotspots.


Abgesehen von der Tatsache, dass Wi-Fi-Verbindungen fast immer mit einem anderen Netzwerkgerät verbunden sind, erklärt dies nicht wirklich, warum auf Android-Geräten erstellte Hotspots nicht mit einem Kettensymbol angezeigt werden.
user3052786

Hotspots, die mit Android-Geräten erstellt wurden, zeigen auf macOS Sierra das Kettensymbol an.
Suraj

-1

Apple spricht mit Apple, sie kennen ihre eigenen Produkte und wissen, wann es sich um ein Apple-Gerät handelt oder nicht. Apple hat möglicherweise einen eigenen MAC-Adressbereich, oder es werden einfach alle Informationen zu diesem Gerät angezeigt, z.

Wenn Sie zu "Über diesen Mac", "Systembericht", "Netzwerk", "Wifi" gehen. Sie sehen die folgenden Details zu diesem Netzwerk / Gerät.

Wifi Details

Prüfen Sie an den Schnittstellen: Kartentyp, MAC-Adresse oder Gebietsschema. Dies können möglicherweise alle "Apple Identifiers" sein. Beim Erstellen eines Hotspots mit Ihrem iPhone hat Apple beschlossen, die Informationen mit Ihrem Mac zu teilen, um zu zeigen, dass es sich um ein Apple-Gerät handelt.


Ich muss sagen, ich habe wirklich bezweifelt, dass dies eine Möglichkeit sein könnte, da keine dieser Informationen außer MAC in 802.11 geteilt wird, aber nach dem Einlesen beginne ich zu denken, dass Ihre Theorie einen gewissen Wert haben könnte. Anscheinend die erste 3 Bytes einer MAC-Adresse geben den Hersteller des Geräts an, und Apple verwendet auf allen seinen iDevices einen separaten Herstellerteil der MAC-Adresse.
user3052786

Wenn ich die BSSID eines Access Points irgendwie fälschen könnte, sodass sie als iDevice angezeigt wird, könnte ich diese Theorie möglicherweise bestätigen oder widerlegen ... Weiß jemand, wie dies erreicht werden könnte? (Oder ob es überhaupt erreicht werden kann?)
user3052786

Lol nein, ich halte es nicht für eine gute Idee, hier Hacking-Fragen zu stellen: P, aber Sie können die Antwort als richtig markieren, wenn sie Ihre Frage beantwortet hat. : D
Emotality

Ich denke das ist nicht der Fall. Sogar Hotspots, die mit Android-Geräten erstellt wurden, weisen das Symbol "Kette" auf.
Suraj

Wo hast du das gesehen, Suraj Thapar?
Coroos

-2

Hotpots unter iOS werden ebenfalls als 172.20.10.x identifiziert.


1
Sie erhalten keinen DHCP-Datenverkehr, es sei denn, Sie haben eine Verbindung zum AP hergestellt.
Max Ried
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.