ipfw table

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
Burn_
мл. сержант
Сообщения: 84
Зарегистрирован: 2007-12-03 9:19:54
Откуда: Алт.край, г.Бийск
Контактная информация:

ipfw table

Непрочитанное сообщение Burn_ » 2009-02-25 18:40:46

День добрый.
Столкнулся с такой проблемой: на шлюзе под FreeBSD, разрешаю ходить в Интернет только тем кто есть в "table 1", ip в таблицу добавляются/убираются биллингом, все работает хорошо, но было пара сбоев, ip юзера в "table 1" нет, а ipfw его пропускает, причем пускает не только его, а всех. После очистки таблицы биллинг заполнил ее снова, список стал аналогичным тому что был до очистки, но в Интернет могут идти только те что есть в "table 1", как собственно и должно быть :) .
Аналогичный сбой был примерно неделю назад, одно из первых правил запрещало ходить с/на тех кто в "table 2" (СПАМеры, ФЛУДер'асты и т.п.), в один прекрасный момент ipfw стал пропускать всех юзеров в Интернет :( , помогла чистка "table 2" .
Сделал вывод, что если записать большое кол-во (~1500-2000) ip в таблицы - правила в ipfw срабатывают в независимости от содержания таблиц :(
Может ошибаюсь, но пока других объяснений не вижу.
Помогите разобраться, юзеров в сети все больше не выделять же на каждую 1000 по серверу....

Код: Выделить всё

# uname -a
FreeBSD zenon 7.1-PRERELEASE FreeBSD 7.1-PRERELEASE #1: Wed Dec 17 21:55:37 NOVT 2008     root@zenon:/usr/obj/usr/src/sys/ZENON.2008-12-05  i386
To know everything is to know nothing! / Я знаю только одно, что я ничего не знаю! © Сократ

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.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/

Аватара пользователя
godlike
рядовой
Сообщения: 43
Зарегистрирован: 2007-09-05 10:13:17
Откуда: Киев
Контактная информация:

Re: ipfw table

Непрочитанное сообщение godlike » 2009-02-25 20:14:29

Код: Выделить всё

#ipfw list
в студию.

Код: Выделить всё

deny ip from not table\(1\) to any in via ${gw_int} 
есть?
Делай, что дожен - и будь, что будет!

snorlov
подполковник
Сообщения: 3829
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Re: ipfw table

Непрочитанное сообщение snorlov » 2009-02-25 21:07:06

Где-то читал о том, как увеличить буфер в ipfw, кажется где-то на opennet.ru поищи там...

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: ipfw table

Непрочитанное сообщение hizel » 2009-02-26 0:22:42

я бы для начала до RELEASE обновиля :unknown:
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Аватара пользователя
zingel
beastie
Сообщения: 6204
Зарегистрирован: 2007-10-30 3:56:49
Откуда: Moscow
Контактная информация:

Re: ipfw table

Непрочитанное сообщение zingel » 2009-02-26 2:02:36

не нужно на опеннете ничего искать, поищите по-форуму, я даже diff давал как запас под очередь сделать больше
Z301171463546 - можно пожертвовать мне денег

Аватара пользователя
manefesto
Группенфюррер
Сообщения: 6934
Зарегистрирован: 2007-07-20 8:27:30
Откуда: Пермь
Контактная информация:

Re: ipfw table

Непрочитанное сообщение manefesto » 2009-02-26 8:26:05

а PR писал ?
я такой яростный шо аж пиздеЦ
Изображение

Аватара пользователя
zingel
beastie
Сообщения: 6204
Зарегистрирован: 2007-10-30 3:56:49
Откуда: Moscow
Контактная информация:

Re: ipfw table

Непрочитанное сообщение zingel » 2009-02-26 8:35:34

пока до них дойдёт.....я для души, а не для pr....тем более для себя.
Z301171463546 - можно пожертвовать мне денег

snorlov
подполковник
Сообщения: 3829
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Re: ipfw table

Непрочитанное сообщение snorlov » 2009-02-26 10:55:41

Подумаешь, что долго будет доходить, сам то можешь забыть, а вспоминать это бывает так трудно...

Аватара пользователя
Burn_
мл. сержант
Сообщения: 84
Зарегистрирован: 2007-12-03 9:19:54
Откуда: Алт.край, г.Бийск
Контактная информация:

Re: ipfw table

Непрочитанное сообщение Burn_ » 2009-02-26 11:41:00

Не на форуме не в google не нашел как запас под очередь сделать больше.
Обновлять мир не хотел, т.к. возможно возникнут другие проблемы, а оставлять пару тысяч юзеров без Интернета не есть гуд. :(
В данный момент поставил обновлять....
Еще грешу на архитектуру, т.к. из-за особенности биллинга пришлось ставить 32-х битную, а процессор 64-х битный.

Код: Выделить всё

$ dmesg | grep CPU:
CPU: Intel(R) Xeon(R) CPU           E5405  @ 2.00GHz (2006.98-MHz K8-class CPU)
To know everything is to know nothing! / Я знаю только одно, что я ничего не знаю! © Сократ

Аватара пользователя
zingel
beastie
Сообщения: 6204
Зарегистрирован: 2007-10-30 3:56:49
Откуда: Moscow
Контактная информация:

Re: ipfw table

Непрочитанное сообщение zingel » 2009-02-26 11:44:22

непричем тут архитектура, хоть так делать и не нужно, дело в ipfw
Z301171463546 - можно пожертвовать мне денег

Аватара пользователя
Burn_
мл. сержант
Сообщения: 84
Зарегистрирован: 2007-12-03 9:19:54
Откуда: Алт.край, г.Бийск
Контактная информация:

Re: ipfw table

Непрочитанное сообщение Burn_ » 2009-02-26 15:21:40

zingel писал(а):непричем тут архитектура, хоть так делать и не нужно, дело в ipfw
знаю что не нужно, но вставать не хотела, а времени разбираться не было - пришлось... поздней на другой машине всё поставил на 64-ю, но эту трогать не стал...
Обновил мир, пять минут - полёт нормальный, помогло/нет увидим....
Все таки хотелось бы узнать есть ли ограничения на кол-во ip в таблицах.
To know everything is to know nothing! / Я знаю только одно, что я ничего не знаю! © Сократ

Аватара пользователя
Burn_
мл. сержант
Сообщения: 84
Зарегистрирован: 2007-12-03 9:19:54
Откуда: Алт.край, г.Бийск
Контактная информация:

Re: ipfw table

Непрочитанное сообщение Burn_ » 2009-03-06 12:10:44

Обновил мир до СТАБЛЕ

Код: Выделить всё

FreeBSD zenon 7.1-STABLE FreeBSD 7.1-STABLE #3: Thu Mar  5 22:22:58 NOVT 2009     root@zenon:/usr/obj/usr/src/sys/ZENON.2008-12-05  i386
Не помогло :(
В табле1 около 980 ip , есть ещё парочка таблиц в них около 300-500 ip.
Ситуация повторилась: ip в таблице нет, а правило по нему срабатывает, проверял ЛОГированием

Код: Выделить всё

1100 skipto 1900 log logamount 10000 ip from table(1) to any out via vlan97
при удаление из таблице - пишет что нет его
добавляю затем удаляю - все ровно правило срабатывает
после флуша перестало

Сейчас увеличил буфер:

Код: Выделить всё

net.inet.ip.dummynet.hash_size=1024
net.inet.ip.dummynet.max_chain_len=32
Поможет, нет отпишусь....
To know everything is to know nothing! / Я знаю только одно, что я ничего не знаю! © Сократ

Аватара пользователя
Burn_
мл. сержант
Сообщения: 84
Зарегистрирован: 2007-12-03 9:19:54
Откуда: Алт.край, г.Бийск
Контактная информация:

Re: ipfw table

Непрочитанное сообщение Burn_ » 2009-03-07 9:38:30

Увеличение буфера не помогло :(
Как временное решение - буду уменьшать кол-во ip в табле1....
To know everything is to know nothing! / Я знаю только одно, что я ничего не знаю! © Сократ

Аватара пользователя
Burn_
мл. сержант
Сообщения: 84
Зарегистрирован: 2007-12-03 9:19:54
Откуда: Алт.край, г.Бийск
Контактная информация:

Re: ipfw table

Непрочитанное сообщение Burn_ » 2009-05-30 17:49:06

Подобную проблему нашел в PR :
http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/127209

У себя решил проблему написанием скрипта для биллинга который не допускает заполнений таблиц боле чем на 300 записей.
To know everything is to know nothing! / Я знаю только одно, что я ничего не знаю! © Сократ

paradox
проходил мимо
Сообщения: 11620
Зарегистрирован: 2008-02-21 18:15:41

Re: ipfw table

Непрочитанное сообщение paradox » 2009-05-30 17:54:26

кто то показывал какую константу нужно менять в ядре и пересобирать
если вы про лимит таблицы

Аватара пользователя
Burn_
мл. сержант
Сообщения: 84
Зарегистрирован: 2007-12-03 9:19:54
Откуда: Алт.край, г.Бийск
Контактная информация:

Re: ipfw table

Непрочитанное сообщение Burn_ » 2009-05-30 21:16:46

Дело не в лимите. При "большом" потоке Интернет трафика и "больших" таблиц - правила с table срабатывают независимо от ip в таблице, т.е. таблицу можно даже очистить, а правило будет срабатывать. Точную зависимость от трафика и кол-ва ip в таблице не вычислял, т.к. сервера обслуживают пару тысяч клиентов. Если память не изменяет, при трафике примерно до 20Mb/s и кол-ва ip > 5000 - проблем не было , но при трафике больше 40Mb/s и кол-ва ip > 1400 - таблицы "сглючивают".
To know everything is to know nothing! / Я знаю только одно, что я ничего не знаю! © Сократ

Аватара пользователя
buryanov
ст. сержант
Сообщения: 311
Зарегистрирован: 2008-04-29 13:41:48
Откуда: Харьков
Контактная информация:

Re: ipfw table

Непрочитанное сообщение buryanov » 2009-05-31 15:03:20

Может попробовать увеличить параметр IPFW_TABLES_MAX в файле /usr/src/sys/netinet/ip_fw.h и перекомпилить ядро, то возможно это поможет Вам, хотя неуверен, он отвечает за колличество таблиц
Дмитрий.
buryanov*ukr.net
icq# 118639660; skype: buryanov

Аватара пользователя
Burn_
мл. сержант
Сообщения: 84
Зарегистрирован: 2007-12-03 9:19:54
Откуда: Алт.край, г.Бийск
Контактная информация:

Re: ipfw table

Непрочитанное сообщение Burn_ » 2009-05-31 15:40:38

buryanov писал(а):Может попробовать увеличить параметр IPFW_TABLES_MAX в файле /usr/src/sys/netinet/ip_fw.h и перекомпилить ядро, то возможно это поможет Вам, хотя неуверен, он отвечает за колличество таблиц
Это БАГ - его нужно исправлять. Увеличение каких либо лимитов, думаю, не поможет.
To know everything is to know nothing! / Я знаю только одно, что я ничего не знаю! © Сократ

qwe
рядовой
Сообщения: 35
Зарегистрирован: 2008-07-29 10:40:42
Откуда: Симферополь
Контактная информация:

Re: ipfw table

Непрочитанное сообщение qwe » 2009-05-31 17:30:34

Когда возникнет проблема, покажите, пожалуйста,
ipfw table 1 list | grep -v "/32"

или

ipfw table 1 list | grep -v 32

Аватара пользователя
Burn_
мл. сержант
Сообщения: 84
Зарегистрирован: 2007-12-03 9:19:54
Откуда: Алт.край, г.Бийск
Контактная информация:

Re: ipfw table

Непрочитанное сообщение Burn_ » 2009-06-02 18:22:49

qwe писал(а):Когда возникнет проблема, покажите, пожалуйста,
ipfw table 1 list | grep -v "/32"

или

ipfw table 1 list | grep -v 32
Сейчас проблемы нет, т.к. не допускаю больших таблиц. Специально ломать не буду, т.к. сервер обслуживает более 2000 клиентов...
Во время выяснения причины просматривал маски - больше /27 не было , были только те, что должны были быть.
To know everything is to know nothing! / Я знаю только одно, что я ничего не знаю! © Сократ