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

вопрос по статье trafd& mysql

Добавлено: 2007-12-26 13:12:34
Happy_demon
Доброе время! трафд настраивал не по этой статье, а видимо по той, от которой lissyara исходил, с перлом :-)
всё нормально работает уже не первый год (даже не второй). но вот недавно пришлось повесить на сетевуху, которая смотрит внутрь, алиас, для ещё одной подсети (дочерняя фирма). и теперь ifconfig выглядит так:

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

rl1: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
        options=8<VLAN_MTU>
        inet 192.168.25.2 netmask 0xffffff00 broadcast 192.168.25.255
        inet 192.168.20.2 netmask 0xffffff00 broadcast 192.168.20.255
        ether 00:e0:4c:01:72:a1
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
где 25-ая подсетка - основная сеть, 20 - филиал.
а трафд продолжает считать трафик только по 25-ой подсетке, не учитывает 20-ю. единственное что трафик по 192.168.25.2 значительно вырос. я так понимаю это и есть весь трафик из 20-ой подсети. вот собственно и вопрос - как считать трафик по обеим подсетям? где что подправить, чтобы всё заработало? заранее спасибо.

Re: вопрос по статье trafd& mysql

Добавлено: 2007-12-26 13:51:02
Alex Keda
считает.
это скрипт вывода не показывает

Re: вопрос по статье trafd& mysql

Добавлено: 2007-12-26 14:05:52
Happy_demon
залез спецом пхпмайадмином в его базу - там вообще нет упоминания про 25-ую подсетку. залез в скрипты, которые выполняются в течении дня и ночью. точно, есть 25-ая подсетка

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

[root@bc /usr/local/etc/trafd]# cat db_step2.pl
#!/usr/bin/perl

use Mysql;

$dbh = Mysql->Connect("","ipacc", "trafd", "pass");
$del_query="delete from traffic_tmp;";
$dbh->Query($del_query);

$q="delete from yesterday where ((src_port>=137) AND (src_port<=139))";
$dbh->Query($q);
$q="delete from yesterday where ((dst_port>=137) AND (dst_port<=139))";
$dbh->Query($q);

$query_sent="insert into traffic_tmp (ip,sent) \
      select src_ip as ip, sum(bytes) as sent \
      from yesterday where src_ip like '192.168.25.%' group by src_ip;";

$dbh->Query($query_sent);

$query_recv="insert into traffic_tmp (ip,recv) \
      select dst_ip as ip, sum(bytes) as recv \
      from yesterday where dst_ip like '192.168.25.%' group by dst_ip;";

$dbh->Query($query_recv);
#
#  itogo
#
$yesterday=`date -v-1d '+%Y-%m-%d'`;
chomp($yesterday);

$qi="insert into traffic (dt,ip,sent,recv) \
      select '".$yesterday."',ip, sum(sent) as sent, sum(recv) as recv \
      from traffic_tmp group by ip;";

$dbh->Query($qi);
теперь бы ещё понять, как добавить вторую подсеть... было бы совсем здорово. ладно, пойду разбираться.
З.Ы. решил пойти простым путём (пойдём вместе (с)) - просто скопировал ещё раз этот файл, переименовал его в db_step2_filial.pl добавил его выполнение в крон и всё заработало. прошу прощения за беспокойство. всем здоровья!