URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 95725
[ Назад ]

Исходное сообщение
"ipfw глючит правило deny"

Отправлено vovka32 , 11-Авг-14 14:35 
Есть маршрутизатор на базе  FreeBSD 9.1, используется для резки скорости и блокировки клиентов. Проблема заключается в том, что периодически правило 1000 начинает блокировать весь исходящий трафик от сети 217.137.48.0/20, соотвецтвенно все клиенты перестают работать. Решается проблема только удалением 1000 правила.

В таблице 120 при этом ничего криминального нет(сокращенное содержание таблицы, в оригинале около 300 ip с 32-ой маской из диапазона 217.137.48.0/20):
217.137.48.162/32 0
217.137.49.250/32 0
217.137.50.0/32 0
217.137.51.9/32 0
217.137.52.14/32 0
217.137.53.5/32 0
217.137.54.8/32 0
217.137.55.2/32 0
217.137.56.2/32 0
217.137.57.6/32 0
217.137.58.218/32 0
217.137.61.34/32 0

И собственно вывод ipfw show:

00100    22385    65167672 allow ip from any to any via lo0
00101        0           0 deny ip from any to 127.0.0.0/8
00102        0           0 deny ip from 127.0.0.0/8 to any
00104       20        1680 allow ip from 217.137.48.25 to me
00105       20        1680 allow ip from me to 217.137.48.25
01000     2787      135328 deny ip from table(120) to any
02205    28152     4820111 pipe 512 ip from table(35) to any in
02205    35188    24955932 pipe 513 ip from any to table(5) out
02206   850841   329748232 pipe 1024 ip from table(36) to any in
02206   908146   631042008 pipe 1025 ip from any to table(66) out
02208   846526   243522405 pipe 2048 ip from table(38) to any in
02208  1038227   966252646 pipe 2049 ip from any to table(8) out
65535 15767298 10951876392 allow ip from any to any

На сервере включен all log никаких записей в момент проявления проблемы нет.
Периодичность возникновения проблемы от 3 дней до 3 месяцев.

Может быть кто-то сталкивался с такой проблемой и нашел ее решение. Буду благодарен за любые советы.


Содержание

Сообщения в этом обсуждении
"ipfw глючит правило deny"
Отправлено gd , 11-Авг-14 19:39 
> Есть маршрутизатор на базе  FreeBSD 9.1, используется для резки скорости и
> блокировки клиентов. Проблема заключается в том, что периодически правило 1000 начинает
> блокировать весь исходящий трафик от сети 217.137.48.0/20, соотвецтвенно все клиенты перестают
> работать. Решается проблема только удалением 1000 правила.

Скорее всего в этот волшебный момент времени в 120-й таблице у вас оказывается вся сеть 217.137.48.0/20. Проверяйте скрипты, наполняющие эту таблицу.

>[оверквотинг удален]
> to table(66) out
> 02208   846526   243522405 pipe 2048 ip from table(38)
> to any in
> 02208  1038227   966252646 pipe 2049 ip from any to
> table(8) out
> 65535 15767298 10951876392 allow ip from any to any
> На сервере включен all log никаких записей в момент проявления проблемы нет.
> Периодичность возникновения проблемы от 3 дней до 3 месяцев.
> Может быть кто-то сталкивался с такой проблемой и нашел ее решение. Буду
> благодарен за любые советы.


"ipfw глючит правило deny"
Отправлено vovka32 , 11-Авг-14 21:41 
>[оверквотинг удален]
>> to table(66) out
>> 02208   846526   243522405 pipe 2048 ip from table(38)
>> to any in
>> 02208  1038227   966252646 pipe 2049 ip from any to
>> table(8) out
>> 65535 15767298 10951876392 allow ip from any to any
>> На сервере включен all log никаких записей в момент проявления проблемы нет.
>> Периодичность возникновения проблемы от 3 дней до 3 месяцев.
>> Может быть кто-то сталкивался с такой проблемой и нашел ее решение. Буду
>> благодарен за любые советы.

В том то и дело, что не оказывается(во время этого волшебного момента проверял), если бы все было так просто, то поста этого не было.
Скрипт в эту таблицу добавляет адреса только с 32 маской. И самое интересное, что данный волшебный момент наступает и в то врем когда никаких манипуляций с ipfw не происходит. К примеру в выходные дни, ни 1 скрипт, затрагивающий ipfw не отрабатывается.


"ipfw глючит правило deny"
Отправлено Pahanivo , 11-Авг-14 23:02 
> В том то и дело, что не оказывается(во время этого волшебного момента
> проверял), если бы все было так просто, то поста этого не
> было.

Ну в своем посте вы привели непонятный кусок таблицы, только и всего.

> Скрипт в эту таблицу добавляет адреса только с 32 маской. И самое
> интересное, что данный волшебный момент наступает и в то врем когда
> никаких манипуляций с ipfw не происходит. К примеру в выходные дни,
> ни 1 скрипт, затрагивающий ipfw не отрабатывается.

Задам очень интересный вопрос и пожалуй ключевой. Вот вы пишите "периодически правило 1000 начинает блокировать весь исходящий трафик от сети 217.137.48.0/20" - а каким чудесным образом вы диагностируете блокировку всей сети сразу и именно тысячным правилом?


"ipfw глючит правило deny"
Отправлено vovka32 , 12-Авг-14 09:36 
>[оверквотинг удален]
>> было.
> Ну в своем посте вы привели непонятный кусок таблицы, только и всего.
>> Скрипт в эту таблицу добавляет адреса только с 32 маской. И самое
>> интересное, что данный волшебный момент наступает и в то врем когда
>> никаких манипуляций с ipfw не происходит. К примеру в выходные дни,
>> ни 1 скрипт, затрагивающий ipfw не отрабатывается.
> Задам очень интересный вопрос и пожалуй ключевой. Вот вы пишите "периодически правило
> 1000 начинает блокировать весь исходящий трафик от сети 217.137.48.0/20" - а
> каким чудесным образом вы диагностируете блокировку всей сети сразу и именно
> тысячным правилом?

