В прошлой части мы сформировали ARP-запрос, который спрашивает у устройств сети – «Кто обладает ip-адресом 192.168.0.1». Сейчас нам нужно написать код, отвечающий за того, куда мы будем отправлять этот запрос. Как мы уже выяснили обмен данными между устройствами в локальной сети производится посредством MAC-адресов устройств, а не посредством их IP-адресов. MAC-адреса источника и адреса назначения прописываются в той части запроса, который относится к Ethernet. Поэтому нам необходимо создать Ethernet-фрейм и отправить его на широковещательный адрес. В scapy это реализовано посредством класса .Ether() – в качестве аргумента, нам нужно передать этому классу MAC широковещательного адреса. Создаем переменную: broadcast = scapy.all.Ether() Для того, чтобы понять какое поле у .Ether() отвечает за широковещательный адрес вновь прибегнем к функции ls(): и что мы видим ? Итак, нужное нам поле называется dst. Изменяем наш код соответствующим образом: Не забываем, что MAC-адрес броадкаста