блокировка ip pcre

Обсуждение программы редиректора
Ответить
vesla
Сообщения: 3
Зарегистрирован: Вт апр 12, 2011 19:34

блокировка ip pcre

Сообщение vesla »

доброго времени суток
подскажите, пожалуйста, как блокировать url такого типа:
http://0x5f.0xa9.0xbc.0xe7/
http://0137.0251.0274.0347/
http://0x5f.0xa9.0274.0347/
http://95.0xa9.0274.0347/
..

Slava
Site Admin
Сообщения: 2251
Зарегистрирован: Пт апр 02, 2004 12:34
Контактная информация:

Re: блокировка ip pcre

Сообщение Slava »

Регулярными выражениями, что-то вроде:
/\:\/\/((0x\w+)|\d+)\.((0x\w+)|\d+)+.((0x\w+)|\d+)+.((0x\w+)|\d+)+\//

PS: ip адреса под это правило тоже попадут, если нужно без ip, то сообщите разницу.

vesla
Сообщения: 3
Зарегистрирован: Вт апр 12, 2011 19:34

Re: блокировка ip pcre

Сообщение vesla »

спасибо, но не работает Ваше правило..
у меня стояла блокировка по просто ip вот таким правилом
(^|\:\/\/)\d+\.\d+\.\d+\.\d+
все работало, сейчас Ваше еще поставил, в итоге оно не рабоатет ни на один пример из того что привел..
сейчас в банлисте по ip всего 2 правила
/\:\/\/((0x\w+)|\d+)\.((0x\w+)|\d+)+.((0x\w+)|\d+)+.((0x\w+)|\d+)+\//
(^|\:\/\/)\d+\.\d+\.\d+\.\d+
второе работает, пробовал оставить только Ваш пример, результата нету..

maksnl
Сообщения: 34
Зарегистрирован: Чт фев 10, 2011 23:35

Re: блокировка ip pcre

Сообщение maksnl »

vesla писал(а):спасибо, но не работает Ваше правило..
Попробуйте такое правило:

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

((0x\w+)|\d+)\.((0x\w+)|\d+)\.((0x\w+)|\d+)\.((0x\w+)|\d+)
У меня срабатывает на все преведенные Вами примеры, сразу предупрежу я не спец в pcre, поэтому советую проследить за темой может меня ктонить поправит.
И еще, правило "(^|\:\/\/)\d+\.\d+\.\d+\.\d+" наверно лучше удалить из списка т.к. выше представленное тоже будет блокировать ipv4 адреса

vesla
Сообщения: 3
Зарегистрирован: Вт апр 12, 2011 19:34

Re: блокировка ip pcre

Сообщение vesla »

угу, так завелось, спасибо

maksnl
Сообщения: 34
Зарегистрирован: Чт фев 10, 2011 23:35

Re: блокировка ip pcre

Сообщение maksnl »

Я наверное сам себя поправлю:

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

(^|\:\/\/)((0x\w+)|\d+)\.((0x\w+)|\d+)\.((0x\w+)|\d+)\.((0x\w+)|\d+)
так избавимся от (возможных) ложных срабатываний.

PS. А вобще Ваш squid нормально обрабатывал такие урлы? я на 3-х пробовал и все обрабатывали урл не как ip адрес а как домен, ну и естественно вылетала ошибка.

Ответить