подсчёт трафика пользователй
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
- moadip
- мл. сержант
- Сообщения: 114
- Зарегистрирован: 2007-01-17 14:32:23
подсчёт трафика пользователй
Привет
Вообщем нужно считать трафик пользователей в интернете,
вести статистику по сайтам и соответственно определённым извращенцам закрывать доступ к некоторым сайта.
Какой программой это можно реализовать ?
squid не предлагать(врёт)
нужно точно знать кто сколько насидел, включая pop3 smtp
Вообщем нужно считать трафик пользователей в интернете,
вести статистику по сайтам и соответственно определённым извращенцам закрывать доступ к некоторым сайта.
Какой программой это можно реализовать ?
squid не предлагать(врёт)
нужно точно знать кто сколько насидел, включая pop3 smtp
Я бы изменил мир, но Бог не дает исходники...
Услуги хостинговой компании 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/
- hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Re: подсчёт трафика пользователй
по сайтам все будут врать 
обычно одно другое дополняет, настроить, что то типа trafd или связки netflow и считать
дополняя данные по сайтам, если очень надо, статистикой со сквида

обычно одно другое дополняет, настроить, что то типа trafd или связки netflow и считать
дополняя данные по сайтам, если очень надо, статистикой со сквида
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
- moadip
- мл. сержант
- Сообщения: 114
- Зарегистрирован: 2007-01-17 14:32:23
Re: подсчёт трафика пользователй
а чемто одним это нельзя сделать? Щас trafd считает нормально, по каждому пользователю кто сколько насидел. Если прикрутить squid не начнёт ли он дурит ? Ведь поидее если пользователи пойдут через squid, trafd наверно будет считать что весь трафик идет через 1 ип, (сервера)
Я бы изменил мир, но Бог не дает исходники...
- hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Re: подсчёт трафика пользователй
хм будет, не вижу универсального решения, squid та еще кака, а уж парсилки его логов притча во языцех
есть милый хак, trafd считает обычный трафик и внедряет его в лог squid-а кроме 80 порта и подобных, squid работает как обычно
парсилка логов типа lightsquid выплёвывает полную статистику, насколько это вменяемо работает не в курсе
есть милый хак, trafd считает обычный трафик и внедряет его в лог squid-а кроме 80 порта и подобных, squid работает как обычно
парсилка логов типа lightsquid выплёвывает полную статистику, насколько это вменяемо работает не в курсе

В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
-
- проходил мимо
- Сообщения: 11620
- Зарегистрирован: 2008-02-21 18:15:41
Re: подсчёт трафика пользователй
а зачем такие подробности?нужно точно знать кто сколько насидел, включая pop3 smtp
у вас корпоративка?
- moadip
- мл. сержант
- Сообщения: 114
- Зарегистрирован: 2007-01-17 14:32:23
Re: подсчёт трафика пользователй
конторка небольшая интернета покупают 6 gb, на месяц нехватает, руководство хочет знать куда делся каждый mb, и соответсвенно если ктото сидел на порно сайтах, проводить профилактическую беседу, и лочить доступ.
P.s. А нат неумеет собирать статистику посещяемых ресурсов?
P.s. А нат неумеет собирать статистику посещяемых ресурсов?
Я бы изменил мир, но Бог не дает исходники...
- hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Re: подсчёт трафика пользователй
логика, NAT работает максимум на layer 4, сайты внутри layer 7 HTTP и подобного
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
- skeletor
- майор
- Сообщения: 2548
- Зарегистрирован: 2007-11-16 18:22:04
Re: подсчёт трафика пользователй
Почитай вот это, возможно пригодится.
http://skeletor.ho.ua/index.php?name=ar ... &cat=1&p=2
http://skeletor.ho.ua/index.php?name=ar ... &cat=1&p=2
- schizoid
- подполковник
- Сообщения: 3228
- Зарегистрирован: 2007-03-03 17:32:31
- Откуда: Украина, Чернигов
- Контактная информация:
Re: подсчёт трафика пользователй
переведите на ВПН - и считайте на интерфейсе
ядерный взрыв...смертельно красиво...жаль, что не вечно...
- hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Re: подсчёт трафика пользователй
это как то поможет статистике по сайтам? 

