View Full Version : Статистика по потребителям трафика на WL500gP
DiMan_St
13-04-2008, 21:35
Здравствуйте. Как говорится, "опять 25" ;)
Облазил форум, но так и не нашел решения сабжевой проблемы. Vnstat, конечно, хорошо, но нужна развернутая статистика по потребителям трафика. Как я понял, эту проблему решает NetFlow.
Со сбором информации проблем нет: ipkg install softflowd
Далее коллектор. В условиях домашнего использования у меня нет возможности иметь постоянно работающий сервер для сбора статистики. Поэтому хотелось бы поручить и эту функцию маршрутизатору. Хочу систему "все-в-одном".
Коллекторов много, мне приглянулся flowd (компактность, "родной" для softflowd), ну и, конечно, пакет flow-tools. Собрать для асуса я ничего не смог :( . Пакет flow-tools есть в репозитарии OpenWRT.
Что опытные товарищи думают по поводу размещения flow-tools на маршрутизаторе? Хватит мощи коробочки? Кто может собрать?
По результатам, можно было бы составить пошаговое howto данного вопроса.
Что опытные товарищи думают по поводу размещения flow-tools на маршрутизаторе? Хватит мощи коробочки? Кто может собрать?
По результатам, можно было бы составить пошаговое howto данного вопроса.
Я думаю это плохая идея. Статистику нужно собирать и парсить - проца не хватит однозначно. Потом ее еще собирать надо, например в базу. Это ОЗУ придется как-минимум перепоять на 128Мб.
Думаю идея не очень хорошая, будет заметно сказываться на скорости интернета.
Лучше отдельный компик поставить и по SNMP собирать статистику.
Господа, ну хотя-бы сделайте тогда FAQ, как "компик поставить и по SNMP собирать статистику". Чайницкий только. Ато знаю я вас, напишете щас совет типа "элементарно, берёшь ftdiwbf, монтируешь как devkwejfw, потом останется лишь ядро пересобрать- и вот тебе SNMP на порту 468578290 через ufdfksj.fss". :eek:
DiMan_St
14-04-2008, 06:58
Я думаю это плохая идея. Статистику нужно собирать и парсить - проца не хватит однозначно..
Можно только собирать. Взять готовые или я могу сам написать парсеры/визуализаторы для Win. Включил комп - забрал данные и обработал/показал. Будем учитывать, что покупают большинство данную коробочку для домашнего использования.
Думаю идея не очень хорошая, будет заметно сказываться на скорости интернета.
Неужели коллектор будет жрать столько ресурсов?
Лучше отдельный компик поставить и по SNMP собирать статистику
"Это не наш путь" :rolleyes:
Неужели коллектор будет жрать столько ресурсов?
Да. Говорю из опыта работы с обычным компом.
ОЗУ однозначно перепаивать, 32Мб - это никуда не годится. Просто винт убьешь или роутер повесишь.
DiMan_St
14-04-2008, 08:09
То есть, тема "все-в-одном" зашла в тупик?
Придется пока использовать vnstat.
p.s. а что скажут пользователи OpenWRT на Asus WL500gP? Кто пробовал ставить flow-tools?
antonych
20-04-2008, 20:12
я сделал это так:
1. В качестве прозрачного прокси - 3proxy, авторизация по IP.
2. В iptables весь нужный трафик завернул на него.
3. Статистику генерирует LightSquid.
В итоге прекрасно видно куда и когда ходил каждый пользователь.
antonych, обьясни чайнику, куда что тыкать , пожалуйста :o:o:o
antonych
22-04-2008, 18:42
А насколько подробно?
А насколько подробно?Для начала, в каком месте рутера настроить заворот полезного трафика на проксю.
antonych
24-04-2008, 10:31
Для начала, в каком месте рутера настроить заворот полезного трафика на проксю.
в файл /usr/local/sbin/post-firewall добавляем
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128
после добавления сохраняемся:
flashfs save && flashfs commit && flashfs enable
В данном случае:
3128 - порт прокси, 80 - запросы на этот порт перенаправляем. В общем случае этого хватает для простой истории типа "кто, куда и зачем"
в файл /usr/local/sbin/post-firewall добавляем
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128
после добавления сохраняемся:
flashfs save && flashfs commit && flashfs enable
В данном случае:
3128 - порт прокси, 80 - запросы на этот порт перенаправляем. В общем случае этого хватает для простой истории типа "кто, куда и зачем"Т.е. как я понял всё что было 80 становится 3128?
antonych
24-04-2008, 10:49
Т.е. как я понял всё что было 80 становится 3128?
Когда ты набираешь в адресной строке браузера адрес (без точного указания порта через двоеточие), то этот запрос идет на 80-й порт. В данном случае этот запрос соответствует условию, заданному в iptables, и он (запрос) передается на порт 3128, где его уже обрабатывает прокси-сервер.
Когда ты набираешь в адресной строке браузера адрес (без точного указания порта через двоеточие), то этот запрос идет на 80-й порт. В данном случае этот запрос соответствует условию, заданному в iptables, и он (запрос) передается на порт 3128, где его уже обрабатывает прокси-сервер.Этот вопрос для себя окончательно проясню, я дополнительно сам адрес прокси-сервера должен натсроить на компьютерах про которые хочу получить статистику, иначе, как я поняд, я просто буду попадать на обычные сайты без прокси, но по переиначеному порту.
кстати более подходящей темы для вопроса, чем эта не нашёл.
У меня подключённый роутер съедает, по статистике провайдера, ~80 мб час, (цифра растёт каждый час, началось с 40 мб),
На роутере отключены FTP, компьютеры под роутером выключены, настроеный DynDns на сайте разрегистрировал, а трафик растёт и растёт.
2 гб за день даже не получая удовольствия... много :(
кто нибудь с таким сталкивался, или это только мне так повезло.
когда роутер отключён, трафик = 0
antonych
24-04-2008, 11:26
Этот вопрос для себя окончательно проясню, я дополнительно сам адрес прокси-сервера должен натсроить на компьютерах про которые хочу получить статистику, иначе, как я поняд, я просто буду попадать на обычные сайты без прокси, но по переиначеному порту.
Прокси-сервер нужно поднимать на роутере. На компах ничего перенастраивать не нужно.
У меня подключённый роутер съедает, по статистике провайдера, ~80 мб час, (цифра растёт каждый час, началось с 40 мб),
На роутере отключены FTP, компьютеры под роутером выключены, настроеный DynDns на сайте разрегистрировал, а трафик растёт и растёт.
2 гб за день даже не получая удовольствия... много :(
кто нибудь с таким сталкивался, или это только мне так повезло.
когда роутер отключён, трафик = 0
А вот может как раз прокси уже поднят? И он открыт наружу? Или торренты какие-нибудь?
Нужно смотреть список процессов (ps) и что открыто\закрыто (например iptables -L)
А вот может как раз прокси уже поднят? И он открыт наружу? Или торренты какие-нибудь?
Нужно смотреть список процессов (ps) и что открыто\закрыто (например iptables -L)Угу, вечером доберусь до железки и скажу. А то я провод отключил от рутера, ибо трафик, блин, наел бы за рабочий день... вечером (~20-21 MSK) будешь на форуме поможешь разобратся ?
Вообще я только поставил прошивку Олеговскую (1.9.2.7-10), ностроил на webморде dyndns и FTP, увидел трафик и сразу отключил ddns, ftp.
Нужно смотреть список процессов (ps) и что открыто\закрыто (например iptables -L)
Chain INPUT (policy ACCEPT)
target prot opt source destination
logdrop all -- anywhere anywhere state INVALID
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
logaccept all -- anywhere anywhere state NEW
logaccept all -- anywhere anywhere state NEW
logaccept igmp -- anywhere BASE-ADDRESS.MCAST.NET/4
logaccept udp -- anywhere BASE-ADDRESS.MCAST.NET/4udp dpt:!upnp
SECURITY all -- anywhere anywhere state NEW
logaccept udp -- anywhere anywhere udp spt:bootps dpt:bootpc
logdrop all -- anywhere anywhere
Chain FORWARD (policy ACCEPT)
target prot opt source destination
logaccept all -- anywhere anywhere
logdrop all -- anywhere anywhere state INVALID
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
logdrop all -- anywhere anywhere
SECURITY all -- anywhere anywhere state NEW
logaccept all -- anywhere anywhere ctstate DNAT
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain MACS (0 references)
target prot opt source destination
Chain SECURITY (2 references)
target prot opt source destination
RETURN tcp -- anywhere anywhere tcp flags:SYN,RST,ACK/SYN limit: avg 1/sec burst 5
RETURN tcp -- anywhere anywhere tcp flags:FIN,SYN,RST,ACK/RST limit: avg 1/sec burst 5
RETURN udp -- anywhere anywhere limit: avg 5/sec burst 5
RETURN icmp -- anywhere anywhere limit: avg 5/sec burst 5
logdrop all -- anywhere anywhere
Chain logaccept (7 references)
target prot opt source destination
LOG all -- anywhere anywhere state NEW LOG level warning tcp-sequence tcp-options ip-options prefix `ACCEPT '
ACCEPT all -- anywhere anywhere
Chain logdrop (5 references)
target prot opt source destination
LOG all -- anywhere anywhere state NEW LOG level warning tcp-sequence tcp-options ip-options prefix `DROP '
DROP all -- anywhere anywhere
Нужно смотреть список процессов (ps) и что открыто\закрыто (например iptables -L)iptables -L (psydex.nm.ru/iptables.txt)
Выключил в рутере dyndns опцию
часовой трафик упал до 5 мб, это те 5 мб которые я за час налазил.
Возникает вопрос, отчего "IP Config > Miscellaneous > DynDns" ТАК влияет на трафик. и вопрос 2 может ли кто-то тоже посмотреть на свою статистику С и БЕЗ опции dyndns.
А насколько подробно?
не могу запустить LIGHTSQUID...
установил LIGHTTPD на порт 8081
подключил .php
сам скид поставил... прокся работает
установил /opt/share/www/lightsquid
захожу по адресу
http://192.168.1.1:8081/lightsquid -- показывает содержимое каталога
http://192.168.1.1:8081/lightsquid/index.cgi -- показывает HTTP 500 - Внутренняя ошибка сервера
я, так понимаю, что .cgi не работает... подскажите что прикрутить надо и где...
СПС
не могу запустить LIGHTSQUID...
установил LIGHTTPD на порт 8081
подключил .php
сам скид поставил... прокся работает
установил /opt/share/www/lightsquid
захожу по адресу
http://192.168.1.1:8081/lightsquid -- показывает содержимое каталога
http://192.168.1.1:8081/lightsquid/index.cgi -- показывает HTTP 500 - Внутренняя ошибка сервера
я, так понимаю, что .cgi не работает... подскажите что прикрутить надо и где...
СПС
Надо ставить перл (или микроперл) и настраивать обработку им cgi файлов в lighttpd.conf
Надо ставить перл (или микроперл) и настраивать обработку им cgi файлов в lighttpd.conf
стоит и перл и микроперл
в lighttpd.conf раскоментированы строки
"mod_cgi"
"mod_scgi"
cgi.assign (.... ... /opt/bin/microperl)
нашел разницу в путях:
/opt/var/log/lighttpd/error.log
2008-10-31 12:15:42: (log.c.75) server started
Can't locate File/Basename.pm in @INC
(@INC contains: /usr/local/lib/perl5/5.9 .)
at /opt/share/www/lightsquid/index.cgi line 14.
[admin@W500 root]$ find / | grep Basename.pm
/opt/lib/perl5/5.8.8/File/Basename.pm
/tmp/mnt/disc0_1/opt/lib/perl5/5.8.8/File/Basename.pm
он ищет перл в другой папке...
надо демоническую ссылку настроить?...
Спустя 15 минут
переписал пути во всех *.pl файлах в папке лайтсквид
с #!/usr/bin/perl
на #!/opt/bin/perl
-=не помогло=-
в ошибках опять упоминание про перл 5.9 а у меня 5.8.8 и в других папках..
Стер ВСЁ!
Установил снова..
заработало..
добавляю:
в файл /usr/local/sbin/post-firewall добавляем
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128
после добавления сохраняемся:
flashfs save && flashfs commit && flashfs enable
В данном случае:
3128 - порт прокси, 80 - запросы на этот порт перенаправляем. В общем случае этого хватает для простой истории типа "кто, куда и зачем"
запускаю ./post-firewall
в эксплорерах выскакивает ошибка
ОШИБКА
Запрошенный URL не может быть доставлен.
--------------------------------------------------------------------------------
Во время обработки запроса:
GET / HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
Referer: http://ya.ru/
Accept-Language: ru
UA-CPU: x86
Accept-Encoding: gzip, deflate
If-Modified-Since: Tue, 11 Nov 2008 09:30:58 GMT; length=35711
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.1)
Host: www.yandex.ru
Connection: Keep-Alive
Cookie: yandexuid=3083694521226064297; yandex_login=ххххserji; L=78c6; yabs-frequency=/2/wlPC01449m00//fG8L10K1WW80; yandex_nickname=%ччхххх; yandex_mail=хххххserji; Session_id=1226395890.0.0.5417850.2:19856965:mdb20 0.53471.6933.cddf1f6cfb8720bdc9db717f75a6fb11
Произошла следующая ошибка:
Неверный запрос.
Некоторые аспекты HTTP запроса неправильны. Возможные проблемы:
Отсутствует либо неизвестен метод запроса (GET, POST)
Отсутствует URL
Отсутствует HTTP идентификатор (HTTP/1.0)
Запрос слишком велик
Не указан Content-Length для запросов POST или PUT
Недопустимый символ в имени сервера; подчеркивания недопустимы
--------------------------------------------------------------------------------
Generated Tue, 11 Nov 2008 09:38:17 GMT by sector.w500 (squid/2.6.STABLE21)
переставил порт с 80 на 88, прописал порт 88 в проксях эксплореров --> работает!
что делать с 80 портом чтобы не настраивать ВСЕ ОСТАЛЬНЫЕ вэб клиенты и эксплореры???
revenant
29-12-2008, 17:38
Это http_port 3128 заменить на
http_port 3128 transparent
что делать с 80 портом чтобы не настраивать ВСЕ ОСТАЛЬНЫЕ вэб клиенты и эксплореры???