The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"ipfw правила для подсчета трафика"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"ipfw правила для подсчета трафика"  
Сообщение от GHopper email on 16-Ноя-06, 18:54 
Приветствую!
FreeBSD 4.10, nat, ipfw.
Два интерфейса - rl0 (внутренний) и rl1 (интернет).
Есть желание организовать биллинг для пользователей локалки. Сам хочу сделать.
Начинаю. Идея такая - собираю статистику в БД; если лимит трафика исчерпан - ipfw deny.
Начинаю. Хочу статистику внешнего трафика от пользователя 192.168.0.2

ipfw flush
ipfw add divert natd ip from 192.168.0.2 to any via rl1 - по-моему считает исходящие пакеты от 192.168.0.2 и интернет.
Ладно, фиг с ним. Дальше идем.
ipfw add divert natd ip from any to 192.168.0.2 via rl1 - не пропускает входящие пакеты

Короче совсем я тут запутался. Как надо? Поможите кто чем может

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "ipfw правила для подсчета трафика"  
Сообщение от Devil_kot email(ok) on 16-Ноя-06, 21:09 
>Приветствую!
>FreeBSD 4.10, nat, ipfw.
>Два интерфейса - rl0 (внутренний) и rl1 (интернет).
>Есть желание организовать биллинг для пользователей локалки. Сам хочу сделать.
>Начинаю. Идея такая - собираю статистику в БД; если лимит трафика исчерпан
>- ipfw deny.
>Начинаю. Хочу статистику внешнего трафика от пользователя 192.168.0.2
>
>ipfw flush
>ipfw add divert natd ip from 192.168.0.2 to any via rl1 -
>по-моему считает исходящие пакеты от 192.168.0.2 и интернет.
>Ладно, фиг с ним. Дальше идем.
>ipfw add divert natd ip from any to 192.168.0.2 via rl1 -
>не пропускает входящие пакеты
>
>Короче совсем я тут запутался. Как надо? Поможите кто чем может
читани документация по ipfw
к примеру хотя бы это:
http://www.opennet.ru/docs/RUS/ipfw/

>ipfw add divert natd ip from 192.168.0.2 to any via rl1 -
>по-моему считает исходящие пакеты от 192.168.0.2 и интернет
нет... просто натит все пакеты от 192.168.0.2 в интернет

для подсчета пакетов в ipfw Есть функция count

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "ipfw правила для подсчета трафика"  
Сообщение от GHopper email on 17-Ноя-06, 05:30 
Вы погодите с COUNT и LOG. Я пока еще правила собрать не могу. Читал я и маны и форумы - как-то там все об общем, не по существу.

Мне бы вот два правила divert, которые пакеты пропускают через NAT от пользователя 192.168.0.2 в большую сеть и обратно. Типа вот этого:

ipfw flust
ipfw add divert natd ip from 192.168.0.2 to any out via rl1
ipfw add divert natd ip from any to 192.168.0.2 in via rl1
ipfw add allow from any to any

Тока не работаить енто!

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "ipfw правила для подсчета трафика"  
Сообщение от YuryD (??) on 17-Ноя-06, 12:48 
>Вы погодите с COUNT и LOG. Я пока еще правила собрать не
>могу. Читал я и маны и форумы - как-то там все
>об общем, не по существу.
>Тока не работаить енто!


Для начала в rc.conf natd_enable="YES" natd_interface="rl0"
natd_flags="-u" firewall_enable="YES" firewall_type="open"

Перезагрузите и посмотрите что у вас с правилами ipfw

А уж затем добавляйте правила count

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "ipfw правила для подсчета трафика"  
Сообщение от Devil_KoT on 17-Ноя-06, 12:55 
>>Вы погодите с COUNT и LOG. Я пока еще правила собрать не
>>могу. Читал я и маны и форумы - как-то там все
>>об общем, не по существу.
>>Тока не работаить енто!
>
>
> Для начала в rc.conf natd_enable="YES" natd_interface="rl0"
>natd_flags="-u" firewall_enable="YES" firewall_type="open"
>
>Перезагрузите и посмотрите что у вас с правилами ipfw
>
> А уж затем добавляйте правила count


ну да... забыл....

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "ipfw правила для подсчета трафика"  
Сообщение от GHopper email on 17-Ноя-06, 14:29 
да вы чего так??!
У меня уже NAT поднят, пользователи интернет через мой шлюз черпают во всю! Осталось только биллинг наладить. Вот с правилами для ipfw и застрял.

