Перейти к содержимому
Калькуляторы

Опубликована Процедура блокировки некошерной инфо

С появлением кириллических доменов, отключил в своем скрипте резолв, т.к. в ответ получаю:

nslookup футболобзор.рф

 

** server can't find \209\132\209\131\209\130\208\177\208\190\208\187\208\190\208\177\208\183\208\190\209\128.\209\128\209\132: NXDOMAIN

если перевести в punycode, то все работает:

nslookup xn--90aasoobcqkjk.xn--p1ai

Address: 91.201.202.148

На питоне кто-нибудь реализовывал конвертирование?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

С появлением кириллических доменов, отключил в своем скрипте резолв, т.к. в ответ получаю:

nslookup футболобзор.рф

 

** server can't find \209\132\209\131\209\130\208\177\208\190\208\187\208\190\208\177\208\183\208\190\209\128.\209\128\209\132: NXDOMAIN

если перевести в punycode, то все работает:

nslookup xn--90aasoobcqkjk.xn--p1ai

Address: 91.201.202.148

На питоне кто-нибудь реализовывал конвертирование?

 

Вроде у меня все нормально, попробуй вот так: name = unicode(domain, "utf-8").encode("idna") , где domain это имя домена

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

С появлением кириллических доменов, отключил в своем скрипте резолв, т.к. в ответ получаю:

nslookup футболобзор.рф

 

** server can't find \209\132\209\131\209\130\208\177\208\190\208\187\208\190\208\177\208\183\208\190\209\128.\209\128\209\132: NXDOMAIN

если перевести в punycode, то все работает:

nslookup xn--90aasoobcqkjk.xn--p1ai

Address: 91.201.202.148

На питоне кто-нибудь реализовывал конвертирование?

 

Вроде у меня все нормально, попробуй вот так: name = unicode(domain, "utf-8").encode("idna") , где domain это имя домена

Не катит. Надо именно punycode. Что толку, что ты увидишь в файле домен русскими буковками? До сервера домен УЖЕ punycode приходит, преобразуется самим браузером. Адрес конкретной страницы -- да, прокатывает (возможно, если угадана кодировка), а домен -- увы.

 

Важнейшей причиной введения Punycode был тот факт, что в утверждённой стандартом системе доменных имен разрешены только 26 символов латинского алфавита, цифры от 0 до 9 и дефис. Для английского и некоторых других языков на основе латинского алфавита этого достаточно, однако другие языки могут содержать дополнительные символы

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Сейчас парсер реализован на перле, функция обработки урл:

sub saveURL {
   my $url = shift;
   if ($url =~ /^[a-z]+:\/\//) {
			my $uri = URI->new($url);
			my $host = $uri->host;
			return 0 if exists $exclude_domains{$host};
			my $path = $uri->path_query;
			if ($path eq '' || $path eq '/') {
    			$domains{$host} = 1;
			} else {
    			$urls{$host . $path} = 1;
			}
			saveDomainIP($host) if $zapretcfg::resolve_domains;
   } else {
			warn "ERROR: saveURL: wrong url syntax: $url\n";
   }
   return 1;
}

 

где:

zapretcfg::resolve_domains = 1 (1 включение резолва, 0 отключение)

exclude_domains - файл со списком доменов которые не фильтруются

Как при помощи модуля URI::UTF8::Punycode реализовать поддержку кириллических доменов?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Если кому-то интересен скрипт для резолва доменных имен через PHP, то я накидал тут скриптец:

- форки, можно указать кол-во поток, а значит во столько раз резолв будет быстрее.

- получает все уникальные доменные имена из реестра.

- кириллицу переводит в punycode.

- dump.xml кинуть в корень скрипта.

 

<?php
// логгируем ошибки php
ini_set('display_errors', 'Off');
ini_set ("error_log", dirname($_SERVER["SCRIPT_FILENAME"])."/php_error.log"); 

// кол-во потоков
define ("STREAM_COUNT", 8);
$xml = simplexml_load_file(dirname($_SERVER["SCRIPT_FILENAME"]).'/dump.xml', 'SimpleXMLElement', LIBXML_NOCDATA);

$ArrayHost = array();
$domain_path = $xml->xpath('content/domain');
$domain_path = ($domain_path) ? $domain_path: array();
$url_path = $xml->xpath('content/url');
$url_path = ($url_path) ? $url_path: array();
$all_path = array_merge($domain_path,$url_path);

