Снифер сетевых пакетов на скриптах Bash
Предполагается использовать Bash, хотя подойдет любой другой метод, но без привлечения внешних программ.
OS - Slackware 10, или Debian 3.1
Как наваять снифер сетевых пакетов на скриптах?
Предполагается использовать Bash, хотя подойдет любой другой метод, но без привлечения внешних программ.
OS - Slackware 10, или Debian 3.1
ты вроде уже задавал этот вопрос. без привлечения внешних программ - никак. только использовать tcpdump и парсить его вывод.
ты вроде уже задавал этот вопрос. без привлечения внешних программ - никак. только использовать tcpdump и парсить его вывод.
Упс. Действительно задавал.
Только что узнал что всетаки есть решение с использованием средств shell-а. Как что нибудь получится - размещу тут исходник.
Упс. Действительно задавал.
Только что узнал что всетаки есть решение с использованием средств shell-а. Как что нибудь получится - размещу тут исходник.
если можно в двух словах - как?
если можно в двух словах - как?
Пока читаю RTFM:
http://www.nsc.ru/cgi-bin/www/unix_help/unix-man?bpf+4
Просто не хотелось бы использовать tcpdump так как он, на сколько я знаю, сваливает весь дамп в файл.
А мне бы хотелось что нибудь вроде callback функции, которая вызывается на каждый пришедший пакет... Чтоб можно было анализировать пакеты, и направлять их в расшифрованном виде в лог.
Пока читаю RTFM:
http://www.nsc.ru/cgi-bin/www/unix_help/unix-man?bpf+4
Просто не хотелось бы использовать tcpdump так как он, на сколько я знаю, сваливает весь дамп в файл.
А мне бы хотелось что нибудь вроде callback функции, которая вызывается на каждый пришедший пакет... Чтоб можно было анализировать пакеты, и направлять их в расшифрованном виде в лог.
в Linux нету bpf. кроме того, анализ всех пакетов в реальном времени на скриптах - нереальная задача. по умолчанию tcpdump не сваливает в файл ничего, а выдает на экран. используй буфферизацию вывода tcpdump на stdout и обрабатывай то что получишь.
например:
вот такую конструкцию я использую чтобы получить юзера+пароль из FTP