Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Фильтрация по IP, Как грамотней фильтровать по IP 
:(
    Опции темы
FishHunter
Дата 24.10.2013, 22:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 12.2.2009

Репутация: нет
Всего: нет



Добрый вечер всем,

Понадобилось мне замутить сабж. Есть база айпишек посещение с которых крайне нежелательно для меня smile Собственно вопрос, как грамотней реализовать это дело?
Все на что меня хватило это следующее:
1. Создаем blacklist.db где ключ это нежелательный айпишник
2. Брать из окружения $ip=REMOTE_ADDR
3. открываем db и проверяем existом существует ли blacklist{$ip} если нет то на сайт иначе лесом smile

Но, например мне надо не пускать все серферов из диапазона к примеру 188.168.236.0/255 тогда придется все 255 айпишек делать ключами :( а если таких диапазонов будет много то и вес blacklist.db может вырасти, память при каждом посещении будет расходоваться, тормозить начнет все и т.д.
Может есть какой другой способ?

С уважением ...

PM MAIL   Вверх
tzirechnoy
Дата 25.10.2013, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1173
Регистрация: 30.1.2009

Репутация: -1
Всего: 16



Если адресов планируется немного, и можно их так или иначе забить в исходник -- то можно взять, например, Net::IPAddress::Filter. Но он не хранит адреса.
PM MAIL   Вверх
FishHunter
Дата 26.10.2013, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 12.2.2009

Репутация: нет
Всего: нет



Вот что у меня за привычка, сначала на форуме кипишь поднять. Потом думать/искать начать. Может так я себя стимулирую smile Короче решил сие с помощью модуля Net::CIDR::Lite; Ему можно скармливать хоть сидры, хоть диапазоны. Работает с v4,v6. Ищет то что мне нужно одной строкой и очень быстро.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: CGI программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к CGI программированию
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", качать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: разработка для Web | Следующая тема »


 




[ Время генерации скрипта: 0.1019 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.