Товарищи форумчане, есть следующий вопрос. Нужно отправить широковещательный arp запрос программными средствами. Есть ли какая -то специальная функция? Я нашел в исходниках ядра функцию arp_send, но там куча параметров и непонятно как правильно их формировать. Слышал, что можно использовать pcap, но там насколько я понял можно только принимать пакеты. а не отправлять их. Можно вроде бы использовать SOCK_PACKET, но только непонятно какой функцией можно отправить arp-запрос.
Заранее спасибо.
можно попробовать scapyhttp://www.secdev.org/projects/scapy/
у него в мануале есть например такое:
ARP ping:
srp(Ether(dst="ff:ff:ff:ff:ff:ff")/ARP(pdst="172.16.1.1/24"))
>Товарищи форумчане, есть следующий вопрос. Нужно отправить широковещательный arp запрос программными средствами.
>Есть ли какая -то специальная функция? Я нашел в исходниках ядра
>функцию arp_send, но там куча параметров и непонятно как правильно их
>формировать. Слышал, что можно использовать pcap, но там насколько я понял
>можно только принимать пакеты. а не отправлять их. Можно вроде бы
>использовать SOCK_PACKET, но только непонятно какой функцией можно отправить arp-запрос.
>Заранее спасибо.отправлять ессно sendto
при использовании SOCK_PACKET те в ручную прийдётся формиравать твой запрос
вообще всю структуру пакета от а до я
для ip дейтаграмм заполнять поля мак адресов отправителя и получателя и т. п. тип вышележащего протокола и т. п. и собсно саму ip дейтаграмму (в которую например вложена UDP)
что там для arp нужно :) не помню, нада rfc смотреть
вообще поищи в инете
>>Товарищи форумчане, есть следующий вопрос. Нужно отправить широковещательный arp запрос программными средствами.В природе есть замечательная программа которая называется arping, ессно с сорцами и ессно крошечная размером. Гугли и копипасти все готовое оттудова, вся недолга...