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

566 пользователей проголосовало

  1. 1. Для блокировка используем



Блокировка сайтов провайдерами маневры с DNS

14 часов назад, oleg_n сказал:

  Нет. Если зададите, напишите, что ответят :-)

 

  Лучше послушать ответ РЧЦ и РКН, но я думаю, если это будет массово(т.е. не только у одного провайдера), то на это все закроют глаза и забудут как страшный сон.

если совсем массово (так в Крыму было и на них закрыли глаза)

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


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

20 часов назад, SokolovS сказал:

Можно пару слов про отличие exp и master веток. Что-то принципиально в логике поменялось? За счет чего производительность увеличилась?

При переходе ничего дополнительно донастраивать не нужно (ответы уже через dpdk)?

Вместо aho-corasick используется marisa trie. Переделан алгоритм работы с сессиями - теперь можно обрабатывать ~ 30 млн. сессий. Переделаны алгоритмы работы с http и https (пока не опубликован).

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


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

В 04.04.2018 в 12:44, max1976 сказал:

Вместо aho-corasick используется marisa trie.

А есть сравнительные материалы в которых показана разницы в скорости данных алгоритмов? Сходу не нашел. Из официального описания последнего увидел только, что словарь очень компактный получается. Или тестилось уже на реальных данных в рамках extfilter?

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

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


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

Пишет мне наш отдел Тех.П., говорит люди на Яндекс зайти не могут.

