Система учета трафика NetBilling с гибкой зональной тарификацией клиентов. Представляет собой набор Perl-скриптов, связывающий результат сбора трафика системой net-acct с базой данный клиентов, тарифов и зон (MySQL) и предоставляющая простой и удобный Web-интерфейс.URL: http://netbilling.nm.ru
Новость: http://www.opennet.me/opennews/art.shtml?num=3769
На первый взгляд это пойдет для небольшой компании. Для серъезный вопросов это не есть решение.
Вобщем в целом неплохо.
Есть еще одна большая проблема :) АСР должны быть сертифицированы.
параноя? ;)
Не смешите мои тапки - АСР. Для домашней сети этот софт подойдет на все 100% (нелегальность большенства из этих сетей нужно аргументировать?). По функционалу выделено самое основное и реализовано. Как - дело десятое, главное, что сетку из 10-20 компов посчитает на любом Pentium-60 с 32 памяти. Автору - thanks!
Я автор. ;-)
Вы правы - серьезная система должна быть сертифицирована. Но сертификация, на сколько я знаю, требует больших денег.
Поначалу я пытался распространять своё произведение за деньги - не получилось, да и времени нет. Поэтому решил отдать на суд обществу.
К слову, эта система уже год работает в провайдерской организации города - ни одного нарекания. :)
Спасибо на добром слове.
Пользуйтесь!
Слушай, а под FreeBSD её подшаманить можно ?
Можно. Даже наработки такие есть. Используется тамошний trafd (или как его звать, не помню щас уже). В общем, чуть-чуть переписать то место, где лог net-acct'а анализируется. Точнее, уже переписано, но не прикручено. Я этим займусь в первую очередь, наверное.
Если надо срочно - welcome в мыло.
> Можно. Даже наработки такие есть. Используется тамошний trafd (или как его >звать, не помню щас уже). В общем, чуть-чуть переписать то место, где лог >net-acct'а анализируется. Точнее, уже переписано, но не прикручено. Я этим >займусь в первую очередь, наверное.
>Если надо срочно - welcome в мыло.А можно на эти наработки посмотреть. То фря как раз боевая система :)
что то я не понял фразы "Доступ пользователей в Интернет контролируется самими пользователями, а потому исключается возможность кражи трафика путем подмены IP-адреса в сети.". если у меня в сети кто то подставит чужой IP, то тогда что?
Если пользователь, прежде чем выключить свой комп, отключит доступ в инет, то никакая подмена IP не поможет злоумышленнику выйти в Инет не зная пароля. А если пользователь забыл выключить Инет, то предъявлять претензии в краже трафика ему будет некому (кроме себя самого).
Это мера скорее административная, чем техническая. :)
Автору билинга - респект
скачал-то что надо=)долго искал
ВНИМАНИЕ! 1 Кбайт принимается равным 1000 байт.
а это чо за бредддд %%) ???
Это не бред, а суровая реальность многих провайдерских организаций.
Если у вас в 1 Кб, как положено, 1024 б - добро пожаловать в конфигурационный файл, там это настраивается.Будьте внимательны при настройке, и всё будет ОК.
насчет 1 Кб = 1024 байт...
слышал, вроде существуют две системы счисления,
по одной так и есть, 1 Кб = 2 в 10й степени байт = 1024 байт
по другой (СИ ?), приставка кило применяется как и с метрами: 1 Кб = 1000 байт
часто оговаривается, что считать за килобайт
В сетях передачи данных информация передается последовательно и принято её считать октетами (8 бит) т.е. 1 байт, а раз так то применяется десятичная система суммирования переданных последовательно октетов т.е. 1 Кб = 1000 байт (октет). Взять к примеру счетчики SNMP ifOutOctets и ifInOctets которыми пользуется основная масса программ учета траффика.
Замечательная вещь!!!!!!!!!
kak porekomeduete ispolzovat danny billing v HA ?
ага. система подойдет для учета трафика в конторе с 70 компами?
интересно с помощью систему организовать шлюз, только важен факт наличия лимита трафика. доки еще не читал по сему не обесудьте.
Млин билинг то неплохой но я его не магу нармально заставить работать .... не считается трафик net-acct щитает трафик нармально но после выполнения скрипта gettraf.pl в базе в таблице Traffic у клиентов видно только 0.000000 ..
>Млин билинг то неплохой но я его не магу нармально заставить работать
>.... не считается трафик net-acct щитает трафик нармально но после выполнения
>скрипта gettraf.pl в базе в таблице Traffic у клиентов видно только
>0.000000 ..
В netbill.sql меняем "Neg BIT NOT NULL DEFAULT 0," на "Neg INT NOT NULL DEFAULT 0,"
в таблице "Address" и все работает. Иначе все значения зон считаются как исключенные.
>В netbill.sql меняем "Neg BIT NOT NULL DEFAULT 0," на "Neg INT
>NOT NULL DEFAULT 0,"
>в таблице "Address" и все работает. Иначе все значения зон считаются как
>исключенные.Хм, даже нет, все "BIT" нужно заменить в таблице на "INT" и тогда все работает,
траффик считается, коректно работает настройка зон, пользовательский модул, отчеты
месячные\дневные отправляются пользователям.
А вообще биллинг понравился, пока намерен использовать его. Автору большое спасибо.
У меня похожая трабла. net-acct все считает, пишет логи и дампы, а gettraf не пишет ничего в таблицу, хотя выдает сообщение о том, что все ок!gw-evt:/home/httpd/netbill/bin# ./gettraf.pl
Netbilling
gettraf
Prevent nacctd from writing to log
Reading nacctd log
Allow nacctd to write to log
Put traffic and its price into database
Check, if some clients are to be deactivated
Done!Все это собрано на Debian 4r1, mysql Ver 14.12 Distrib 5.0.32
В своё время писал (как оказалось) что то подобное для небольшого испа, тоже net-acct тоже скрипт на перле для разбора лога и записи в мускульную базу, очень хотелось бы пообщаться с автором сего билинга с целью перенятия кое какого опыта :)
подскажите кто ставил эту штуку на freebsd, были ли рпоблемы с crontab'ом, дело в том что у меня на freebsd 6.0 он нивакую нехочет деать */1 * * * * /usr/local/netbill/bin/savetraf.sh;/usr/local/netbill/bin/gettraf.pl, хотя по логам все гуд (May 9 06:26:00 klyacha /usr/sbin/cron[30614]: (root) CMD (/usr/local/netbill/bin/savetraf.sh;/usr/local/netbill/bin/gettraf.pl)), когда делаю тоже самое вручную работает как помаслу
если что-нибудь сталкивался подскажите в чем косяк, зарание спасибо!
Уважаемы Админы!!! кто ставил эту систему на FreeBSD может стакнулся с такойже проблемой.
Есть скрипт savetraf.sh все красиво создает дапм и сохраняет его, traflog его логирует тоже красиво, а вот gettraf.pl что-то не то делает, я не perl программист поэтому в исходниках не разберусь но думаю что грабли в этом скрипте, если кто перелопатил дайте знать миру, вы очень поможете
А, самое главное забыл. gettraf.pl в базу данных ничего о трфике не кидает. Спасибо
>А, самое главное забыл. gettraf.pl в базу данных ничего о трфике не
>кидает. Спасибоага такая же ситуация, че делать незнаю :'(
дошел до того что при запуске скрипта gettraf.pl через крон
все выполняется до строки 117,потом продолжает со строки 157
если запускать в обычном режиме то все кул!
уж че делать незнаю!!
...
114 print "Reading nacctd log\n";
115 open (F, $nacctdout) or print "Can't open $nacctdout !\n";
116 print "point 0\n";
117 while (<F>) {
118 print "point 1\n";
...
156 close(F);
157 print "point 2\n";
...
------------------------------------------------------
Reading nacctd log
point 0
point 2P.S. Автору респект!!
Проблема во FreeBSD заключалась в traflog он упорно не хотел через крон выкидывать статистику в файл, хотя в ручную делал это прекрасно
traflog -i rl0 -no netbill_fmt >> $NACCTDOUTпоходу это баг в traflog, и его врядли когда нибудь исправят, так как проект уже мертвый!
Решение
ставим ipcad
cd /usr/ports/net-mgmt/ipcad
make install cleanправим /usr/local/etc/ipcad.conf
меняем с capture-ports disable; на capture-ports enable;
ставим свои интерфейсы interface rl1 netflow-disable;правим savetraf.sh
удаляем !!
-------------------------
/usr/local/bin/trafdump all/usr/local/bin/trafsave all
if [ ! -e $GETTRAFLOCK ]; then
##
## There must be lines for all interfaces we listen on with trafd
##
# For rl0 interface
traflog -i rl0 -no netbill_fmt >> $NACCTDOUT
# For rl1 interface
#traflog -i rl1 -no netbill_fmt >> $NACCTDOUT
# Another interfaces goes there...
fi
---------------------------вставляем
---------------------------if [ ! -e $GETTRAFLOCK ]; then
rsh localhost show ip accounting > $NACCTDOUT
sleep 2;
rsh localhost clear ip accounting
fiправим gettraf.pl
!!стока 118удаляем
----------------------------
if (/^\d+\s+\d+\s+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s+(\d+|client|none)\s+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s+(\d+|client|none)\s+(\d+)/) {
my $srcip = $1; my $srcport = $2; my $dstip = $3; my $dstport = $4; my $size = $5;
if ($srcport eq "client") { $srcport=1024; }
if ($srcport eq "none") { $srcport=0; }
if ($dstport eq "client") { $srcport=1024; }
if ($dstport eq "none") { $srcport=0; }
----------------------------вставляем
----------------------------if (/^\s+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s+(\d+)\s+(\d+)\s+(\d+|"-")\s+(\d+|"-")\s+(\d+)\s/) {
my $srcip = $1; my $srcport = $6; my $dstip = $2; my $dstport = $6; my $size = $4;
if ($srcport eq "-") { $srcport=1; }
if ($dstport eq "-") { $srcport=1; }
-----------------------------вот собственно все