В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: подсчёт трафика пользователй
жрут больше всего вирусяги и обновления винды и софта. Сквид тут не помошник, нужно по серьёзней, я бы советовал ставить ipacctdmoadip писал(а): покупают 6 gb, на месяц нехватает
ЗЫ но и от статы сквида не отказываться
- moadip
- мл. сержант
- Сообщения: 114
- Зарегистрирован: 2007-01-17 14:32:23
Re: подсчёт трафика пользователй
щас стоит trafd,zg писал(а):moadip писал(а):я бы советовал ставить ipacctd
чем ipacctd будет лучше ?
Я бы изменил мир, но Бог не дает исходники...
-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: подсчёт трафика пользователй
ipacctd работает на дивертах, trafd в рамках trafshow
ipacctd не теряет пакеты и прост у становке и управлении
ipacctd не теряет пакеты и прост у становке и управлении
- hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Re: подсчёт трафика пользователй
ng_netflow - самое православное
ipacctd - получается завязанным на ipfw

ipacctd - получается завязанным на ipfw

В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: подсчёт трафика пользователй
кому как -)))hizel писал(а):ng_netflow - самое православное![]()
а чем плох ipfw? да и потомhizel писал(а):ipacctd - получается завязанным на ipfw
Код: Выделить всё
DESCRIPTION
Divert sockets are similar to raw IP sockets, except that they can be
bound to a specific divert port via the bind(2) system call. The IP
address in the bind is ignored; only the port number is significant. A
divert socket bound to a divert port will receive all packets diverted to
that port by some (here unspecified) kernel mechanism(s). Packets may
also be written to a divert port, in which case they re-enter kernel IP
packet processing.

