LINUX.ORG.RU
ФорумAdmin

Перехват пакетов


0

0

Подскажите способ перехватить пакеты, которые отправляет программа и получает по сети. Программа пускается по wine, сама по себе достаточно простая, хотелось бы попробовать разобратся в ее работе. С помощью чего это можно сделать?

★★
Ответ на: комментарий от eXire

То что пакеты просто можно перехватить с помощью tcpdump я знаю. Вопрос как перехватить только траффик между конкретной прогой, по ее pid

olegk ★★
() автор топика
Ответ на: комментарий от dreamer

>netstat -nap|grep proga

Спасибо. Просто я думал, что существут механизм перехватывать пакеты от процесса с таким-то pid.

Когда программа запускается она может установить соединение и закрыть его. И netstat нам ничего не покажет. Можно было бы на perl написать скрипт который делает fork, запускает перехват пакетов в дочернем процессе по его pid, а потом делает exec.

olegk ★★
() автор топика
Ответ на: комментарий от olegk

задай в tcpdump критерии по порту или хосту. Ведь наверняка известно, куда подключается программа. Или можно выяснить запуская tcpdump без критерия.

smartly ★★★
()

Еще как вариант можно использовать модуль owner для iptables:
iptables -I INPUT -m owner --pid-owner $PID -j LOG --log-prefix 'WINE traffic: '
iptables -I OUTPUT -m owner --pid-owner $PID -j LOG --log-prefix 'WINE traffic: '
а потом смотреть логи.

P.S. Для INPUT цепочки модуль owner, идущий с ядром, раньше не работал (не знаю как сейчас), зато тот, который из patch-o-matic, работал и для INPUT, и для OUTPUT.

spirit ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.