tcpdump

14 сообщений / 0 new
Последнее сообщение
inna
Не в сети
Зарегистрирован: 21/09/2010
tcpdump

При загрузке системы запускаю скрипт, содержащий следующее:
tcpdump -i eth0 -w /tcplog0 &

Теперь при перезагрузке файл tcplog0 каждый раз перезаписывается (старый лог очищается). Как бы сделать, чтобы он дописывался? Вариант
tcpdump -i eth0 >> /tcplog0
мне не подходит, т.к. дамп при этом пишется не во внутреннем формате.
У меня Knoppix ядро 2.4.26.
Может кто-нибудь что-нибудь посоветует? Заранее благодарна.

WhiteDragon (не проверено)

первое что в голову пришло:
tcpdump -i eth0 -w - >> /tcplog0 &

а где винты бесконечные по дешевке раздают?

edge (не проверено)

[quote=inna]При загрузке системы запускаю скрипт, содержащий следующее:
tcpdump -i eth0 -w /tcplog0 &
Теперь при перезагрузке файл tcplog0 каждый раз перезаписывается (старый лог очищается). Как бы сделать, чтобы он дописывался? Вариант
tcpdump -i eth0 >> /tcplog0
мне не подходит, т.к. дамп при этом пишется не во внутреннем формате.
[/quote]

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

mijgun (не проверено)

а как же аттрибут append only?
<span class='smallblacktext'>[ Редактирование 25.11.2005 - 13:44:38 ]</span>

Goodvin
Не в сети
Зарегистрирован: 21/09/2010

[b]WhiteDragon
edge[/b]

опередили :-)

Вопрос: нужно именно дописывать в один и тот же файл или подойдет вариант "1 сессия работы - 1 файл" ??

cin
Не в сети
Зарегистрирован: 21/09/2010

А может попродробней задачку автор распишет? Думаю, тогда и более изящное решение предложат.
Варварство какое-то хранить весь дамп трафика через сетевой интерфейс.

inna
Не в сети
Зарегистрирован: 21/09/2010

такой вариант
tcpdump -i eth0 -w - >> /tcplog0 &
я тоже пробовала, при этом файл дозаписывается, но в месте стыковки двух логов нарушается структура файла. Дело в том, что полученный лог я потом анализирую прогой Ethereal, которая при считывании доходит до места стыковки и ругается, что файл испорчен.
То же самое получается при соединении двух логов cat-ом.
Логи у меня пишутся в течении месяца в разные файлы по трем сетевым интерфейсам отдельно, в конце месяца скидываются в архив и обновляются. Нужно это для того, чтобы в любой момент проконтролировать, кто сколько трафика нагнал. Сервер включен постоянно, но вынужденные перезагрузки случаются.
Что за атрибут append only?

mijgun (не проверено)

Аттрибут специально для ведения логов, разрешает только дописывать в файл, а не перезаписывать.

cin
Не в сети
Зарегистрирован: 21/09/2010

может стоит посмотреть в сторону программ, которые заточены под подсчёт трафика? [link=http://www.netams.com ]NeTAMS[/link] например.

inna
Не в сети
Зарегистрирован: 21/09/2010

Спасибо! Посмотрела Netams, даже скачала, но на моем Debian она к сожалению нормально не собралась - не нашла одного заголовочного файла. Но мысль хорошая - закинуть весь лог в MySQL, а потом агрегатными функциями суммировать. Просто это все долго. Может Вы знаете еще какой-нибудь софт, чтобы много ресурсов не ел и под любой Линукс годился?

Dumus
Аватар пользователя Dumus
Не в сети
Зарегистрирован: 17/09/2010

А какого заголовочного файла не нашла? Может проще пакет доставить?

Мой микроблог: http://juick.com/Dumus/

inna
Не в сети
Зарегистрирован: 21/09/2010

pcap.h
У меня его и нету. И они там на сайте пишут, что испытывали свой NetAMS на Fedore. А у меня Debian изуродованный :)

mitix (не проверено)

pcap.h - заголовочный файл от библиотеки libpcap, которая хватает пакеты с сетевых интерфейсов. Но поставить пакет действительно проще.
<span class='smallblacktext'>[ Редактирование 28.11.2005 - 20:51:22 ]</span>

Dumus
Аватар пользователя Dumus
Не в сети
Зарегистрирован: 17/09/2010

Причём нужно ставить пакет "libpcap-dev"

Мой микроблог: http://juick.com/Dumus/

RSS-материал