Туту еще вопросец - ковыряю netams. Установил, прописал - все как и доках. /usr/local/etc/rc.d/netams-startup.sh start выдает ошибку:
/usr/lebexec/id-elf.so.1: Shared object "libmysqlclient.so.15" not found
Поперся на FreeBSD.org, нашол mysql-client. В исходниках нету, есть только порты. У меня диалап дохлый - вариант не канает. Так вот - что такое mysql-client, где взять исходники под FreeBSD и в чем тут вообще проблема?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "ipfw правила для подсчета трафика"  
Сообщение от YuryD (??) on 17-Ноя-06, 15:04 
>Туту еще вопросец - ковыряю netams. Установил, прописал - все как и
>доках. /usr/local/etc/rc.d/netams-startup.sh start выдает ошибку:
>/usr/lebexec/id-elf.so.1: Shared object "libmysqlclient.so.15" not found
>Поперся на FreeBSD.org, нашол mysql-client. В исходниках нету, есть только порты. У
>меня диалап дохлый - вариант не канает. Так вот - что
>такое mysql-client, где взять исходники под FreeBSD и в чем тут
>вообще проблема?

Это засада, а не проблема. Из портов mysql-client тащится весь дистрибут mysql.

Как вариант - стащите собранный mysql под вашу версию BSD у товарища.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "ipfw правила для подсчета трафика"  
Сообщение от GHopper email on 17-Ноя-06, 15:08 
>>Туту еще вопросец - ковыряю netams. Установил, прописал - все как и
>>доках. /usr/local/etc/rc.d/netams-startup.sh start выдает ошибку:
>>/usr/lebexec/id-elf.so.1: Shared object "libmysqlclient.so.15" not found
>>Поперся на FreeBSD.org, нашол mysql-client. В исходниках нету, есть только порты. У
>>меня диалап дохлый - вариант не канает. Так вот - что
>>такое mysql-client, где взять исходники под FreeBSD и в чем тут
>>вообще проблема?
>
> Это засада, а не проблема. Из портов mysql-client тащится весь дистрибут
>mysql.
>
> Как вариант - стащите собранный mysql под вашу версию BSD у
>товарища.


а может скормить ему libmysqlclient.so.15 и все тут? кто поделится библиотекой?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "ipfw правила для подсчета трафика"  
Сообщение от GHopper email on 17-Ноя-06, 15:05 
Есть правила:

50 divert ip from any to any via rl1
100 allow ip from any to any

Теперь счетчик добавить пытаюсь (для клиента 192.198.0.2)
-исходящий:
ipfw add 60 count ip from 192.168.0.2 to any out via rl1
Считает! Вроде правильно.
-входящий:
ipfw add 70 count ip from any to 192.168.0.2 via rl1
Болт! Воббще ни одного пакета не проходит!!!

Почему? Как надо? Вообще возможно-ли это???

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "ipfw правила для подсчета трафика"  
Сообщение от YuryD (??) on 17-Ноя-06, 15:30 
>Есть правила:
>
>50 divert ip from any to any via rl1
>100 allow ip from any to any

Да там очепятка была, natd_interface внешний должен быть,

а считать так
ipfw add 60 count ip from any to 192.168.0.2 via внешний_инт (инетовский траффик)
ipfw add 61 count ip from 192.168.0.2 to any via внутренн_инт

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "ipfw правила для подсчета трафика"  
Сообщение от GHopper email on 17-Ноя-06, 17:52 
>>Есть правила:
>>
>>50 divert ip from any to any via rl1
>>100 allow ip from any to any
>
> Да там очепятка была, natd_interface внешний должен быть,
>
> а считать так
> ipfw add 60 count ip from any to 192.168.0.2 via внешний_инт
>(инетовский траффик)
> ipfw add 61 count ip from 192.168.0.2 to any via внутренн_инт
>


первое правило не считает нифига. второе чертипойми что считает

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

11. "ipfw правила для подсчета трафика"  
Сообщение от mg (??) on 18-Ноя-06, 00:35 
>>>Есть правила:
>>>
>>>50 divert ip from any to any via rl1
>>>100 allow ip from any to any
>>
>> Да там очепятка была, natd_interface внешний должен быть,
>>
>> а считать так
>> ipfw add 60 count ip from any to 192.168.0.2 via внешний_инт
>>(инетовский траффик)
>> ipfw add 61 count ip from 192.168.0.2 to any via внутренн_инт
>>
>
>
>первое правило не считает нифига. второе чертипойми что считает

Ну начнём с того что правило
ipfw add 60 count ip from any to 192.168.0.2 via внешний_инт
абсалютно бесполезное, сам подумай, откуда внешнему миру знать ваши виртуальные адреса?
а ты пытаешься их считать на внешнем (который смотрит в интерент) интерефейсе, это всёравно что сидя в квартире ждать трамвая - он не приедет :).

Далее ты написал два таких правила
ipfw add divert natd ip from 192.168.0.2 to any out via rl1
ipfw add divert natd ip from any to 192.168.0.2 in via rl1

Первое правило, оно правильное, а второе это опять из той же оперы - ждём трамвая...
Так вот второе правило должно быть таким
ipfw add divert natd ip from any to me in via rl1

можно для надёжности вместо me указать свой реальный IP адрес. В любом случае такое правило обеспечит нормальную работу интерента только для пользователя 192.168.0.2. Правильнее же было бы сделать - это обеспечить интерентом не одного пользователя, а целую подсеть, например так
ipfw add divert natd ip from 192.168.0.2/28 to any out via rl1
ipfw add divert natd ip from any to me in via rl1