foreach ($all_path as $each){
	$parse_url = parse_url((string)$each);

	// найдено доменное в url имя или нет схемы (http/https), значит domain
	$parse_url["host"] = (!isset($parse_url["scheme"])) ? $each : $parse_url["host"];

	// ищем кириллицу
	$parse_url["host"] = (preg_match('~[а-яА-ЯЁё]~', $parse_url["host"])) ? idn_to_ascii($parse_url["host"]) : $parse_url["host"];

	$ArrayHost[] = (string)$parse_url["host"];
}

$ArrayHost  = array_unique($ArrayHost);
$ArrayChunk = array_chunk($ArrayHost, count($ArrayHost)/STREAM_COUNT);

function shell($arr, $proc) {
	$write_str = '';
	$handle = fopen(dirname($_SERVER["SCRIPT_FILENAME"])."/log_dns_".date("Y-m-d_H").".txt", "a"); 

	$arr[$proc] = (isset($arr[$proc])) ? $arr[$proc] : array();
	foreach ($arr[$proc] as $domain){

		$write_str.= $domain.":";
		$get_dns = shell_exec("nslookup ".escapeshellarg(trim($domain))."");
		preg_match_all('/Address: ([0-9\.]*).*/', $get_dns, $matches);	
		if (is_array($matches[1])){
			foreach ($matches[1] as $ip) {
				$write_str.= $ip.",";
				echo $ip.",";
			}
		}
		$write_str.="\n";
	}

	fwrite($handle, $write_str);
	fclose($handle);
}

for ($x = 1; $x <= STREAM_COUNT+1; ++$x) { 
       $pid = pcntl_fork(); 
       if (!$pid) {
		shell ($ArrayChunk, $x-1);	
           exit; 
       } 
   } 

   while (pcntl_waitpid(0, $status) != -1) { 
       $status = pcntl_wexitstatus($status); 	
   } 

?>

Изменено пользователем morf

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

С появлением кириллических доменов, отключил в своем скрипте резолв, т.к. в ответ получаю:

nslookup футболобзор.рф

 

** server can't find \209\132\209\131\209\130\208\177\208\190\208\187\208\190\208\177\208\183\208\190\209\128.\209\128\209\132: NXDOMAIN

если перевести в punycode, то все работает:

nslookup xn--90aasoobcqkjk.xn--p1ai

Address: 91.201.202.148

На питоне кто-нибудь реализовывал конвертирование?

 

Вроде у меня все нормально, попробуй вот так: name = unicode(domain, "utf-8").encode("idna") , где domain это имя домена

Не катит. Надо именно punycode. Что толку, что ты увидишь в файле домен русскими буковками? До сервера домен УЖЕ punycode приходит, преобразуется самим браузером. Адрес конкретной страницы -- да, прокатывает (возможно, если угадана кодировка), а домен -- увы.

 

Важнейшей причиной введения Punycode был тот факт, что в утверждённой стандартом системе доменных имен разрешены только 26 символов латинского алфавита, цифры от 0 до 9 и дефис. Для английского и некоторых других языков на основе латинского алфавита этого достаточно, однако другие языки могут содержать дополнительные символы

 

Почему не катит, простой пример вот строка name = unicode('футболобзор.рф', "utf-8").encode("idna")

далее print name на выходе имеем xn--90aasoobcqkjk.xn--p1ai , разве не этого необходимо достичь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Главное переправлять на фильтровалку ip из реестра, а не отрезолвингованые самостоятельно. Тогда коробка наверное скажет что все ок

Указанные в реестре + отрезолвленные

http://rkn.gov.ru/press/conference/conf17.htm

"Обращаем внимание, что действующее законодательство Российской Федерации не содержит правовой нормы, предусматривающей обязанность оператора связи самостоятельно отслеживать изменения сетевых адресов, а также проводить мероприятия по ограничению доступа к ресурсам, не включенным в Единый реестр запрещенной информации."

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Главное переправлять на фильтровалку ip из реестра, а не отрезолвингованые самостоятельно. Тогда коробка наверное скажет что все ок

Указанные в реестре + отрезолвленные

http://rkn.gov.ru/press/conference/conf17.htm

