Дано:
Почтовый сервер на базе Ubuntu 8.10
Четыре сетевых интерфейса
Необходимо:
Считать трафик на каждом интерфейсе, вести статистику.
Решение:
vnstat - маленький консольный пакет, который считает трафик на указанных интерфейсах и не загружает систему. Статистика считается отдельно для каждого интерфейса, трафик по ip-адресам и портам не делится. Статистика выводится по запросу с детализацией по часам, дням, неделям и тд.
Хранится статистика в файлах в каталоге /var/lib/vnstat.
Занимает места мало - у меня за три дня работы 4кб для каждого интерфейса, итого 12кб для трех наблюдаемых интерфейсов.
Устанавливаем vnstat:
#apt-get install vnstat
Инициализируем базу данных для каждого необходимого интерфейса:
#vnstat -u -i eth0
#vnstat -u -i eth1
#vnstat -u -i eth2
Далее необходимо сказать vnstat запустить мониторинг интерфейса.
Это можно сделать путем ifdown/ifup для каждого интерфейса,
либо, если нет желания разрывать соединения выполнить для каждого:
#IFACE=eth${i}
#export IFACE
#/bin/sh -x /etc/network/if-up.d/vnstat
где ${i} порядковый номер интерфейса.
Все, мониторинг готов, теперь по прошествии нескольких минут можно смотреть статистику
#vnstat -q
Подписаться на:
Комментарии к сообщению (Atom)
3 комментария:
А она только общий трафик считает или умеет разделять по направлениям (например, локалка, внутригородское кольцо и внешка). Хотелось бы как раз с разделением по направлениям считать, но что-то готового найти не удалось, восновном целые пакеты с кучей настроек, биллингом, mysql-базой и т.п.
А мне нужно всего лишь считать кто сколько накачал с этих подсетей за месяц.
интересно, а где хранится информация и в каком объёме ?
Правильные вопросы задаете! На все ответил в тексте статьи. :)
Отправить комментарий