это интерент для всех адресов от 192.168.0.1 до 192.168.0.15 включительно

идём дальше ... Если ты хочешь считать интерент пакеты через count то можно конечно сделать так:
ipfw add count ip from 192.168.0.2 to not me via rl0
ipfw add count ip from not me to 192.168.0.2 via rl0

В чём фокус? Дело в том что пакеты приходящие из инета будут иметь обратный адрес не вашего сервера а именно того хоста к которому соединяетесь. И пакеты эти будут приходить через локальный интерефейс а не внешний, на внешнем никаких пакетов от 192.168.0.2 или к 192.168.0.2 быть не должно, и не может быть вообще!
Итого для подсчёта трафика можно добавить следующие строки
ipfw add divert natd ip from 192.168.0.2/28 to any out via rl1
ipfw add divert natd ip from any to me in via rl1
ipfw add count ip from 192.168.0.2 to not me via rl0
ipfw add count ip from not me to 192.168.0.2 via rl0

Что касается netams, для его корректной работы не обходимо установить MySQL, причём как сервер так и клиент, и вообще netams использует в качестве БД (то что вы и хотите) именно MySQL. Мой совет, вся эта байда с MySQL занимает не больше 20МБ, оставьте на ночь включённую к инету машину, пусть она из портов установит всё что ей нужно. Это проще и менее проблематично!
Кроме того netams требует ещё и наличае web сервера, например apache который должен поддерживать режим CGI (netams использует скрипты для генереции страниц , включения и выключения интернета). Так же если уж вы решились на подвиг с установкой netams то рекомендую тогда уж домучать и Admintool к  нему. Он позволяет прям через веб интерфейс начислять деньги на счт клиента за интерент и вести учёт политики тарифов и квот. Вообщем мне понравилось, особенно когда я с дуру начислил себе 100 баксов и поставил тариф 1мб - 1 бакс, и когда вдруг через два дня у меня исчез инет я перекопал все настройки прежде чем понял что сработала система блокировки в netams потому что у меня на счету кончились баксы :).

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

12. "ipfw правила для подсчета трафика"  
Сообщение от GHopper email on 19-Ноя-06, 05:51 
Все конечно хорошо, но только в теории...
Реально имею сейчас следующие правила

    ipfw add 10 count log ip from 192.168.0.2 to any out via rl1
    ipfw add 20 divert natd ip from any to any via rl1
    ipfw add 30 count log ip from any to 192.168.0.2 in via rl1
    ipfw add 40 allow ip from any to any

Вроде работает. Кидаю пинг в большею сеть - счетчики увеличиваются на 1 с каждым пингом.
Тут теперь такая проблема. Лог пишу в файл ipfw.log. Там следующая информация хранится:

Nov 18 13:30:11 sieve /kernel: ipfw: 10 Count ICMP:8.0 192.168.0.2 213.180.204.8 out via rl1
Nov 18 13:30:11 sieve /kernel: ipfw: 60 Count ICMP:0.0 213.180.204.8 192.168.0.2 in via rl1
Nov 18 13:41:43 sieve /kernel: ipfw: Accounting cleared.Nov 18 13:50:25 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1130 in via rl1
Nov 18 13:50:25 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1130 81.26.176.12:6112 out via rl1
Nov 18 13:50:25 sieve /kernel: ipfw: limit 10 reached on entry 10
Nov 18 13:50:26 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1130 in via rl1
Nov 18 13:50:26 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1130 in via rl1
Nov 18 13:50:26 sieve /kernel: ipfw: limit 10 reached on entry 30
Nov 18 20:11:58 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out via rl1
Nov 18 20:11:58 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in via rl1
Nov 18 20:11:58 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out via rl1
Nov 18 20:11:59 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in via rl1
Nov 18 20:11:59 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out via rl1
Nov 18 20:11:59 sieve /kernel: ipfw: limit 10 reached on entry 10
Nov 18 20:11:59 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in via rl1
Nov 18 20:12:04 sieve last message repeated 2 times
Nov 18 20:12:04 sieve /kernel: ipfw: limit 10 reached on entry 30

Так вот, где тут что? что значат limit, где хранится информация о трафике??? Каждая запсь это что?

С netams вопрос закрыт. Справился.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

13. "ipfw правила для подсчета трафика"  
Сообщение от GHopper email on 20-Ноя-06, 10:35 
неужели у нас логи никто не читает?!
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

14. "ipfw правила для подсчета трафика"  
Сообщение от mg (??) on 20-Ноя-06, 19:17 
>неужели у нас логи никто не читает?!

Вместо такого
ipfw add 10 count log ip from 192.168.0.2 to any out via rl1
Надо делать например такое
ipfw add 10 count log logamount 1000 ip from 192.168.0.2 to any out via rl1
где 1000 - это число пакетов за 10 минут (или секунд, не помню, но помоему минут)
А вообще лучше перенаправлять трафик в скрипт или программу для подсчёта, всё же каунт это слишком простая штука не всё позволяет...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