У меня всего 4к адресов, что все из них блокируются это точно, возможно блокируется сеть шире, но в этом я не уверен, к сожалению не проверял(в след раз обязательно сделаю). Почему именно 1000, потому что на нем с невероятной скоростью начинают расти счетчики и если это правило убить то все начинает работать. И еще раз повторюсь при этом в таблице 120 ничего подозрительного нет.
Что блокируется не все это точно, т.к. инет на серваке при этом есть, bgp не падает.

Я понимаю, что все это кажется "волшебством", но факт остается фактом.


"ipfw глючит правило deny"
Отправлено Pahanivo , 12-Авг-14 11:07 
> У меня всего 4к адресов, что все из них блокируются это точно,
> возможно блокируется сеть шире, но в этом я не уверен, к
> сожалению не проверял(в след раз обязательно сделаю).

Дак точно, возможно или не уверен?????
> Почему именно 1000, потому
> что на нем с невероятной скоростью начинают расти счетчики и если
> это правило убить то все начинает работать.

На дак это счетчик НА ВСЁ ПРАВИЛО целиком, а не на КАКОЙ-ТО ЭЛЕМЕНТ ТАБЛИЦЫ.
КАКИМ ОБРАЗОМ ВЫ СВЯЗЫВАЕТЕ БЛОКИРОВКУ КОНКРЕТНОГО АДРЕСНОГО ПРОСТРАНСТВА И ЭТОГО ПРАВИЛА???
> И еще раз повторюсь
> при этом в таблице 120 ничего подозрительного нет.

Я не знаю, что для вас подозрительно, а что нет. Это ваше субъективное восприятие реальности.
> Что блокируется не все это точно, т.к. инет на серваке при этом
> есть, bgp не падает.

Ёпвашу ... что в вашем понимании "все" и "не все"?

> Я понимаю, что все это кажется "волшебством", но факт остается фактом.

Проблема в том, что факты это пока лишь ваша фантазия. Чудес не бывает - бывают чудотворцы! А вот что бы фиксировать факты - включите хотя бы log на ваше "1000" правило, тогда будет о чем разговаривать. Мне например не понятно что значит ваша фраза "На сервере включен all log" ...


"ipfw глючит правило deny"
Отправлено vovka32 , 12-Авг-14 09:46 
>> В том то и дело, что не оказывается(во время этого волшебного момента
>> проверял), если бы все было так просто, то поста этого не
>> было.
> Ну в своем посте вы привели непонятный кусок таблицы, только и всего.

Повторюсь это сокращенное содержание таблицы, в оригинале около 300 ip с 32-ой маской из диапазона 217.137.48.0/20. Если бы я выложил полную таблицу, то ДА их там около 300 и ДА все ТОЧНО с 32 маской.


"ipfw глючит правило deny"
Отправлено universite , 13-Авг-14 05:52 
> Есть маршрутизатор на базе  FreeBSD 9.1, используется для резки скорости и
> блокировки клиентов. Проблема заключается в том, что периодически правило 1000 начинает
> блокировать весь исходящий трафик от сети 217.137.48.0/20, соотвецтвенно все клиенты перестают
> работать. Решается проблема только удалением 1000 правила.
> Периодичность возникновения проблемы от 3 дней до 3 месяцев.

Режьте порт торрентов - 6881.


"ipfw глючит правило deny"
Отправлено MoHaX , 16-Авг-14 18:08 
>> Есть маршрутизатор на базе  FreeBSD 9.1, используется для резки скорости и
>> блокировки клиентов. Проблема заключается в том, что периодически правило 1000 начинает
>> блокировать весь исходящий трафик от сети 217.137.48.0/20, соотвецтвенно все клиенты перестают
>> работать. Решается проблема только удалением 1000 правила.
>> Периодичность возникновения проблемы от 3 дней до 3 месяцев.
> Режьте порт торрентов - 6881.

Зачем?


"ipfw глючит правило deny"
Отправлено universite , 16-Авг-14 21:43 
>>> Есть маршрутизатор на базе  FreeBSD 9.1, используется для резки скорости и
>>> блокировки клиентов. Проблема заключается в том, что периодически правило 1000 начинает
>>> блокировать весь исходящий трафик от сети 217.137.48.0/20, соотвецтвенно все клиенты перестают
>>> работать. Решается проблема только удалением 1000 правила.
>>> Периодичность возникновения проблемы от 3 дней до 3 месяцев.
>> Режьте порт торрентов - 6881.
> Зачем?

Чтобы система себя лучше чувствовала.


"ipfw глючит правило deny"
Отправлено vovka32 , 21-Авг-14 14:29 

Система практически не нагружена.

Есть уточнение правило deny работает как надо, проблема в таблице, точнее проблема возникает при заполнении таблицы.

Сама по себе таблица не содержит ничего подозрительного по крайне мере ipfw table 120 list ничего не показывает. Помогает table 120 flush.

Последний раз решал проблему вот таким вот скриптиком(т.е. заполнян ее после очистки теми же значениями):

#!/usr/local/bin/php
<?php
exec("/sbin/ipfw table 120 list | /usr/bin/awk '{print $1}'",$blocked_clients);
exec("/sbin/ipfw table 120 flush");
foreach ($blocked_clients as $ip)
        {
        exec("/sbin/ipfw table 120 add $ip");
        }
?>