Инъекция пакетов Linux в стек TCP - PullRequest
2 голосов
/ 25 марта 2010

Могу ли я внедрить пакеты в стек TCP Linux без изменения драйвера Ethernet? Могу ли я сделать это с помощью библиотеки или STH?

Спасибо,

Ответы [ 3 ]

2 голосов
/ 25 марта 2010

Если под «внедрением пакетов в стек TCP Linux» вы подразумеваете отправку некоторых данных, которые ядро ​​Linux будет обрабатывать как кадр, поступающий из интерфейса Ethernet, тогда вы можете использовать устройство «tap». Если IP-пакет (уровень 3) достаточно хорош, используйте устройство tun.

http://en.wikipedia.org/wiki/TUN/TAP

http://www.kernel.org/pub/linux/kernel/people/marcelo/linux-2.4/Documentation/networking/tuntap.txt

1 голос
/ 06 ноября 2011

Либнет

Libnet - это универсальный сетевой API, обеспечивающий доступ к нескольким протоколам. Он не предназначен для использования в сети как единое решение. В настоящее время многие функции, которые являются общими в некоторых сетевых протоколах, недоступны в Libnet, например потоковая передача по TCP / IP. Мы считаем, что Libnet не должен предоставлять специфические функции, которые возможны в других протоколах. Если мы ограничим Libnet минимальным количеством, необходимым для связи (датаграмма / пакеты), это позволит ему поддерживать больше интерфейсов.

0 голосов
/ 25 марта 2010

В противном случае, если вам просто интересно внедрить вручную созданные пакеты в сеть, прочитайте справочные страницы и поищите онлайн-справку с необработанными сокетами. Несколько хороших мест для начала - man 7 raw, man package, и на security-freak.net есть несколько хороших руководств, хотя код там не очень хорошо написан для моих вкусов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...