15. "ipfw правила для подсчета трафика"  
Сообщение от GHopper email on 21-Ноя-06, 04:57 
>>неужели у нас логи никто не читает?!
>
>Вместо такого
> ipfw add 10 count log ip from 192.168.0.2 to any out
>via rl1
>Надо делать например такое
> ipfw add 10 count log logamount 1000 ip from 192.168.0.2 to
>any out via rl1
>где 1000 - это число пакетов за 10 минут (или секунд, не
>помню, но помоему минут)
>А вообще лучше перенаправлять трафик в скрипт или программу для подсчёта, всё
>же каунт это слишком простая штука не всё позволяет...


Здесь вот хотелось-бы поподробнее. Чего я не смогу получить через count, какие проблемы меня ожидают? Как лучше вести учет трафика без чужих решений. Будет-ли работать divert /etc/my.sh конструкция для перенаправления логов в мой скрипт (если нет, то как надо)?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

16. "ipfw правила для подсчета трафика"  
Сообщение от GHopper email on 21-Ноя-06, 16:05 
>>неужели у нас логи никто не читает?!
>
>Вместо такого
> ipfw add 10 count log ip from 192.168.0.2 to any out
>via rl1
>Надо делать например такое
> ipfw add 10 count log logamount 1000 ip from 192.168.0.2 to
>any out via rl1
>где 1000 - это число пакетов за 10 минут (или секунд, не
>помню, но помоему минут)
>А вообще лучше перенаправлять трафик в скрипт или программу для подсчёта, всё
>же каунт это слишком простая штука не всё позволяет...


добавил logamount 1000. Смотрю лог:
Nov 21 21:04:47 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1051 64.12.25.174:5190 out via rl1
Nov 21 21:04:47 sieve /kernel: ipfw: 30 Count TCP 64.12.25.174:5190 192.168.0.2:1051 in via rl1
Nov 21 21:04:49 sieve /kernel: ipfw: 10 Count ICMP:8.0 192.168.0.2 213.180.204.8 out via rl1
Nov 21 21:04:49 sieve /kernel: ipfw: 30 Count ICMP:0.0 213.180.204.8 192.168.0.2 in via rl1
Nov 21 21:04:50 sieve /kernel: ipfw: 10 Count ICMP:8.0 192.168.0.2 213.180.204.8 out via rl1
Nov 21 21:04:50 sieve /kernel: ipfw: 30 Count ICMP:0.0 213.180.204.8 192.168.0.2 in via rl1
Nov 21 21:04:51 sieve /kernel: ipfw: 10 Count ICMP:8.0 192.168.0.2 213.180.204.8 out via rl1
Nov 21 21:04:51 sieve /kernel: ipfw: 30 Count ICMP:0.0 213.180.204.8 192.168.0.2 in via rl1
Nov 21 21:04:52 sieve /kernel: ipfw: 10 Count ICMP:8.0 192.168.0.2 213.180.204.8 out via rl1
Nov 21 21:04:52 sieve /kernel: ipfw: 30 Count ICMP:0.0 213.180.204.8 192.168.0.2 in via rl1
Nov 21 21:04:59 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1052 205.188.1.116:5190 out via rl1
Nov 21 21:04:59 sieve /kernel: ipfw: 30 Count TCP 205.188.1.116:5190 192.168.0.2:1052 in via rl1
И где тут количество переданных пакетов???

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

