В продолжение темы http://www.linux.org.ru/jump-message.jsp?msgid=1630134
Я написал следующий код:
/* Создаем ethernet кадр */
libnet_build_ethernet("\x00\x17\x31\x97\x0D\xC5", "\x00\x17\x31\x97\x0D\xC3", ETHERTYPE_IP, NULL, 0, buf);
/* Создаем ip пакет */
libnet_build_ip(TCP_H + 8, 0, libnet_get_prand(PRu16), 0, 64, IPPROTO_TCP, 3232269768, 3232269767, NULL, 0, buf + ETH_H);
/* Создаем tcp пакет без payload, но с зарезервированными для него 8 байтами */
libnet_build_tcp(1010, 8080, 100, 300, TH_SYN, 6553, 0, NULL, 8, buf + ETH_H + IP_H);
/* Считаем чексумму для IP */
libnet_do_checksum(buf + ETH_H, IPPROTO_TCP, TCP_H + 1);
После этого дампим это в pcap-файл
Все бы ничего, но есть пара проблем:
1. Контрольная сумма IP пакета == 0 (хотя функция исполняется успешно)
2. bogus TCP header length (0, must be at least 20)
Кто-нить сталкивался с таким?
$ strings /usr/lib/libnet.a | grep version
libnet version 1.0.2a (c) 1998, 1999 Mike D. Schiffman <mike@infonexus.com>
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум libnet (2002)
- Форум libnet, не уходят пакеты (2013)
- Форум помогите найти описуху libnet (2002)
- Форум Люди подскажите как установить libnet. (2009)
- Форум Непонятки (2010)
- Форум непонятка (2004)
- Форум Помогите дописать сканер портов pcap, libnet (2021)
- Форум dmraid непонятки (2011)
- Форум уведомления, непонятки. (2013)
- Форум lxc, непонятки (2011)