Кто реализовывал данный метод прошу поделиться экспириэнсом
RRDTool + PF
Модератор: terminus
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
- TITANius
- сержант
- Сообщения: 197
- Зарегистрирован: 2009-10-27 11:33:10
RRDTool + PF
Хочу сделать мониторинг роутера, но столкнулся с проблемой как связать PF с RRDTool. Вернее как выбирать нужные мне данные из PF ?
Кто реализовывал данный метод прошу поделиться экспириэнсом
Кто реализовывал данный метод прошу поделиться экспириэнсом
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- TITANius
- сержант
- Сообщения: 197
- Зарегистрирован: 2009-10-27 11:33:10
Re: RRDTool + PF
Отвечу сам на свой вопрос
PF очень крутая штука. Можно получить статистику практически ко всему
Статистика по всем интерфейсам одновременно: pfctl -sI -vv
Статистика по конкретному интерфейсу: pfctl -sI -vv -i interface
Статистика по правилам: pfctl -sr -vv
Итак например нам нужно собрать суммарную входящую и исходящую статистику.
Соответственно In4/All = In4/Pass + In4/Block:
Так само и для исходящей: Out4/All = Out4/Pass + Out4/Block
С правилами немного посложнее, так как в PF не нумеруются правила
, но можно посмотреть их поочерёдность и выбрать нужное нам число.
Интересуемся исходящим трафиком на интерфейсе ng0 по http
Дальше дело за малым, можно собирать информацию о всех и вся 
Статистика по всем интерфейсам одновременно: pfctl -sI -vv
Статистика по конкретному интерфейсу: pfctl -sI -vv -i interface
Статистика по правилам: pfctl -sr -vv
Итак например нам нужно собрать суммарную входящую и исходящую статистику.
Код: Выделить всё
$ pfctl -sI -vv -i ng0
ng0
Cleared: Thu Dec 10 16:20:21 2009
References: [ States: 0 Rules: 14 ]
In4/Pass: [ Packets: 2173948 Bytes: 293719041 ]
In4/Block: [ Packets: 82890 Bytes: 11005998 ]
Out4/Pass: [ Packets: 3534355 Bytes: 2825644144 ]
Out4/Block: [ Packets: 60 Bytes: 3684 ]
In6/Pass: [ Packets: 0 Bytes: 0 ]
In6/Block: [ Packets: 0 Bytes: 0 ]
Out6/Pass: [ Packets: 0 Bytes: 0 ]
Out6/Block: [ Packets: 0 Bytes: 0 ]
Код: Выделить всё
$ expr -e `pfctl -sI -vv -i ng0 | grep "In4/Pass" | awk '{print $6}'` + `pfctl -sI -vv -i ng0 | grep "In4/Block" | awk '{print $6}'`
305152579
Код: Выделить всё
$ expr -e `pfctl -sI -vv -i ng0 | grep "Out4/Pass" | awk '{print $6}'` + `pfctl -sI -vv -i ng0 | grep "Out4/Block" | awk '{print $6}'`
2857936511
Код: Выделить всё
$ pfctl -sr -vv
...
@32 pass out on ng0 proto tcp from any to any port = http flags S/SA keep state
[ Evaluations: 328 Packets: 102 Bytes: 12708 States: 4 ]
[ Inserted: uid 0 pid 8499 ]
...
Код: Выделить всё
$ pfctl -sr -vv | awk 'NR==104 {print $7}'
58728