17. "ipfw правила для подсчета трафика"  
Сообщение от GHopper email on 21-Ноя-06, 16:39 
Глянул на Linux`овский iptables -L, там вывод имеет следующий вид:

    pkts      bytes target     prot opt in     out     source               destination
       0        0 RETURN     all  --  *      *       192.168.0.3          0.0.0.0/0
       0        0 RETURN     all  --  *      *       192.168.0.4          0.0.0.0/0
       0        0 RETURN     all  --  *      *       192.168.0.7          0.0.0.0/0
       0        0 RETURN     all  --  *      *       192.168.0.9          0.0.0.0/0
       0        0 RETURN     all  --  *      *       192.168.0.10         0.0.0.0/0
       0        0 RETURN     all  --  *      *       192.168.0.11         0.0.0.0/0
       0        0 RETURN     all  --  *      *       192.168.0.12         0.0.0.0/0
       0        0 RETURN     all  --  *      *       192.168.0.13         0.0.0.0/0
       0        0 RETURN     all  --  *      *       192.168.0.15         0.0.0.0/0
       0        0 RETURN     all  --  *      *       192.168.0.16         0.0.0.0/0
       0        0 RETURN     all  --  *      *       192.168.0.18         0.0.0.0/0
       0        0 RETURN     all  --  *      *       192.168.0.19         0.0.0.0/0
       0        0 RETURN     all  --  *      *       192.168.0.20         0.0.0.0/0
       0        0 RETURN     all  --  *      *       192.168.0.21         0.0.0.0/0
       0        0 RETURN     all  --  *      *       192.168.0.23         0.0.0.0/0
       0        0 RETURN     all  --  *      *       192.168.0.24         0.0.0.0/0

У меня ipfw show выводит
00010  103  12901 count log logamount 1000 ip from 192.168.0.2 to any out xmit rl1
00015  655 185631 divert 199 ip from any to any out xmit rl0
00020  734 115660 divert 8668 ip from any to any via rl1
00025  642  63905 divert 199 ip from any to any in recv rl0
00030  120  39488 count log logamount 1000 ip from any to 192.168.0.2 in recv rl1
00040 2031 365196 allow ip from any to any
65535    0      0 deny ip from any to any
чего не вполне достаточно! Есть-ли возможность вывести информацию о направлениях (откуда и куда) средствами ipfw?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

19. "ipfw правила для подсчета трафика"  
Сообщение от mg (??) on 21-Ноя-06, 17:19 
>Глянул на Linux`овский iptables -L, там вывод имеет следующий вид:
>
>    pkts      bytes target
>    prot opt in    
>out     source      
>         destination
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.3      
>   0.0.0.0/0
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.4      
>   0.0.0.0/0
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.7      
>   0.0.0.0/0
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.9      
>   0.0.0.0/0
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.10      
>  0.0.0.0/0
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.11      
>  0.0.0.0/0
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.12      
>  0.0.0.0/0
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.13      
>  0.0.0.0/0
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.15      
>  0.0.0.0/0
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.16      
>  0.0.0.0/0
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.18      
>  0.0.0.0/0
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.19      
>  0.0.0.0/0
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.20      
>  0.0.0.0/0
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.21      
>  0.0.0.0/0
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.23      
>  0.0.0.0/0
>       0    
>   0 RETURN     all  
>--  *      *  
>    192.168.0.24      
>  0.0.0.0/0
>
>У меня ipfw show выводит
>00010  103  12901 count log logamount 1000 ip from 192.168.0.2
>to any out xmit rl1
>00015  655 185631 divert 199 ip from any to any out
>xmit rl0
>00020  734 115660 divert 8668 ip from any to any via
>rl1
>00025  642  63905 divert 199 ip from any to any
>in recv rl0
>00030  120  39488 count log logamount 1000 ip from any
>to 192.168.0.2 in recv rl1
>00040 2031 365196 allow ip from any to any
>65535    0      0 deny
>ip from any to any
>чего не вполне достаточно! Есть-ли возможность вывести информацию о направлениях (откуда и
>куда) средствами ipfw?

Конечно есть, как говорится всё в твоих руках , просто добавь к правилам префикс in
Но я бы тогда уж ещё и добавил skipto Для того чтоб не прекрашалась проверка правил у полученного пакета на правиле котрое занимается только подсчётом.

Далее байты котрые здесь пишутся это 3 колонка, что такое awk знаешь? Так вот тебе придётся под кроном повесить скрипт который раз скажем в 5 минут а то и чаще должен делать следующее
1. Заблокировать интеренет (чтоб не было утечек трафика)
2. Вывести список ipfw show и в обработать в нём кол-во пакетов и байт полученный и отправленных и записать это в файл
4. Выполнить сброс (обнулить счётчики ipfw) статистики ipfw resetlog
3. Разблокировать интерент

Что касается диверта в свой скрипт - это реально, но надо разобраться с таким понятием как pipe и его портом. Если разберётесь то сможете перенаправлять весь трафик непосредственно к себе в скрипт, вот только я не очень понял как вы там собираетесь его обрабатывать неужто средствами шел? (я в шоке).
А вообще если уж решили считать что-то то не проще ли капитально разобраться с чем-то что несколько сложнее чем ipfw + count ? Например trafd тот же bpft .
оно и более гибкое и считает быстрее и не надо ничего останавливать  

И кстати
http://www.linux.org.ru/view-message.jsp?msgid=94019&back=view-group.jsp%3Fgroup%3D1340%26offset%3D9810&anonymous=hide
вроде в ыпо его стопам идёте, почитайте... Может поможет
Удачи

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

