URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 88673
[ Назад ]

Исходное сообщение
"Детализированный подсчет трафика"

Отправлено stanlee , 09-Апр-10 14:40 
Здравствуйте.

Подскажите пожалуйста есть ли под FreeBSD по для детального подсчета трафика.
Необходимо подсчитать трафик по каждой машине в сети и по возможности по каждому порту.


Содержание

Сообщения в этом обсуждении
"Детализированный подсчет трафика"
Отправлено alexcandr , 09-Апр-10 15:21 
>Здравствуйте.
>
>Подскажите пожалуйста есть ли под FreeBSD по для детального подсчета трафика.
>Необходимо подсчитать трафик по каждой машине в сети и по возможности по
>каждому порту.

Не знаю насчет FreeBSD но на linux этим занимается SAMS



"Детализированный подсчет трафика"
Отправлено PavelR , 09-Апр-10 15:34 
>>Здравствуйте.
>>
>>Подскажите пожалуйста есть ли под FreeBSD по для детального подсчета трафика.
>>Необходимо подсчитать трафик по каждой машине в сети и по возможности по
>>каждому порту.
>
>Не знаю насчет FreeBSD но на linux этим занимается SAMS

ну-ну. по портам, говоришь, SAMS  считает ? :-)

LOL


"Детализированный подсчет трафика"
Отправлено alexcandr , 09-Апр-10 15:38 
>[оверквотинг удален]
>>>
>>>Подскажите пожалуйста есть ли под FreeBSD по для детального подсчета трафика.
>>>Необходимо подсчитать трафик по каждой машине в сети и по возможности по
>>>каждому порту.
>>
>>Не знаю насчет FreeBSD но на linux этим занимается SAMS
>
>ну-ну. по портам, говоришь, SAMS  считает ? :-)
>
>LOL

Сори про порты не увидел, но по тачки он считает



"Детализированный подсчет трафика"
Отправлено stanlee , 09-Апр-10 15:43 
а по тачкам что можно?

"Детализированный подсчет трафика"
Отправлено reader , 09-Апр-10 15:44 
>[оверквотинг удален]
>>>>Необходимо подсчитать трафик по каждой машине в сети и по возможности по
>>>>каждому порту.
>>>
>>>Не знаю насчет FreeBSD но на linux этим занимается SAMS
>>
>>ну-ну. по портам, говоришь, SAMS  считает ? :-)
>>
>>LOL
>
>Сори про порты не увидел, но по тачки он считает

скорей по логам прокси :)


посмотрите netams


"Детализированный подсчет трафика"
Отправлено Pahanivo , 09-Апр-10 16:17 
>[оверквотинг удален]
>>>ну-ну. по портам, говоришь, SAMS  считает ? :-)
>>>
>>>LOL
>>
>>Сори про порты не увидел, но по тачки он считает
>
>скорей по логам прокси :)
>
>
>посмотрите netams

netflow - прекрасная деатльная статистика по ip
все инструменты идут в комплекте


"Детализированный подсчет трафика"
Отправлено frank82 , 30-Июн-10 22:33 
>посмотрите netams

Тебе верно напислаи netаms, лежит в /usr/ports/net-mgmt/netams, нужен устанвленый mysql и настроен ipfw, работает через web-интерфейс - apache сервер, возможен подсчет как по отдельным IP, так и по отдельным портам толи по сетевым толи по com-портам, а также по отдельным протколам, короче будет считать
все что пропускает ipfw.

P.S. У меня стоит и считает все, что только в во ФРЯХЕ возможно пропустить через ФАЕР,
горя не знаю, КЛАСНАЯ ШТУКА!!!

Попробуй!!!


"Детализированный подсчет трафика"
Отправлено Vladimir , 10-Апр-10 15:08 
>Здравствуйте.
>
>Подскажите пожалуйста есть ли под FreeBSD по для детального подсчета трафика.
>Необходимо подсчитать трафик по каждой машине в сети и по возможности по
>каждому порту.

Совсем недавно накрутил связку iptables + ULOG + MySQL + Несколько простеньких скрипотв на php. Правда прикручивал на дебиане, но, думаю и под фрёй проблем не будет.
Если нужно помочь - пиши.


"Детализированный подсчет трафика"
Отправлено Elenium , 10-Апр-10 19:08 
>>Здравствуйте.
>>
>>Подскажите пожалуйста есть ли под FreeBSD по для детального подсчета трафика.
>>Необходимо подсчитать трафик по каждой машине в сети и по возможности по
>>каждому порту.
>
>Совсем недавно накрутил связку iptables + ULOG + MySQL + Несколько простеньких
>скрипотв на php. Правда прикручивал на дебиане, но, думаю и под
>фрёй проблем не будет.
>Если нужно помочь - пиши.

