iPhone не отвечает на ARP-пакеты Scapy - PullRequest
0 голосов
/ 05 января 2019

Я создал простой инструмент для обнаружения сетей с помощью scapy. Однако я столкнулся с проблемой. Инструмент найдет iPhone один раз, а затем, если я попытаюсь снова сканировать сеть, его там не будет, хотя iPhone все еще в сети и смотрит видео с YouTube. Он найдет все остальные устройства в сети.

Я также создал простой инструмент, который с помощью arp получает MAC-адрес ip. Это тоже не похоже на работу. Я попытался сделать это с несколькими iPhone, и кажется, что он не работает ни с одним из них.

Вот функция, которая получает MAC-адрес от ip. Я просто посылаю этот arp каждому ip в определенном пользователем диапазоне. А если результата нет, добавьте его в список найденных устройств.

def mac_getter(IP, tio):
    ans, unans = srp(Ether(dst='ff:ff:ff:ff:ff:ff')/ARP(pdst=IP), timeout=tio,inter=0.2, verbose=0)
    sys.stdout.write("Trying {0}          \r".format(ip))
    sys.stdout.flush()
    for send, receive in ans:
        return receive.sprintf(r"%Ether.src%")

Я знаю, что локальный IP-адрес iPhone - 192.168.1.88, однако он не указан в найденных устройствах. Я также пытался сканировать сеть с помощью netdiscover, и он действительно находит iPhone.

...