18. "ipfw правила для подсчета трафика"  
Сообщение от mg (??) on 21-Ноя-06, 16:52 
>>>неужели у нас логи никто не читает?!
>>
>>Вместо такого
>> ipfw add 10 count log ip from 192.168.0.2 to any out
>>via rl1
>>Надо делать например такое
>> ipfw add 10 count log logamount 1000 ip from 192.168.0.2 to
>>any out via rl1
>>где 1000 - это число пакетов за 10 минут (или секунд, не
>>помню, но помоему минут)
>>А вообще лучше перенаправлять трафик в скрипт или программу для подсчёта, всё
>>же каунт это слишком простая штука не всё позволяет...
>
>
>добавил logamount 1000. Смотрю лог:
>Nov 21 21:04:47 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1051 64.12.25.174:5190 out
>via rl1
>Nov 21 21:04:47 sieve /kernel: ipfw: 30 Count TCP 64.12.25.174:5190 192.168.0.2:1051 in
>via rl1
>Nov 21 21:04:49 sieve /kernel: ipfw: 10 Count ICMP:8.0 192.168.0.2 213.180.204.8 out
>via rl1
>Nov 21 21:04:49 sieve /kernel: ipfw: 30 Count ICMP:0.0 213.180.204.8 192.168.0.2 in
>via rl1
>Nov 21 21:04:50 sieve /kernel: ipfw: 10 Count ICMP:8.0 192.168.0.2 213.180.204.8 out
>via rl1
>Nov 21 21:04:50 sieve /kernel: ipfw: 30 Count ICMP:0.0 213.180.204.8 192.168.0.2 in
>via rl1
>Nov 21 21:04:51 sieve /kernel: ipfw: 10 Count ICMP:8.0 192.168.0.2 213.180.204.8 out
>via rl1
>Nov 21 21:04:51 sieve /kernel: ipfw: 30 Count ICMP:0.0 213.180.204.8 192.168.0.2 in
>via rl1
>Nov 21 21:04:52 sieve /kernel: ipfw: 10 Count ICMP:8.0 192.168.0.2 213.180.204.8 out
>via rl1
>Nov 21 21:04:52 sieve /kernel: ipfw: 30 Count ICMP:0.0 213.180.204.8 192.168.0.2 in
>via rl1
>Nov 21 21:04:59 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1052 205.188.1.116:5190 out
>via rl1
>Nov 21 21:04:59 sieve /kernel: ipfw: 30 Count TCP 205.188.1.116:5190 192.168.0.2:1052 in
>via rl1
>И где тут количество переданных пакетов???

Ха! А кто тебе сказал что тут будет кол-во пакетов? Здесь каждая строчка это один пакет. При этом заметь здесь даже нету размера пакета.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

20. "ipfw правила для подсчета трафика"  
Сообщение от GHopper email on 21-Ноя-06, 17:47 
Это все, что угодно, но не одни пакет! ipfw show показывает число пакетов за тысячи, а в лог пишутся лишь десятки... БОЛЬШАЯ часть не протоколируется!
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

21. "ipfw правила для подсчета трафика"  
Сообщение от magr email(??) on 21-Ноя-06, 18:24 
>Это все, что угодно, но не одни пакет! ipfw show показывает число
>пакетов за тысячи, а в лог пишутся лишь десятки... БОЛЬШАЯ часть
>не протоколируется!

каждая строка - один пакет (+ учитывайте строки last message repeated N times )
протоколируется то, что вы попросили протоколировать (man по ipfw, директива log)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

22. "ipfw правила для подсчета трафика"  
Сообщение от mg (??) on 21-Ноя-06, 22:10 
>Это все, что угодно, но не одни пакет! ipfw show показывает число
>пакетов за тысячи, а в лог пишутся лишь десятки... БОЛЬШАЯ часть
>не протоколируется!

Ну вы даёте, разве у вас все правила указаны с диррективой log logamount 1000 ? Видите, не все, поэтому и в лог попадают не все, а лишь те пакеты которые сработали хоть на одном правиле с опциями log logamount 1000 .
Повторюсь ещё раз, через лог считать пакеты - крайне сложно, ведь вы абсалютно не знаете их длину (можно только догадываться но быть уверенным... не получится). Вот смотрите тот же пинг по умолчанию имеет длину 64 но что запишется в лог если кто-то начнт пинг с опцией -l под виндой или -s под юниксом ? Вот и попробуйте увидите что в логах не появится запись о длдине пакета.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

23. "ipfw правила для подсчета трафика"  
Сообщение от GHopper email on 22-Ноя-06, 17:55 
Значит так.
ipfw zero, обнуляю лог ipfw, пользую интернет. Через некоторое время:
ipfw show > ipfw.show

00010  103  12901 count log logamount 1000 ip from 192.168.0.2 to any out xmit rl1
00015  655 185631 divert 199 ip from any to any out xmit rl0
00020  734 115660 divert 8668 ip from any to any via rl1
00025  642  63905 divert 199 ip from any to any in recv rl0
00030  120  39488 count log logamount 1000 ip from any to 192.168.0.2 in recv rl1
00040 2031 365196 allow ip from any to any
65535    0      0 deny ip from any to any

/var/log/ipfw/ipfw.log
Nov 22 20:17:40 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out via rl1
Nov 22 20:17:40 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in via rl1
Nov 22 20:17:40 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out via rl1
Nov 22 20:17:40 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out via rl1
Nov 22 20:17:40 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in via rl1
Nov 22 20:17:40 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out via rl1
Nov 22 20:17:40 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in via rl1
Nov 22 20:17:40 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out via rl1
Nov 22 20:17:40 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in via rl1
Nov 22 20:17:41 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out via rl1
Nov 22 20:17:42 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out via rl1
Nov 22 20:17:42 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in via rl1
Nov 22 20:17:42 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out via rl1
Nov 22 20:17:42 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in via rl1
Nov 22 20:17:42 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out via rl1
Nov 22 20:17:42 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in via rl1
Nov 22 20:17:42 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out via rl1
Nov 22 20:17:42 sieve /kernel: ipfw: limit 10 reached on entry 10
Nov 22 20:17:42 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in via rl1
Nov 22 20:17:46 sieve last message repeated 2 times
Nov 22 20:17:46 sieve /kernel: ipfw: limit 10 reached on entry 30

