Всем привет!
Вот решил написать систему учёта трафика и не могу определиться чем считать...
Может кто посоветует какой-нить способ и его "+" и "-".Заранее спасибо.
возьми trafd, сырцы в качестве примера и изучения очень полезны и интересны
Мысли вслух (так как автор очень скромно описал свою проблему)...1) Создаем точку доступа по PPTP. Привязываем ее к серверу Radius. Пишем программу, получающую данные от сервера Radius.
2) На маршрутизаторе, находящемся на границе сети, добавляем правила учета трафика к конфигурации брандмауэра. Пишем программу, получающую данные от брандмауэра.
3) На компьютере, который слышит ВЕСЬ трафик, переводим сетевуху в promiscuous-режим. Пишем программу, учитывающую все пролетающие мимо пакеты.
4) Используем готовое решение (http://www.google.com/search?q=traffic+accounting)
тут вопрос стоял в том, каким способом(ipfw, ещё какие-нить другие способы...)
и может кто посоветует, как грамотней брать каунты с фаерволла?
>тут вопрос стоял в том, каким способом(ipfw, ещё какие-нить другие способы...)
Тут вопрос никак не стоял.
>и может кто посоветует, как грамотней брать каунты с фаерволла?
И до сих пор не стоит :-)
Какая ОС? Какой брандмауэр?
Как должен проводиться учет (только данные об объемах или нужно учитывать протоколы и хосты)?На незаданный вопрос вам никто ответа не даст.
Когда-то давно я делал простой учет трафика на Solaris + IP Filter:---цитата-----------------------------------------------------------
Доступ клиента разрешается/запрещается добавлением/удалением правилаmap EXTIF IPi/32 -> 0.0.0.0/32
Учет потребленного клиентом трафика реализуется правилами
count out on EXTIF from IPi/32 to any - исходящий трафик
count in on EXTIF from any to IPi/32 - входящий трафикУчет трафика, потребленного всей сетью, реализуется правилами
count out on EXTIF from any to any - исходящий трафик
count in on EXTIF from any to any - входящий трафик
---цитата-----------------------------------------------------------
Стоит FreeBSD, поэтому и писал ipfw, впринцыпе решил им и считать, хотя может кто посоветует иначе...
Вот и спрашиваю, как правильние снимать count'ы с ipfw.
Не буду же я брать с результата выполнения "ipfw show XXXXX" ;)
может ещё кто перечислит способы учёта трафика кроме фаерволла под FreeBSD?
>может ещё кто перечислит способы учёта трафика кроме фаерволла под FreeBSD?
Прочитайте мой первый ответ.
>>может ещё кто перечислит способы учёта трафика кроме фаерволла под FreeBSD?
>Прочитайте мой первый ответ.Можно поподробнее по поводу снятия циферок с радиуса? Это про общее количество прогнанных байт в конце сессии? Или я не про то думаю?
Да. Именно так. Вот выдержка из протокола моего RADIUS-сервера:Fri Jul 16 23:50:12 2004
Acct-Session-Id = "40F831741B9D"
User-Name = "fefelov"
Acct-Status-Type = Start
Service-Type = Framed-User
Framed-Protocol = PPP
Acct-Authentic = RADIUS
NAS-Port-Type = Async
Framed-IP-Address = 192.168.0.200
NAS-IP-Address = 127.0.0.1
NAS-Port = 0
Acct-Delay-Time = 0
Client-IP-Address = 127.0.0.1
Timestamp = 1090007412
Request-Authenticator = VerifiedFri Jul 16 23:52:10 2004
Acct-Session-Id = "40F831741B9D"
User-Name = "fefelov"
Acct-Status-Type = Stop
Service-Type = Framed-User
Framed-Protocol = PPP
Acct-Authentic = RADIUS
Acct-Session-Time = 121
Acct-Output-Octets = 83438
Acct-Input-Octets = 8579
Acct-Output-Packets = 117
Acct-Input-Packets = 87
NAS-Port-Type = Async
Framed-IP-Address = 192.168.0.200
NAS-IP-Address = 127.0.0.1
NAS-Port = 0
Acct-Delay-Time = 0
Client-IP-Address = 127.0.0.1
Timestamp = 1090007530
Request-Authenticator = Verified