а чего за скрипты? вот кстати странная фигня, почему досих пор никто нормальную морду под это ненаписали, ведь оч удобно было бы пользовать, я бы первое что написал бы на пыхпыхе это это, но к сожалению моих знаний пыхпыха недостаточно ((


"Детализированный подсчет трафика"
Отправлено Vladimir , 12-Апр-10 05:10 
>а чего за скрипты? вот кстати странная фигня, почему досих пор никто
>нормальную морду под это ненаписали, ведь оч удобно было бы пользовать,
>я бы первое что написал бы на пыхпыхе это это, но
>к сожалению моих знаний пыхпыха недостаточно ((

Нормальная морда вроде-бы есть, зовется nLog, но мне было интересно самому побаловаться, да и работать этот самый nLog с первого раза у меня не захотел :(
Мои знания в PHP тоже не велики :) там по-большинству на знание запросов.
Например, для удобства я сделал промежуточную табличку, в которую cron`ом каждую ночь сваливаю статистику за предыдущий день, очищая табличку ulog (работать с основной табличкой постоянно тяжко - за день получается около 200-300 тыс. записей, т.к. ulog учитывает каждый пакет).
Дамп таблички:

--
-- Структура таблицы `statistics`
--

CREATE TABLE IF NOT EXISTS `statistics` (
  `id` int(11) NOT NULL auto_increment,
  `ip_client` text NOT NULL,
  `ip_server` text NOT NULL,
  `date_timestamp` text NOT NULL,
  `traffic` int(11) NOT NULL,
  `protocol` text NOT NULL,
  `port` int(11) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;

Скрипт, выполняемый кроном:
#!/usr/bin/php-cgi
<?
$dateStart=date("Y-m-d H:i:s", mktime(0,0,0,date("m"), date("d")-1, date("Y")));
$dateEnd=date("Y-m-d H:i:s");
QUERY ("INSERT INTO `statistics` (ip_client, ip_server, date_timestamp, traffic, protocol, port)
    SELECT INET_NTOA( ip_daddr ) AS `ip_client`, INET_NTOA( ip_saddr ) AS  `ip_server` ,
    CONCAT(SUBSTRING(timestamp, 1, 4), ".", SUBSTRING(`timestamp`, 6, 2), '.', SUBSTRING(`timestamp`, 9, 2))
        , SUM( ip_totlen ) as `traffic`, protocol_name, (SELECT IFNULL(tcp_sport, udp_sport))
    FROM  `ulog`, `protocols`
    WHERE
    protocol_number=ip_protocol
    AND
        `timestamp` BETWEEN '".$dateStart."' AND '".$dateEnd."'
    GROUP BY  `ip_server`, `ip_client`, protocol_name");
QUERY (
    "DELETE FROM ulog WHERE `timestamp` BETWEEN '".$dateStart."' AND '".$dateEnd."'");


Запросы мне удобнее выполнять вот такой функцией:
function QUERY($query)
{
    $link=mysql_connect("hostname", "username", "password") or die "Unable connect to MySQL Server";
    mysql_select_db("ulogd");
    $result=mysql_query($query);
    mysql_close($link);
    return $result;
}

Пример скриптов на работу с табличкой statistics:
<?
$res=QUERY("SELECT DISTINCT ip_client as `client` FROM statistics ORDER BY client");
echo "Общее количество клиентов:  <b>".mysql_num_rows($res).'</b>
';
while ($a=mysql_fetch_object($res))
{
    print '<a href=details_by_client.php?ip='.$a->client.'>'.$a->client.'</a>
';
}
$res=QUERY("SELECT ip_client, SUM(traffic) as `traffic`
            FROM `statistics`
            GROUP BY ip_client
            ");
echo "

Общая информация (За текущий месяц):

";
echo "<table border=1>";
echo "<th>Клиент</th><th>Итого загружено</th>";
while ($a=mysql_fetch_object($res))
{
    echo '<tr><td>'.$a->ip_client.'</td><td>'.SHOW_SIZE($a->traffic).'</td></tr>';
}
echo "</table>";
echo '

<b><a href=details.php>Детализация статистики</a></b>';

$date=date("Y.m");
$res=QUERY("SELECT SUM(traffic) as `traffic`
            FROM statistics
            WHERE SUBSTR(date_timestamp, 1, 7)=".$date."
            ");
$a=mysql_fetch_object($res);
echo '
Итого за текущий месяц: <b>'.SHOW_SIZE($a->traffic).'</b>

';
$date=date("Y.m", mktime(0,0,0,date("m")-1,1, date("Y")));
$res=QUERY("SELECT SUM(traffic) as `traffic`
            FROM statistics
            WHERE SUBSTR(date_timestamp, 1, 7)=".$date."
            ");
$a=mysql_fetch_object($res);
echo '
Итого за предыдущий месяц: <b>'.SHOW_SIZE($a->traffic).'</b>

';
?>

Ну вот в общем то и все. если подробнее - пиши в джаббер\GTalk: vimarakshin(sobaka)gmail.com


"Детализированный подсчет трафика"
Отправлено Graf , 12-Апр-10 11:39 
>Здравствуйте.
>
>Подскажите пожалуйста есть ли под FreeBSD по для детального подсчета трафика.
>Необходимо подсчитать трафик по каждой машине в сети и по возможности по
>каждому порту.

Вот здесь есть решение под OpenBSD, но и под FreeBSD тоже пойдет.
http://otala.ru/?p=427


"Детализированный подсчет трафика"
Отправлено rontex , 12-Апр-10 19:02 
Я юзаю ipfm, все предельно просто, ставишь, правишь чуток конфиг и прога збрасывает (в зависимости от того как настроишь конфиг) статистику в красивом виде в текстовый файл.
Для детализации 80 порта использую связку squid+sarg.