Число строк в логе не соответствует числу переданных пакетов! Куда деются???

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

24. "ipfw правила для подсчета трафика"  
Сообщение от mg (??) on 22-Ноя-06, 20:18 
>Значит так.
>ipfw zero, обнуляю лог ipfw, пользую интернет. Через некоторое время:
>ipfw show > ipfw.show
>
>00010  103  12901 count log logamount 1000 ip from 192.168.0.2
>to any out xmit rl1
>00015  655 185631 divert 199 ip from any to any out
>xmit rl0
>00020  734 115660 divert 8668 ip from any to any via
>rl1
>00025  642  63905 divert 199 ip from any to any
>in recv rl0
>00030  120  39488 count log logamount 1000 ip from any
>to 192.168.0.2 in recv rl1
>00040 2031 365196 allow ip from any to any
>65535    0      0 deny
>ip from any to any
>
>/var/log/ipfw/ipfw.log
>Nov 22 20:17:40 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>via rl1
>Nov 22 20:17:40 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>via rl1
>Nov 22 20:17:40 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>via rl1
>Nov 22 20:17:40 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>via rl1
>Nov 22 20:17:40 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>via rl1
>Nov 22 20:17:40 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>via rl1
>Nov 22 20:17:40 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>via rl1
>Nov 22 20:17:40 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>via rl1
>Nov 22 20:17:40 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>via rl1
>Nov 22 20:17:41 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>via rl1
>Nov 22 20:17:42 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>via rl1
>Nov 22 20:17:42 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>via rl1
>Nov 22 20:17:42 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>via rl1
>Nov 22 20:17:42 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>via rl1
>Nov 22 20:17:42 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>via rl1
>Nov 22 20:17:42 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>via rl1
>Nov 22 20:17:42 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>via rl1
>Nov 22 20:17:42 sieve /kernel: ipfw: limit 10 reached on entry 10
>
>Nov 22 20:17:42 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>via rl1
>Nov 22 20:17:46 sieve last message repeated 2 times
>Nov 22 20:17:46 sieve /kernel: ipfw: limit 10 reached on entry 30
>
>
>Число строк в логе не соответствует числу переданных пакетов! Куда деются???

Э... невольно вспоминается анекдот...
- Доктор! Меня игнорируют!
- Следующий!

К чему анекдот, вам же тут написали что у вас не все правила указаны с опцией log logamount 1000, вы же опять приводите свои правила в которых не везде есть эта опция и опять задаёте тот же самый вопрос. Я не понимаю, месье тонкий извращенец?
Вам что прям указать те ваши правила где нет такой опции? Да без проблем у вас таких правил 4. Вот они :
00015  655 185631 divert 199 ip from any to any out xmit rl0
00020  734 115660 divert 8668 ip from any to any via rl1
00025  642  63905 divert 199 ip from any to any in recv rl0
00040 2031 365196 allow ip from any to any

Вы теперь видите что у этих ВАШИХ правил НЕТУ ОПЦИЙ count и НЕТУ опций log logamount 1000 или не видите ?  Если не видите то извиняйте вам не сюда вам к акулисту ...

С другой стороны я погляжу у вас появились правила используемые при настройке Netams, зачем же вам тогда считатать что-то через логи если вы уже используете Netams?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