Смотрю в реестр и офигеваю:

  <content id="512741" includeTime="2017-12-01T18:24:16" entryType="1" hash="9BC30D67AC69145E6D435B5A964EE567" ts="2018-04-05T17:00:00+03:00">
    <decision date="2017-02-20" number="2-1198/2017" org="суд"/>
    <url><![CDATA[http://чм-2018-сегодня.рф/catalog]]></url>
    <domain><![CDATA[чм-2018-сегодня.рф]]></domain>
    <ip ts="2018-04-05T17:00:00+03:00">5.255.255.50</ip>
    <ip ts="2018-04-05T17:00:00+03:00">77.88.55.60</ip>
    <ip ts="2018-04-05T17:00:00+03:00">77.88.55.50</ip>
    <ip ts="2018-04-05T17:00:00+03:00">5.255.255.77</ip>
    <ip ts="2018-04-05T17:00:00+03:00">5.255.255.60</ip>
    <ip ts="2018-04-05T17:00:00+03:00">77.88.55.80</ip>
    <ip ts="2018-04-05T17:00:00+03:00">5.255.255.80</ip>
    <ip ts="2018-04-05T17:00:00+03:00">5.255.255.70</ip>
    <ip ts="2018-04-05T17:00:00+03:00">77.88.55.70</ip>
    <ip ts="2018-04-05T17:00:00+03:00">77.88.55.66</ip>

Ну как так можно..

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


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

Уважаемый max1976!

Решил с nfqfilter перебраться на extfilter, но возникли проблемы с установкой. Сначала думал, дело в i686, но на x86_64 получил ту же ошибку.

g++ -DHAVE_CONFIG_H -I. -I../include  -I/usr/src/dpdk-stable-17.11.1/build/include -I.././peafowl/src   -std=c++11 -O3 -Wall -fno-stack-protector -pthread -msse -msse2 -msse3 -mssse3 -march=native -MT main.o -MD -MP -MF .deps/main.Tpo -c -o main.o main.cpp
main.cpp: In member function ‘int extFilter::initPort(uint8_t, ether_addr*, bool)’:
main.cpp:373:68: error: invalid conversion from ‘uint16_t (*)(uint8_t, uint16_t, rte_mbuf**, uint16_t, uint16_t, void*) {aka short unsigned int (*)(unsigned char, short unsigned int, rte_mbuf**, short unsigned int, short unsigned int, void*)}’ to ‘rte_rx_callback_fn {aka short unsigned int (*)(short unsigned int, short unsigned int, rte_mbuf**, short unsigned int, short unsigned int, void*)}’ [-fpermissive]
    if (!rte_eth_add_rx_callback(port, queueid, cb_parse_ptype, NULL))
                                                                    ^
In file included from main.cpp:13:0:
/usr/src/dpdk-stable-17.11.1/build/include/rte_ethdev.h:4108:7: note:   initializing argument 3 of ‘void* rte_eth_add_rx_callback(uint16_t, uint16_t, rte_rx_callback_fn, void*)’
 void *rte_eth_add_rx_callback(uint16_t port_id, uint16_t queue_id,
       ^
main.cpp: In member function ‘virtual void extFilter::initialize(Poco::Util::Application&)’:
main.cpp:819:29: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    if(rc != 6 || mac.size() != last)
                             ^
Makefile:375: recipe for target 'main.o' failed
make[1]: *** [main.o] Error 1
make[1]: Leaving directory '/usr/src/extfilter/src'
Makefile:344: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1

Пробовал ubuntu 14.04 32х, затем 16.04 64х, poco 1.6.1, dpdk 17.11.1. Ни у кого подобных проблем в топике не нашел. Проблема с установленным libpoco-dev другой версии была, но по совету Pasha_49 исправил.

Подскажите пожалуйста, куда копать.

 

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


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

3 часа назад, daltech сказал:

Уважаемый max1976!

Решил с nfqfilter перебраться на extfilter, но возникли проблемы с установкой. Сначала думал, дело в i686, но на x86_64 получил ту же ошибку.

g++ -DHAVE_CONFIG_H -I. -I../include  -I/usr/src/dpdk-stable-17.11.1/build/include -I.././peafowl/src   -std=c++11 -O3 -Wall -fno-stack-protector -pthread -msse -msse2 -msse3 -mssse3 -march=native -MT main.o -MD -MP -MF .deps/main.Tpo -c -o main.o main.cpp
main.cpp: In member function ‘int extFilter::initPort(uint8_t, ether_addr*, bool)’:
main.cpp:373:68: error: invalid conversion from ‘uint16_t (*)(uint8_t, uint16_t, rte_mbuf**, uint16_t, uint16_t, void*) {aka short unsigned int (*)(unsigned char, short unsigned int, rte_mbuf**, short unsigned int, short unsigned int, void*)}’ to ‘rte_rx_callback_fn {aka short unsigned int (*)(short unsigned int, short unsigned int, rte_mbuf**, short unsigned int, short unsigned int, void*)}’ [-fpermissive]
    if (!rte_eth_add_rx_callback(port, queueid, cb_parse_ptype, NULL))
                                                                    ^
In file included from main.cpp:13:0:
/usr/src/dpdk-stable-17.11.1/build/include/rte_ethdev.h:4108:7: note:   initializing argument 3 of ‘void* rte_eth_add_rx_callback(uint16_t, uint16_t, rte_rx_callback_fn, void*)’
 void *rte_eth_add_rx_callback(uint16_t port_id, uint16_t queue_id,
       ^
main.cpp: In member function ‘virtual void extFilter::initialize(Poco::Util::Application&)’:
main.cpp:819:29: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    if(rc != 6 || mac.size() != last)
                             ^
Makefile:375: recipe for target 'main.o' failed
make[1]: *** [main.o] Error 1
make[1]: Leaving directory '/usr/src/extfilter/src'
Makefile:344: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1

Пробовал ubuntu 14.04 32х, затем 16.04 64х, poco 1.6.1, dpdk 17.11.1. Ни у кого подобных проблем в топике не нашел. Проблема с установленным libpoco-dev другой версии была, но по совету Pasha_49 исправил.

Подскажите пожалуйста, куда копать.

 

Я конечно не сталкивался с такой ошибкой, но по логу компилятора gcc у Вас написано:

Цитата

{aka short unsigned int (*)(unsigned char, short unsigned int, rte_mbuf**, short unsigned int, short unsigned int, void*)}’ to ‘rte_rx_callback_fn

Тут либо библиотеки не хватает либо gcc посвежее нужен, полагаю. Если вариантов нету то как-то можно попробовать поизворачиваться с исходником...

 

У меня подобные проблемы были с компиляцией плагинов на nginx и чего-то ещё, на дебиане старом, поборол обновлением. На центе таких проблем никогда не было, как часы всегда работало, но это так, между словом.

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

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


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

@alibek 

Насколько я понимаю:

  <content id="75790" includeTime="2014-04-11T12:03:51" entryType="1" blockType="domain" hash="92DBB63F06E116FCDF4FF1F1842C9B48">

Вот этот самый blockType и указывает, что не нужно блокировать по IP, а только по домену. В записи выше, которое я привёл, отсутствует blockType, но присутствуют дополнительные IP, которые были добавлены к записи с пометкой ts как дополнительные, откуда такая уверенность, что не нужно блокировать по IP, тем более зачем тогда добавленные IP-адреса ??

Если не блокировать по IP, то белая коробка с именем "revizor" используя свои собственные DNS-ки, получает доступ к ресурсу и засчитывает нарушение.

 

6 hours ago, myth said:

Когда уже абоненты сожрут таких операторов...

Каких таких? Вы, уважаемый, какой-то особенный оператор? Золото с инкрустированными бриллиантами?

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


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

13 минут назад, EuPhobos сказал:

Если не блокировать по IP, то белая коробка с именем "revizor" используя свои собственные DNS-ки, получает доступ к ресурсу и засчитывает нарушение.

Что за бред??

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


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

5 часов назад, daltech сказал:

Пробовал ubuntu 14.04 32х, затем 16.04 64х, poco 1.6.1, dpdk 17.11.1

В требованиях четко написано 

  • DPDK = 17.05.01 

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


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

36 минут назад, EuPhobos сказал:

В записи выше, которое я привёл, отсутствует blockType, но присутствуют дополнительные IP, которые были добавлены к записи с пометкой ts как дополнительные, откуда такая уверенность, что не нужно блокировать по IP, тем более зачем тогда добавленные IP-адреса ??

Советую прочитать памятку для операторов.

Если blockType не указан, значит нужно использовать блокировку по URL.

Домен и IP в этом случае носят информационный характер.

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


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

1 hour ago, Nickollla said:

В требованиях четко написано 

  • DPDK = 17.05.01 

Спасибо! Ж:)

на х64 собралось, на х86 dpdk не собрался.
 

Spoiler

 

root@ubuntu:/usr/src/dpdk-stable-17.05.1# make config T=i686-native-linuxapp-gcc
Configuration done
root@ubuntu:/usr/src/dpdk-stable-17.05.1# sed -ri 's,(PMD_PCAP=).*,\1y,' build/.config
root@ubuntu:/usr/src/dpdk-stable-17.05.1# make

................

In file included from /usr/src/dpdk-stable-17.05.1/build/include/rte_common.h:298:0,
                 from /usr/src/dpdk-stable-17.05.1/build/include/rte_log.h:53,
                 from /usr/src/dpdk-stable-17.05.1/lib/librte_eal/linuxapp/eal/eal_pci.c:37:
/usr/lib/gcc/i686-linux-gnu/4.8/include/emmintrin.h:700:1: note: expected ‘__m128i’ but argument is of type ‘int’
 _mm_storeu_si128 (__m128i *__P, __m128i __B)
 ^
make[5]: *** [eal_pci.o] Error 1
make[4]: *** [eal] Error 2
make[3]: *** [linuxapp] Error 2
make[2]: *** [librte_eal] Error 2
make[1]: *** [lib] Error 2
make: *** [all] Error 2

 


Только х64?

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

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


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

1 час назад, EuPhobos сказал:

Каких таких?

которым лень собрать компьютер с extfilter/nfqfilter/squid/etc

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


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

13 часов назад, EuPhobos сказал:

Пишет мне наш отдел Тех.П., говорит люди на Яндекс зайти не могут.

Смотрю в реестр и офигеваю:


  <content id="512741" includeTime="2017-12-01T18:24:16" entryType="1" hash="9BC30D67AC69145E6D435B5A964EE567" ts="2018-04-05T17:00:00+03:00">
    <decision date="2017-02-20" number="2-1198/2017" org="суд"/>
    <url><![CDATA[http://чм-2018-сегодня.рф/catalog]]></url>
    <domain><![CDATA[чм-2018-сегодня.рф]]></domain>
    <ip ts="2018-04-05T17:00:00+03:00">5.255.255.50</ip>
    <ip ts="2018-04-05T17:00:00+03:00">77.88.55.60</ip>
    <ip ts="2018-04-05T17:00:00+03:00">77.88.55.50</ip>
    <ip ts="2018-04-05T17:00:00+03:00">5.255.255.77</ip>
    <ip ts="2018-04-05T17:00:00+03:00">5.255.255.60</ip>
    <ip ts="2018-04-05T17:00:00+03:00">77.88.55.80</ip>
    <ip ts="2018-04-05T17:00:00+03:00">5.255.255.80</ip>
    <ip ts="2018-04-05T17:00:00+03:00">5.255.255.70</ip>
    <ip ts="2018-04-05T17:00:00+03:00">77.88.55.70</ip>
    <ip ts="2018-04-05T17:00:00+03:00">77.88.55.66</ip>

Ну как так можно..

Вот без относительно спсоба фиьтрации.. домен, бл.ть, в РФ зоне.. ну разделегируйте уже, и не полоскайте мозг 100500 операторам связи по всей стране, если там такой ужос на нем размещен.

 

а еще эти удоды из РКН снова не удосужились проверить что с IP не отдается запрещенного контента, но в базу внесли.. нам письма, что вносят приходили раз 5 уже, тоже CNAME на наши ресурсы ставили, но пока достаточно было отписать, что мол там нет и не было запрещенного контента, пока прокатывало, тут, похоже, не прокатило.

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


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

18 часов назад, SokolovS сказал:

А есть сравнительные материалы в которых показана разницы в скорости данных алгоритмов? Сходу не нашел. Из официального описания последнего увидел только, что словарь очень компактный получается. Или тестилось уже на реальных данных в рамках extfilter?

Тест по поиску в списках блокировки при использовании указанных алгоритмов выявил следующее:
 

Цитата

 

Всего проверено 107040 записей
Marisa медленнее 13615 раз
Marisa быстрее 39141 раз
Marisa совпадает 54284 раз


 

Как вы уже отметили, marisa занимает меньше памяти, а так же намного быстрее инициализируется.

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


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

В 30.03.2018 в 18:54, Huko сказал:

Оттепель v.2018:


2018-03-30 17:52:09 | INFO  | main  | Added: domains: 0, urls: 0, IPv4 ips: 14, IPv6 ips: 0, subnets: 0, records: 0
2018-03-30 17:52:09 | INFO  | main  | Deleted: old domains: 4323, old urls: 31, old ips: 4367, old only ips: 4279, old subnets: 0, old records: 4500
2018-03-30 17:52:09 | INFO  | main  | Stopping RKN at Fri Mar 30 17:52:09 2018

Или мне кажется, или Амазон из реестра выпилили.

 

Ага, оттепель )) Амазон выпилили, а *.bc.googleusercontent.com начали активно впиливать теми же темпами. Причем у меня ощущение, что у них бот на это дело настроен.

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


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

В 23.03.2018 в 22:47, Kolunchik сказал:

А к играм с блокировкой 15 млн. адресов все подготовились?

https://t.me/unkn0wnerror/658

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

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


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

Уважаемые коллеги, поставил extfilter наконец-то. Прочитал мануал, ветки форума, осталось много вопросов.

Для работы программы требуется не менее двух интерфейсов, подключенных в DPDK. Один из интерфейсов для приёма зекралированного трафика, а другой для отправки ответов программы. Отправки ответов куда? Кому? в каком адресном пространстве? Пользователям? "Входящий" интерфейс должен адресное пространство иметь? Куда зеркалированный трафик приходит?

Конфиги с nfqfilter. Получаемые zapret => nfqfilter-config/make_files.pl то бишь? Но там же прописывание маршрутов на квагге в бордере в скрипте. Просто выпиливать это?

Для загрузки обновленных списков блокировки без перезапуска программы необходимо подать сигнал HUP. Чем это посылать и куда?

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


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

2 минуты назад, daltech сказал:

Для работы программы требуется не менее двух интерфейсов, подключенных в DPDK. Один из интерфейсов для приёма зекралированного трафика, а другой для отправки ответов программы. Отправки ответов куда? Кому? в каком адресном пространстве? Пользователям? "Входящий" интерфейс должен адресное пространство иметь? Куда зеркалированный трафик приходит?

Как кому? Клиенту. Формируется и отправляется пакет с dst_addr == src_addr клиента и установленным флагом RST,чтобы сбросить tcp-сессию,логично не? На зеркальный интерфейс вообще пофиг какой-адрес вешать,он тупо пылесосит траффик.

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


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

Ясно, по одному пункту подтверждение домыслов есть, спасибо. А по остальным?

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


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

7 минут назад, daltech сказал:

Ясно, по одному пункту подтверждение домыслов есть, спасибо. А по остальным?

https://vds-admin.ru/unix-commands/kill

 

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


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

Я так посылаю сигнал test -r /var/run/extFilter.pid && kill -HUP `cat /var/run/extFilter.pid`

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


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

5 минут назад, arhead сказал:

Я так посылаю сигнал test -r /var/run/extFilter.pid && kill -HUP `cat /var/run/extFilter.pid`

А если было аварийное завершение и файл,содержащий pid не удален?

 

А ну да,туда tmpfs смонтирован.

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

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


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

Для centos7 скрипты необходимых сервисов есть в проекте. 

1. Подгрудка ядерных модулей

2. Биндинг сетевых карт в dpdk

3. Запуск, перезапуск, релоад extFilter

 

Правите адреса карт и вперёд.

Так же по одному из вопросов стоит отметить, что сетевые карты подключенные к dpdk выводятся из под управления ОС.

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


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

Join the conversation

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

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

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

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

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

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

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