The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
ulogd - немогу найти количество байт в логах , !*! fevil, 27-Апр-06, 15:44  [смотреть все]
Здраствуйте!

имею: linux RHEL4 upd 2, ulogd 1.23, iptables v1.2.11
ulogd пишет в mysql и в

правила:

$F -I FORWARD 1 -s 192.168.1.65 -j ULOG --ulog-prefix "usernat1"
$F -I FORWARD 1 -d 192.168.1.65 -j ULOG --ulog-prefix "usernat1"
$F -t nat -I POSTROUTING -s 192.168.2.254 -p icmp -o $EXT_ETH -j SNAT --to-source  $EXT_INTERF

в логах

* * *
Apr 27 13:10:08 router usernat1 IN=eth0 OUT=eth1 MAC=00:02:b3:e7:42:ae:00:03:e4:bd:d8:54:08:00  SRC=84.200.240.4 DST=192.168.2.95 LEN=119 TOS=00 PREC=0x00 TTL=52 ID=40376 CE DF PROTO=TCP SPT=6667 DPT=32976 SEQ=3422021206 ACK=86265940 WINDOW=1448 ACK PSH URGP=0
Apr 27 13:10:08 router usernat1 IN=eth1 OUT=eth0 MAC=00:13:20:a3:b5:e1:00:07:e9:3a:d2:8b:08:00  SRC=192.168.2.95 DST=84.200.240.4 LEN=40 TOS=00 PREC=0x00 TTL=63 ID=73 DF PROTO=TCP SPT=32976 DPT=6667 SEQ=86265940 ACK=0 WINDOW=0 RST URGP=0
* * *

в mysql тоже самое.

необходимо сделать статистику для нескольких пользователей которые идут не через прокси сервер вот только не могу найти где информация о количестве пакетов и байт

iptable -h -j ULOG  нашел  --set-counters PKTS BYTES     set the counter during insert/append
ну чтото не вышло у меня

подскажите кто знает.

заранее благодарен!!!

  • ulogd - немогу найти количество байт в логах , !*! fevil, 15:53 , 27-Апр-06 (1)
    >$F -I FORWARD 1 -s 192.168.1.65 -j ULOG --ulog-prefix "usernat1"
    >$F -I FORWARD 1 -d 192.168.1.65 -j ULOG --ulog-prefix "usernat1"
    >$F -t nat -I POSTROUTING -s 192.168.2.254 -p icmp -o $EXT_ETH -j
    >SNAT --to-source  $EXT_INTERF

    следует читать как

    $F -I FORWARD 1 -s 192.168.2.95 -j ULOG --ulog-prefix "usernat1"
    $F -I FORWARD 1 -d 192.168.2.95 -j ULOG --ulog-prefix "usernat1"
    $F -t nat -I POSTROUTING -s 192.168.2.95 -o $EXT_ETH -j SNAT --to-source  $EXT_INTERF

    извеняюсь не те правила вставил.

  • ulogd - немогу найти количество байт в логах , !*! dan, 16:37 , 27-Апр-06 (2)
    >* * *
    >Apr 27 13:10:08 router usernat1 IN=eth0 OUT=eth1 MAC=00:02:b3:e7:42:ae:00:03:e4:bd:d8:54:08:00  SRC=84.200.240.4 DST=192.168.2.95 LEN=119
    >TOS=00 PREC=0x00 TTL=52 ID=40376 CE DF PROTO=TCP SPT=6667 DPT=32976 SEQ=3422021206 ACK=86265940
    >WINDOW=1448 ACK PSH URGP=0
    >Apr 27 13:10:08 router usernat1 IN=eth1 OUT=eth0 MAC=00:13:20:a3:b5:e1:00:07:e9:3a:d2:8b:08:00  SRC=192.168.2.95 DST=84.200.240.4 LEN=40
    >TOS=00 PREC=0x00 TTL=63 ID=73 DF PROTO=TCP SPT=32976 DPT=6667 SEQ=86265940 ACK=0 WINDOW=0
    >RST URGP=0
    >* * *

    #:-0
    В данном куске логов ясно написано: LEN(сокращение от LENGTH - ДЛИНА англ.)=...
    Каждая строчка это пакет(ОДИН).
    А в mysql должно быть отдельное поле для каждого элемента заголовка пакета. (см. в пакете ulogd \usr\share\doc\ulogd\mysql.table)

    • ulogd - немогу найти количество байт в логах , !*! fevil, 08:11 , 28-Апр-06 (3)
      c ликбесом по LENGHT спасибо :)

      вот только в базе кроме udp_len ничего нет, да и в таблице поле везде NULL
      подскажите кто сталкивался ..

      и подскажите если кто знает где можно посмотреть скрипты для вывода этой базы, кроме webfwlog.


      заранее очень благодарен!!!

      • ulogd - немогу найти количество байт в логах , !*! fevil, 12:10 , 18-Июл-07 (4)
        я сделал ещё одну таблицу в mysql
        и каждый час делаю такой запрос:

        start TRANSACTION;
        insert into stat (traff_in, traff_out, name, log_date)
        select sum(ip_in), sum(ip_out), k, log_date
        from
        (
        select
             if(INET_NTOA(ip_saddr) like '192.168.%', ip_totlen, 0) as ip_out,
             if(INET_NTOA(ip_daddr) like '192.168.%', ip_totlen, 0) as ip_in,
             if (INET_NTOA(ip_saddr) like '192.168.%', INET_NTOA(ip_saddr), INET_NTOA(ip_daddr)) as k,
             date(from_unixtime(oob_time_sec)) as log_date
        from ulog_router
        where oob_time_sec > UNIX_TIMESTAMP('2007-07-01')
              and oob_time_sec < UNIX_TIMESTAMP('2007-07-31')
        ) a
        group by k, log_date;

        delete
        from ulog_router
        where oob_time_sec > UNIX_TIMESTAMP('2007-07-01') and
              oob_time_sec < UNIX_TIMESTAMP('2007-07-31');

        commit;


        а дальше из этой таблички простенький скипт выводит отчтик




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру