Можно ли читать ответы ARP с помощью Libnet? Я специально ищу кроссплатформенную библиотеку для чтения сокетов ARP, написанных на C/C++, написанных на C/C++
LibNet прочитал ответ ARP?
Ответы (1)
libnet
— это библиотека для построения и внедрения переносимых пакетов. Потребление и декапсуляция должны быть сделаны в другом месте. Я предлагаю libtrace
или libpcap
, чтобы помочь с этим бизнесом.
libnet
в первую очередь полезен, если вы хотите создавать и внедрять пакеты ARP. Чтобы увидеть, как это делается, посмотрите некоторый пример кода ARP. Кроме того, после того, как пакеты перехвачены из сети/эфира/файла, libnet
может быть полезен для своего справочника определений переносимых заголовков пакетов. В вашем случае вам стоит взглянуть на struct libnet_arp_hdr
. Вы можете преобразовать захваченный пакет в заголовок ARP, выполнив что-то вроде:
...
struct libnet_arp_hdr *arp_h;
buf = capturepacket();
...
arp_h = (struct libnet_arp_hdr *)buf + LIBNET_ETH_H;
...
switch (arp_h->ar_op)
{
case ARPOP_REQUEST:
...
person
Mike Schiffman
schedule
29.09.2014