- moadip
- мл. сержант
- Сообщения: 114
- Зарегистрирован: 2007-01-17 14:32:23
Re: подсчёт трафика пользователй
решил попробовать ng_ipacct, вроде считает
mysql к нему кто нибудь прикручивал ?
mysql к нему кто нибудь прикручивал ?
Я бы изменил мир, но Бог не дает исходники...
-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: подсчёт трафика пользователй
поищи по форуму, чё-то былоmoadip писал(а):mysql к нему кто нибудь прикручивал ?
- moadip
- мл. сержант
- Сообщения: 114
- Зарегистрирован: 2007-01-17 14:32:23
Re: подсчёт трафика пользователй
вообщем есть такой скрипт, для записили данныйх в БД
сообсно таблица БД
Данные в бд заносятся некоректно, а именно столбцы; ip_from и ip_to, заносится только часть ip адреса "192168"
Пмомогите разобраться в чём проблема ?
Код: Выделить всё
#!/usr/bin/perl
use DBI;
use DBD::mysql;
use Time::localtime;
$tm = localtime;
($DAY, $MONTH, $YEAR) = ($tm->mday, $tm->mon, $tm->year);
$IPACCTCTL="/usr/local/sbin/ipacctctl";
$IFACE = @ARGV[0];
$PARAMS = "$IFACE\_ip_acct:$IFACE";
$dbhost = "localhost";
$dbbd = "stat";
$dbuser = "*****";
$dbpass = "*****";
$dbtable= "stat";
`$IPACCTCTL $PARAMS checkpoint`;
@stat = `$IPACCTCTL $PARAMS show`;
`$IPACCTCTL $PARAMS clear`;
my $db = DBI->connect("DBI:mysql:$dbbd:$dbhost", $dbuser, $dbpass);
foreach (@stat){
my($ip_from, $s_port, $ip_to, $d_port, $proto, $packets, $bytes) = split(/[\s\t]+/,$_);
$db->do("INSERT INTO stat (r_date,ip_from,s_port,ip_to,d_port,proto,packets,bytes,iface) VALUES ('$DAY$MONTH$YEAR','$ip_from','$s_port','$ip_to','$d_port','$proto','$packets','$bytes','$IFACE')");
}
$result = $db->disconnect;
Код: Выделить всё
DROP TABLE IF EXISTS `stat`;
CREATE TABLE `stat` (
`r_date` int(4) unsigned,
`ip_from` int(4) unsigned,
`s_port` int(2) unsigned,
`ip_to` int(4) unsigned,
`d_port` int(2) unsigned,
`proto` int(2) unsigned,
`packets` int(4) unsigned,
`bytes` int(8) unsigned,
`iface` varchar(12)
) TYPE=MyISAM;
Код: Выделить всё
|r_date | ip_from | s_port | ip_to | d_port |proto |packets | bytes | iface |
|190109 | 192168 | 80 | 192168 | 58817 | 6 | 13 | 11875 | rl1 |
|190109 | 192168 | 61830 | 192168 | 53 | 17 | 1 | 57 | rl1 |
Я бы изменил мир, но Бог не дает исходники...
- Alex Keda
- стреляли...
- Сообщения: 35420
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Re: подсчёт трафика пользователй
Код: Выделить всё
int(4)
Убей их всех! Бог потом рассортирует...
- hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Re: подсчёт трафика пользователй
INET_ATON и INET_NTOA в лапы
Код: Выделить всё
- $db->do("INSERT INTO stat (r_date,ip_from,s_port,ip_to,d_port,proto,packets,bytes,iface) VALUES ('$DAY$MONTH$YEAR','$ip_from','$s_port','$ip_to','$d_port','$proto','$packets','$bytes','$IFACE')");
+ $db->do("INSERT INTO stat (r_date,ip_from,s_port,ip_to,d_port,proto,packets,bytes,iface) VALUES ('$DAY$MONTH$YEAR',INET_ATON('$ip_from'),'$s_port',INET_ATON('$ip_to'),'$d_port','$proto','$packets','$bytes','$IFACE')");
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
- moadip
- мл. сержант
- Сообщения: 114
- Зарегистрирован: 2007-01-17 14:32:23
Re: подсчёт трафика пользователй
если делаю
получаю
т.е. в бд попадают абсолютно непонятные цифры.
если делаю
получаю
подправил, результат тотже..
Код: Выделить всё
+ $db->do("INSERT INTO stat (r_date,ip_from,s_port,ip_to,d_port,proto,packets,bytes,iface) VALUES ('$DAY$MONTH$YEAR',INET_ATON('$ip_from'),'$s_port',INET_ATON('$ip_to'),'$d_port','$proto','$packets','$bytes','$IFACE')");
Код: Выделить всё
r_date | ip_from |s_port |ip_to |
190109| 3232235799 | 80 | 3232235797 |
если делаю
Код: Выделить всё
$db->do("INSERT INTO stat (r_date,ip_from,s_port,ip_to,d_port,proto,packets,bytes,iface) VALUES ('$DAY$MONTH$YEAR',INET_NTOA('$ip_from'),'$s_port',INET_NTOA('$ip_to'),'$d_port','$proto','$packets','$bytes','$IFACE')");
Код: Выделить всё
r_date | ip_from |s_port |ip_to |
190109| 0 | 80 | 0 |
Код: Выделить всё
ip_from int(16) UNSIGNED Да NULL
ip_to int(16) UNSIGNED Да NULL
Я бы изменил мир, но Бог не дает исходники...
- hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Re: подсчёт трафика пользователй
IPv4 адрес суть четыре байта , в mysql это тип int unsigned
или храните в char(15)
Код: Выделить всё
mysql> select inet_aton('192.168.0.1');
+--------------------------+
| inet_aton('192.168.0.1') |
+--------------------------+
| 3232235521 |
+--------------------------+
1 row in set (0.02 sec)
mysql> select inet_ntoa(3232235521);
+-----------------------+
| inet_ntoa(3232235521) |
+-----------------------+
| 192.168.0.1 |
+-----------------------+
1 row in set (0.30 sec)
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
- moadip
- мл. сержант
- Сообщения: 114
- Зарегистрирован: 2007-01-17 14:32:23
Re: подсчёт трафика пользователй
спасибо,
а как просто в виде ip адреса записывать в бд ?
а как просто в виде ip адреса записывать в бд ?
Код: Выделить всё
SQL-запрос:
ALTER TABLE `stat` CHANGE `ip_from` `ip_from` CHAR( 16 ) UNSIGNED NULL DEFAULT NULL
Ответ MySQL:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UNSIGNED NULL DEFAULT NULL' at line 1
Я бы изменил мир, но Бог не дает исходники...
- hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Re: подсчёт трафика пользователй
Код: Выделить всё
ALTER TABLE `stat` MODIFY `ip_from` CHAR( 16 );
замечу, что unsigned int меньше занимает и быстрее обрабатывается

В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
- moadip
- мл. сержант
- Сообщения: 114
- Зарегистрирован: 2007-01-17 14:32:23