Блог byroot
Авторизация

Роскомсос - скрипт для определения ip госорганов и их блокировка

Роскомсос - скрипт для определения ip госорганов и их блокировка

Скрипт реализован в виде класса Roscomsos, который только определяет принадлежность IP к госорганам. В случае попадания можете показывать котиков или Сашу Грей, а лучше отдать измененный, незапрещенный контент. Например, если у вас киносайт, то госорганам вы можете показывать трейлеры фильмов, а остальным пользователям фильмы целиком.

В целях повышения производительности скрипт использует два файла: в одном файле собраны только первые два байта госовских айпи, а в другом полный список всех известных диапазонов. Проверка осуществляется в три этапа: сначала ищем совпадение двух байтов IP в первом файле (большинство пользователей отфильтруется уже на этом этапе, что снизит нагрузку на сервер), затем, если IP похож на госовский, то ищем первые три байта в полном списке, далее, если совпадений не найдено, IP ищется в диапазонах, но не во всех, а только с такими же первыми двумя байтами.

Установка
Качаем архив и заливаем папку со всем содержимым в корень сайта. В корневом файле index.php после

<?php

добавить
require_once($_SERVER['DOCUMENT_ROOT']."/roscomsos/roscomsos.php");
$Roscomsos=new Roscomsos();
$check_gos_ip=$Roscomsos->check_ip($_SERVER['REMOTE_ADDR']);
if ($check_gos_ip==true) { echo 'Извините, проводятся технические работы'; exit; }


Файл с актуальными диапазонами IP госорганов и Роскомнадзора находится по ссылке: http://roscenzura.com/roscomsos/gosip.txt.

Ссылка на скачивание скрипта и тестирование, а так же официальная тема скрипта.

Читайте также

  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent
Введите два слова, показанных на изображении:*
Авторизация