iPhone in Netzwerk erkennen (z.B. mit Debian)

schumischumi

Lt. Commander
Registriert
Dez. 2011
Beiträge
1.086
Hi,

ich bastel gerade ein wenig an einer Heimautomatisierung. Basis dafür ist ein Raspberry mit Kopplung an Funksteckdosen und Infrarotsender.
Nun würde ich gerne erkennen wenn mein Handy (iPhone 5S) im WLAN ist bzw. dieses verlässt und dementsprechend Aktionen ausführen.
Das Problem ist, dass das iPhone zwischendurch immer das WLAN abschaltet (vermutlich wegen Akku). D.h. iPhone registriet sich im WLAN und ist per PING usw. erreichbar. 2 min später ist das Display schwarz und ping geht auch nicht mehr.
Sprich über Layer 3 finde ich das Ding nicht mehr.
Aktuell habe ich nur die Logs des DHCP Servers/Router um nachzuvollziehen, ob sich das iPhone in den letzten X Minuten ne IP gezogen hat. Wobei das Log vom Router (OpenWRT) via Raspberry auszulesen auch nicht schön ist.
Ob das iPhone dann das Netz wieder verlassen hat sehe ich so auch nicht.

Habt ihr noch eine Idee um das Ding im Netzwerk zu orten?
 
Das WLAN abhorchen und die Statusmeldungen protokollieren. Das Verlassen geht aber nur mit "hat sich x Sekunden lang nicht gemeldet". Das kann eben auch "Akku ist leer" sein.
Mal als Anfang: Kismet um wirklich zu sehen was im WLAN abgeht. Alles was da im Äther rumschwirrt nicht nur Layer 3.

Du müsstest dir da aber selber was basteln, ich glaube nicht daß es da was gibt. Klartext: selber programmieren und ich meine programmieren, nicht einfach was zusammenklicken.
 
@Benzer: Klar geht auch, aber ist halt spielerei/hobby.
@HominiLupus: Kismet hört sich gut an. Zwar unschön, dass ich dann WLAN direkt am Raspberry benötige, aber seis drum. Die LAN Lösung gerade (Powerline) is auch nicht der hammer.
Selberbasteln und scripten (denke programmieren sollte nicht notwendig sein) ist kein Problem sondern eher gewünscht. Soll mich ja unterhalten^^
Werd mir daheim mal kismet angucken bzw. mal sehen was es zu dem iPhone ausspuckt.
 
Doch. Ich meinte programmieren aus gutem Grunde. Wobei skripten auch programmieren ist: sobald eine Sprache Turing Complete ist, spätestens dann ist es ganz normales Programmieren.
Ich weiß grade nicht genau ob es ein libkismet oder so gibt, oder ob man vielleich auch libpcap verwenden könnte.
 
für mich ist jetzt erstmal der unterschied, ob ich kismet mit Parametern z.b. via shellscript, python usw. ansteuern kann, oder ob ich hier meine sehr sehr alten und damals schon unzureichenden C/C++ Kenntnisse auspacken muss.
Letzteres wäre eher unschön.

Aktuell scheitere ich aber noch daran das netbook zum testen ins 300Mbit-Wlan zu bringen. Aktuell wills nur in 54Mbit Wlan, aber da findet kismet als client nur den Router.

Update:
So nachdem ich keinen WLAN-AC USBStick zur Hand habe und kismet evtl doch bissl zu oversized/aufwändig zu implemententieren ist, werd ich wohl doch per ssh das syslog abfragen. so wies aussieht meldet sich das iPhone alle 10min für nen handshake beim hostapd und der schreibt brav n log.
So bekomme ich spätestens nach 10min mit, wenn das handy nicht mehr im wlan ist.

Vielen Dank für eure Unterstützung. Kismet werd ich mir auf die Good2Know-Liste setzen. Schon sehr nett bzw. biss erschreckend was man über die WLANs im Umkreis erfährt.
 
Zuletzt bearbeitet:
Vom PI aus das Handy suchen ist eine Variante, vom Handy aus den PI eine andere. Natürlich bedeutet das Programmieraufwand, aber wenn eine App zB alle 5 Minuten kurz ein Paket an den PI sendet, wäre der Akkuverbrauch minimal - vorher checkt die App ob man im Heim-WLAN ist. Oder man schaut nach ob es für das verwendete Automatisierungssystem schon eine App gibt, die man dann per Kommen/Gehen Button an und aus macht.

Wenn das Handy rumliegt und man es nicht auflädt, werden beide Varianten problematisch. Dann wäre aber das Grundkonzept anzuzweifeln. Ich stell mein Smartphone zB direkt in eine Ladestation im Flur, wenn ich nach Hause komme. Je nachdem was du bei deiner Heimautomatisierung durch den Handyping steuern willst, muss sichergestellt sein, dass das Handy auch immer an ist. Sonst sollte man zB ein Tablet o.ä. neben der Eingangstür aufstellen und dort besagte Automatisierungsapp einrichten.

Zuverlässigkeit ist bei Automatisierung das A und O. Sonst geht zB plötzlich überall das Licht aus, wenn dem Handy der Saft ausgeht... oder man hat's im Auto liegen gelassen oder oder oder..
 
Zuletzt bearbeitet:
Im Prinzip hab ich ja mit dem WLAN eine App auf dem Handy, die sich alle 10min meldet. Und sogar ohne zusätzlichen Stromverbrauch.
Eine eigene App, gerade für iOS, muss nicht wirklich sein wenn ich es über das Log auswerten kann.

Das Handy ist in meinem persönlichen Szenario der sicherste Token.
Akku war seit nem halben Jahr nicht mehr leer und vergesse ich seltener als meinen Schlüssel (verdammter USB-Stick am Schlüsselbund).
Aber klar, Garant ist das keiner und ich muss weitere Kriterien einführen um den Fehlerfall unwahrscheinlicher zu machen. D.h. z.B. die Erkennung nur in dem Zeitraum aktiv schalten, in dem ich normalerweise das Haus verlasse bzw das Haus betrete.
 
was auch ne möglichkeit wäre, Du lädst Dir Geofency runter. Damit setzt Du eine Zone um Dein Zuhause und lässt Geofency ein html befehl absetzen, sobald Du die Zone verlässt bzw betrittst. Das kannst Du am Pi auswerten und schalten...

Dann sparst Du Dir das Ganze WLAN Gedöhns und ignorierst Akku leer / Flugmodus / Router abgekackt Probleme ;)
 
Zurück
Oben