Ich schrieb ein Skript, das alle lokalen IPs im '0' Netzwerk (192.168.0. *) Durchläuft..Gethostbyaddr() funktioniert nicht auf allen Geräten. Warum? (Python)
Ich verwende eine Schleife mit socket.gethostbyaddr(ip_modified_by_the_loop_each_time)
.
Die Schleife gibt mir 3 Geräte ihre Hostnamen zurück. Jetzt habe ich festgestellt, dass es nicht mindestens 4 Geräte findet.
- Es wickelt meinen Windows Laptop, nicht mein Android Phone. Es findet
- ein MacBook, nicht der iMac, nicht das andere MacBook. Es ist auch nicht
- finden Sie ein Telefon.
Ich weiß, dass alle Geräte online sind und eine IPv4-Adresse haben.
Ich kann sie sehr gut anpingen, es reagiert gut. Aber wenn ich socket.gethostbyaddr(ip_modified_by_the_loop_each_time)
benutze, wird ein Fehler ausgegeben.
Ich habe eine try:
/except:
Anweisung verwendet, um den Fehler zu umgehen, aber es kann immer noch nicht mein Telefon nach IP finden und den Hostnamen, aber ich weiß, dass es da ist. Ich benutze Python 3.3
Warum ist das passiert, wie das zu beheben?
Vielen Dank.