"Обращаем внимание, что действующее законодательство Российской Федерации не содержит правовой нормы, предусматривающей обязанность оператора связи самостоятельно отслеживать изменения сетевых адресов, а также проводить мероприятия по ограничению доступа к ресурсам, не включенным в Единый реестр запрещенной информации."

 

Да, и там же сказано, что согласно закону, мы обязаны блокировать все домены/url из реестра. Никакого допустимого процента.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кто-нибудь вообще пробовал по ДНС блокировать?

Роскомпозор нормально к этому относится?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кто-нибудь вообще пробовал по ДНС блокировать?

Роскомпозор нормально к этому относится?

Не занимайтесь самодеятельностью. Есть алгоритм - по нему и работайте. Ну или dpi купите-саминапишите. Написано же - успешность 100%. По старой памяти в ркн по их заявлениям соответствовали только dpi скат и карбонсофт. Мои самописные решения давали пропуски и возможные клизьмы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Успешность 100 процентов, зависит от метода проверки,

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

Будет 100 процентная успешность.

А то вот как сейчас с коробочками, бац и конект

Строят по ип из реестра, и какая успешность.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Успешность 100 процентов, зависит от метода проверки,

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

Будет 100 процентная успешность.

А то вот как сейчас с коробочками, бац и конект

Строят по ип из реестра, и какая успешность.

Метод именно в коробочках тот должен быть, что и в реестре. Иного в коробочку ревизор не всунешь. Если у вас есть dpi - бояться нечего, кроме явных подстав. Единственная засада у коробочек, они с галкой "проверять по ip" говорят - что ресурс якобы неблокирован. Понятно - пинги есть, и таймаут при htts- коннекте велик. По аутсайду - они еще при надзоре устали проверять доступность https, таймаут длинный. dpi блокирет доступ но http/https, но пинги не блокирует.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

С появлением кириллических доменов, отключил в своем скрипте резолв, т.к. в ответ получаю:

nslookup футболобзор.рф

 

** server can't find \209\132\209\131\209\130\208\177\208\190\208\187\208\190\208\177\208\183\208\190\209\128.\209\128\209\132: NXDOMAIN

если перевести в punycode, то все работает:

nslookup xn--90aasoobcqkjk.xn--p1ai

Address: 91.201.202.148

На питоне кто-нибудь реализовывал конвертирование?

 

Вроде у меня все нормально, попробуй вот так: name = unicode(domain, "utf-8").encode("idna") , где domain это имя домена

Не катит. Надо именно punycode. Что толку, что ты увидишь в файле домен русскими буковками? До сервера домен УЖЕ punycode приходит, преобразуется самим браузером. Адрес конкретной страницы -- да, прокатывает (возможно, если угадана кодировка), а домен -- увы.

 

Важнейшей причиной введения Punycode был тот факт, что в утверждённой стандартом системе доменных имен разрешены только 26 символов латинского алфавита, цифры от 0 до 9 и дефис. Для английского и некоторых других языков на основе латинского алфавита этого достаточно, однако другие языки могут содержать дополнительные символы

 

Почему не катит, простой пример вот строка name = unicode('футболобзор.рф', "utf-8").encode("idna")

далее print name на выходе имеем xn--90aasoobcqkjk.xn--p1ai , разве не этого необходимо достичь.

Точно, катит :) Извиняйте, на фоне "красных тряпок" unicode и utf-8 не углядел очень значимый punycode-хвостик idna

Но вообще я считаю это ошибкой Реестра. Домен должен быть указан корректно и однозначно, согласно стандартам сети Интернет. Преобразование, резолвинг -- это уже самодеятельность. Выдайте DNS-серверу запрос на кириллическое имя НЕ БРАУЗЕРОМ -- и он его не найдет. А нет IP -- нет и ресурса.

Изменено пользователем Ansy

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

кипиш подняли знатный, возбуждение достигло регионов. К вечеру через RETN айпишник рутрекера перестал даже пинговаться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вопрос с парсером актуален.У кого есть рабочий скрипт парсера на питоне с перекодировкой кириллических доменов?

Простейший пример выдает в результате список только по 80 записей ip, domain, url

 

from xml.dom import minidom

xmldoc = minidom.parse('dump.xml')
itemlist = xmldoc.getElementsByTagName('content')

fileDomains = open('domain', "w")
fileUrls = open('url', "w")
fileIps = open('ip', "w")