25. "ipfw правила для подсчета трафика"  
Сообщение от GHopper email on 23-Ноя-06, 05:55 
>>Значит так.
>>ipfw zero, обнуляю лог ipfw, пользую интернет. Через некоторое время:
>>ipfw show > ipfw.show
>>
>>00010  103  12901 count log logamount 1000 ip from 192.168.0.2
>>to any out xmit rl1
>>00015  655 185631 divert 199 ip from any to any out
>>xmit rl0
>>00020  734 115660 divert 8668 ip from any to any via
>>rl1
>>00025  642  63905 divert 199 ip from any to any
>>in recv rl0
>>00030  120  39488 count log logamount 1000 ip from any
>>to 192.168.0.2 in recv rl1
>>00040 2031 365196 allow ip from any to any
>>65535    0      0 deny
>>ip from any to any
>>
>>/var/log/ipfw/ipfw.log
>>Nov 22 20:17:40 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>>via rl1
>>Nov 22 20:17:40 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>>via rl1
>>Nov 22 20:17:40 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>>via rl1
>>Nov 22 20:17:40 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>>via rl1
>>Nov 22 20:17:40 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>>via rl1
>>Nov 22 20:17:40 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>>via rl1
>>Nov 22 20:17:40 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>>via rl1
>>Nov 22 20:17:40 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>>via rl1
>>Nov 22 20:17:40 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>>via rl1
>>Nov 22 20:17:41 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>>via rl1
>>Nov 22 20:17:42 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>>via rl1
>>Nov 22 20:17:42 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>>via rl1
>>Nov 22 20:17:42 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>>via rl1
>>Nov 22 20:17:42 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>>via rl1
>>Nov 22 20:17:42 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>>via rl1
>>Nov 22 20:17:42 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>>via rl1
>>Nov 22 20:17:42 sieve /kernel: ipfw: 10 Count TCP 192.168.0.2:1032 81.26.176.12:6112 out
>>via rl1
>>Nov 22 20:17:42 sieve /kernel: ipfw: limit 10 reached on entry 10
>>
>>Nov 22 20:17:42 sieve /kernel: ipfw: 30 Count TCP 81.26.176.12:6112 192.168.0.2:1032 in
>>via rl1
>>Nov 22 20:17:46 sieve last message repeated 2 times
>>Nov 22 20:17:46 sieve /kernel: ipfw: limit 10 reached on entry 30
>>
>>
>>Число строк в логе не соответствует числу переданных пакетов! Куда деются???
>
>Э... невольно вспоминается анекдот...
>- Доктор! Меня игнорируют!
>- Следующий!
>
>К чему анекдот, вам же тут написали что у вас не все
>правила указаны с опцией log logamount 1000, вы же опять приводите
>свои правила в которых не везде есть эта опция и опять
>задаёте тот же самый вопрос. Я не понимаю, месье тонкий извращенец?
>
>Вам что прям указать те ваши правила где нет такой опции? Да
>без проблем у вас таких правил 4. Вот они :
>00015  655 185631 divert 199 ip from any to any out
>xmit rl0
>00020  734 115660 divert 8668 ip from any to any via
>rl1
>00025  642  63905 divert 199 ip from any to any
>in recv rl0
>00040 2031 365196 allow ip from any to any
>
>Вы теперь видите что у этих ВАШИХ правил НЕТУ ОПЦИЙ count и
>НЕТУ опций log logamount 1000 или не видите ?  Если
>не видите то извиняйте вам не сюда вам к акулисту ...
>
>
>С другой стороны я погляжу у вас появились правила используемые при настройке
>Netams, зачем же вам тогда считатать что-то через логи если вы
>уже используете Netams?

Я, наверное, совсем дурак!? Но всеже! У меня есть ДВА правила, которые имеют log logamount 1000. Такие:

00010  103  12901 count log logamount 1000 ip from 192.168.0.2
...
00030  120  39488 count log logamount 1000 ip from any
...

Смотрю на них. Число переданных пакетов - 103+120=223 (надеюсь, что хоть с арифметикой у меня в порядке). Тоесть в лог-файле должно быть 223 записи (по одной на каждый пакет). Открываю свой лог, считаю... не хватает! Куда прпадают записи из лога???

Еще вопрос - есть php-скрипт, который запускается каждый час собирает статистику с правил 10 и 30, добавляет ее к собранной до этого и сохраняет в файл. Обнуляет правила. Скрипт запускается кроном. Будет-ли он запускаться при выполнении команды shutdown -h now, или в этой ситуации статистика с момента последнего снятия теряется?

По поводу netms`a - я c FreeBSD знаком чуть больше месяца, я молод и мне хочется разобраться в этой системе поглубже. Написав свою систему биллинга я узнаю кое-что о тонкастях ОС, получу опыт написания скриптов и вообще... САМ! Надо ведь с чего-то начинать.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

26. "ipfw правила для подсчета трафика"  
Сообщение от mg (??) on 23-Ноя-06, 13:07 
>Я, наверное, совсем дурак!? Но всеже! У меня есть ДВА правила, которые
>имеют log logamount 1000. Такие:
>
>00010  103  12901 count log logamount 1000 ip from 192.168.0.2
>
>...
>00030  120  39488 count log logamount 1000 ip from any
>
>...

http://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi?az=show_thread&omm=21&om=70322&forum=vsluhforumID1
Что там написано? А написано что иногда система будет писать что последнее сообщение было повторено несколько раз.
Кроме того у вас в логах опять встречается такое
Nov 22 20:17:46 sieve /kernel: ipfw: limit 10 reached on entry 30
т.е. у вас почему то предел всёравно выставлен на 10, а не на 1000
Я не знаю точно от чего это у вас (ошибка в параметрах правила, или глюк ядра), но я знаю точно что такого не будет если в ядре намёртво прописать это
options IPFIREWALL_VERBOSE_LIMIT=1000

>Еще вопрос - есть php-скрипт, который запускается каждый час собирает статистику с
>правил 10 и 30, добавляет ее к собранной до этого и
>сохраняет в файл. Обнуляет правила. Скрипт запускается кроном. Будет-ли он запускаться
>при выполнении команды shutdown -h now, или в этой ситуации статистика
>с момента последнего снятия теряется?
Скорее всего потеряется

>По поводу netms`a - я c FreeBSD знаком чуть больше месяца, я
>молод и мне хочется разобраться в этой системе поглубже. Написав свою
>систему биллинга я узнаю кое-что о тонкастях ОС, получу опыт написания
>скриптов и вообще... САМ! Надо ведь с чего-то начинать.
Это правильно! Но лучше сначало разобраться со существующими системами...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру