Страница 1 из 1

непонятно, как настроить ipacctd

Добавлено: 2007-09-18 7:38:25
Plush
драсте Вам
http://www.lissyara.su/?id=1134 - статья
настраиваю как сказано, только:

Код: Выделить всё

ipacctd_enable="YES"
ipacctd_flags="-v"
ipacctd_rules="xl0 rl0 rl1 lo0"
ipacctd_rule_xl0_flags="-p 10010 -f /var/log/traffic_xl0.log"
ipacctd_rule_xl0_pid="/var/run/ipacctd.xl0"
ipacctd_rule_rl0_flags="-p 10020 -f /var/log/traffic_rl0.log"
ipacctd_rule_rl0_pid="/var/run/ipacctd.rl0"
ipacctd_rule_rl1_flags="-p 10030 -f /var/log/traffic_rl1.log"
ipacctd_rule_rl1_pid="/var/run/ipacctd.rl1"
ipacctd_rule_lo0_flags="-p 10040 -f /var/log/traffic_lo0.log"
ipacctd_rule_lo0_pid="/var/run/ipacctd.lo0"
и

Код: Выделить всё

#Ochistka rulesov
${fwcmd} -f flush

#Zahod izdaleka
#${fwcmd} add chek-state
${fwcmd} add pass all from any to any via lo0
${fwcmd} add deny all from any to 127.0.0.0/8
${fwcmd} add deny all from 127.0.0.0/8 to any

#local l0 allow
${fwcmd} add allow ip from any to any via lo0

#Podschet traffica
${fwcmd} add divert 10010 ip from any to any via $if_out
${fwcmd} add divert 10020 ip from any to any via $if_loc1
${fwcmd} add divert 10030 ip from any to any via $if_loc2
${fwcmd} add divert 10040 ip from any to any via lo0
не создает файло */var/log/traffic_*****, хотя Ipacctd в памяти загружен. (ps ax|grep ipacctd)

Код: Выделить всё

# ps ax | grep ipacctd
  908  ??  Ss     0:27.71 /usr/local/sbin/ipacctd -v -p 10010 -f /var/log/traff
  911  ??  Ss     0:33.19 /usr/local/sbin/ipacctd -v -p 10020 -f /var/log/traff
  914  ??  Ss     0:01.80 /usr/local/sbin/ipacctd -v -p 10030 -f /var/log/traff
  917  ??  Is     0:00.00 /usr/local/sbin/ipacctd -v -p 10040 -f /var/log/traff
 9141  p0  D+     0:00.01 /bin/csh -c ps ax | grep ipacctd
 9143  p0  RV+    0:00.00 /bin/csh -c ps ax | grep ipacctd

Re: непонятно, как настроить ipacctd

Добавлено: 2007-09-18 7:54:39
Alex Keda
наскока я помню, оно их создаёт тока при сохранении статистики...

Re: непонятно, как настроить ipacctd

Добавлено: 2007-09-18 9:03:08
Plush
понятно. статистика должна быть!
чего я делаю не так? - все настройки вывалил
почему создает не имя_файла, а "usr/local/sbin/ipacctd -v -p 10040 -f /var/log/traff" ???

Re: непонятно, как настроить ipacctd

Добавлено: 2007-09-18 10:22:38
dikens3
Не создаёт потому-что нужно ему сказать через какие интервалы времени скидывать статистику в файл.

ПО умолчанию он просто всё держит в памяти, пока не кончится. :-)
EXAMPLES
Типичный пример использования ipacctd:
1. Добавить правило ipfw(8)
add 2000 divert 10000 ip from any to any via ppp*
2. Запустить ipacctd
ipacctd -v -p 10000 -f /var/log/ipacct.%F_%T

После этого по SIGHUP ipacctd будет записывать статистику по IP пакетам,
прошедшим через ppp интерфейсы в файл с именем
ipacct.YYYY-MM-DD_HH:MM:SS.
Над выделенным подумай. :-)

B догонку:
IMPLEMENTATION NOTES
Начиная с версии 1.43, появилась опция -s, позволяющий получать стати-
стику с помощью команды

cat /tmp/ipacct/ipacct.<port>
Так тоже можно, мне так больше нравится.

Re: непонятно, как настроить ipacctd

Добавлено: 2007-09-18 10:39:20
toughcat

Код: Выделить всё

EXAMPLES
     Типичный пример использования ipacctd:
           1.   Добавить правило ipfw(8)
                      add 2000 divert 10000 ip from any to any via ppp*
           2.   Запустить ipacctd
                      ipacctd -v -p 10000 -f /var/log/ipacct.%F_%T

     После этого по SIGHUP ipacctd будет записывать статистику по IP пакетам,
     прошедшим через ppp интерфейсы в файл с именем
     ipacct.YYYY-MM-DD_HH:MM:SS.

т.е чтобы сбросить статистику из памяти в файл нужно подать команду SIGHUP:

Код: Выделить всё

killall -1 ipacctd

Re: непонятно, как настроить ipacctd

Добавлено: 2007-09-18 11:37:12
dikens3
:-) Молодец.

Re: непонятно, как настроить ipacctd

Добавлено: 2007-09-18 16:38:48
toughcat
dikens3 писал(а)::-) Молодец.
...спасибо Учитель... подсказал бы как отключить ежеминутные /var/log/message:

Код: Выделить всё

Sep 18 17:22:00 toughcat ipacctd[96072]: (port 10001) accounting dumped to /usr/local/var/log/traffic_tun0.log (162 packets, 68059 bytes)
?

ключи

Код: Выделить всё

#!/bin/sh -xv 
в http://www.lissyara.su/?id=1134 видимо только для отладки, иначе крон еще и письма шлет каждую минуту

Re: непонятно, как настроить ipacctd

Добавлено: 2007-09-18 18:32:03
Alex Keda
для неотладки, можно юзать >/dev/null

Re: непонятно, как настроить ipacctd

Добавлено: 2007-09-18 19:26:24
toughcat
lissyara писал(а):для неотладки, можно юзать >/dev/null
я просто ключи убрал - >/dev/null никакого эффекта не дает

Re: непонятно, как настроить ipacctd

Добавлено: 2007-09-18 19:43:17
schizoid

Код: Выделить всё

2>/dev/null 1>/dev/null

Re: непонятно, как настроить ipacctd

Добавлено: 2007-09-19 10:20:03
dikens3
подсказал бы как отключить ежеминутные /var/log/message:
У меня даже мысли небыло их убирать. :-) Нужная весчь понимаешь. :-)
Я скидываю раз в 2 минуты или 5 обычно, их не особо много получается.

Re: непонятно, как настроить ipacctd

Добавлено: 2007-10-16 20:33:36
kmb
Итак, поставил ipacctd, построил по правилу:

Код: Выделить всё

00100 3740 1582668 divert 10001 ip from any to any via iwi0
Как видно тут складывается исходящий и входящий, но ведь частенько платят по превалирующему, поэтому хотелось бы чтобы было какое-то разделение, возможно такое?
И еще посмотрел скрипт Лиса, но для него ставить мускул нужно, потом еще и клиента искать, которые будет читать данные из базы, ладно бы сервак, но ведь на локальной машине всё это держать накладно :/ Нет ли каких-нибудь других решений по разбору лога?

Re: непонятно, как настроить ipacctd

Добавлено: 2007-10-16 20:34:37
Alex Keda
shell/awk

Re: непонятно, как настроить ipacctd

Добавлено: 2007-10-16 20:42:41
kmb
эм... посмотрел внимательно синтаксис лога ipacctd, в нем время не фискируется... ппц, это значит хрен я определю когда это было...

Re: непонятно, как настроить ipacctd

Добавлено: 2007-10-16 20:55:48
Alex Keda
раз в минуту и класть в базу :)
думаешь я просто так пришёл к этому решеню? :)

Re: непонятно, как настроить ipacctd

Добавлено: 2007-10-16 21:01:48
kmb
lissyara писал(а):раз в минуту и класть в базу :)
думаешь я просто так пришёл к этому решеню? :)
Нет, базу я не хочу пока =))
По-моему я поторопился, нашел ключ w в последний столбец добавляет дату в виде unixtime, и в название логфайла добавил %F_%T(yyyy-mm-dd-hh-mm-ss)... Ладно пойду изучать awk =)

Re: непонятно, как настроить ipacctd

Добавлено: 2007-10-16 21:41:22
Alex Keda
далеко не уходи.
в форуме про шелл есть скрипты наструганные на коленке.
там есть почти готовое решение.

Re: непонятно, как настроить ipacctd

Добавлено: 2007-10-16 22:33:35
kmb
lissyara писал(а):далеко не уходи.
в форуме про шелл есть скрипты наструганные на коленке.
там есть почти готовое решение.
ого, круто =) побежал искать =)