for c in itemlist :
   fileDomains.write(c.getElementsByTagName('domain')[0].childNodes[0].data.encode('utf-8') + '\n')
   fileUrls.write(c.getElementsByTagName('url')[0].childNodes[0].data.encode('utf-8') + '\n')
   fileIps.write(c.getElementsByTagName('ip')[0].childNodes[0].data.encode('utf-8') + '\n')

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

http://izvestia.ru/news/604704

Операторов связи оштрафуют на сумму от 50 до 100 тыс. рублей за каждую незаблокированную ими ссылку или IP-адрес, которые были внесены Роскомнадзором в черный список запрещенной в России информации. Соответствующий законопроект подготовило Минкомсвязи.

 

Ололо.

Изменено пользователем onlime_user

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ололошиньки ололо!

При проверке засчитывается если часть контента блокируется вышестоящим провайдером?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Самое главное, чтобы при проверке не было человека с iPad-ом и с фамилией "Медведев" :)

 

Тимакова подтвердила подлинность найденного Медведевым в сети RuTracker

 

Пресс-секретарь Дмитрия Медведева Наталья Тимакова подтвердила, что на встрече киноиндустрии во ВГИК премьер-министр зашел на заблокированный RuTracker.org, а не на его аналог RuTracker.ru. Об этом Тимакова заявила в Facebook.

 

«Отвечаю на ваш вопрос, — написала она в комментарии к одному из постов. — Адрес был rutracker.org, "Выжившего" он набрал в поиске сам — поэтому споры о том, что на первой странице, — бессмысленны».

https://lenta.ru/news/2016/02/19/timakova/

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

http://izvestia.ru/news/604704

Операторов связи оштрафуют на сумму от 50 до 100 тыс. рублей за каждую незаблокированную ими ссылку или IP-адрес, которые были внесены Роскомнадзором в черный список запрещенной в России информации. Соответствующий законопроект подготовило Минкомсвязи.

 

Ололо.

Безнес в РФ не кошмарят. Нет-нет. Конечно.

Сначала придумали глупость с блокировками, которая не работает от слова "совсем", а теперь еще и операторов "зачистим" под шумок.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

прокуроры Татарстана автоматизировали поиск запретных материалов в Сети

http://rublacklist.net/14775/

 

скажите, как долго продержится DPI? какой объем списка он в состоянии переварить?

я бы с миллион доменов зарегеал и разместил там запрещенную инфу

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

прокуроры Татарстана автоматизировали поиск запретных материалов в Сети

http://rublacklist.net/14775/

 

скажите, как долго продержится DPI? какой объем списка он в состоянии переварить?

я бы с миллион доменов зарегеал и разместил там запрещенную инфу

 

Проверка доступности к запрещённому Роскомнадзором в России Rutracker’у показала, что доступ к сайту не ограничивают 99 российских провайдеров. При этом доступность ресурса в Москве составляет 18%, в Приморском крае – 25%, в Ставропольском крае – 20%, Белогородской области – 14%, Республике Карачаево-Черкесия – 23%, Республике Бурятии и Тамбовской области – 13%.

 

Что-то я не понял. А как прокуратура Татарстана проверяла Приморский край, Белгородскую область и т.д.?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Что-то я не понял. А как прокуратура Татарстана проверяла Приморский край, Белгородскую область и т.д.?

 

 

Очень просто. Сидит молодой сотрудник прокуратуры, смотрит в потолок, и пишет цифры, обосновывая свое существование. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Что-то я не понял. А как прокуратура Татарстана проверяла Приморский край, Белгородскую область и т.д.?

 

 

Очень просто. Сидит молодой сотрудник прокуратуры, смотрит в потолок, и пишет цифры, обосновывая свое существование. :)

 

Вы разрушили мой мир... Я-то уже представил, что сотрудник прокуратуры тайно посетил всех 10 000 провайдеров, лично провел проверки и тогда-то выяснил, что 99 из 10 000 не фильтруют реестр:)))

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

http://izvestia.ru/news/604704

Операторов связи оштрафуют на сумму от 50 до 100 тыс. рублей за каждую незаблокированную ими ссылку или IP-адрес, которые были внесены Роскомнадзором в черный список запрещенной в России информации. Соответствующий законопроект подготовило Минкомсвязи.

 

Ололо.

Это называется зачистка. Мелкие провайдеры будут уничтожены.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.