Блокировка соцсетей (instagram.com)

Базовая функциональность RouterOS
Ответить
belui
Сообщения: 2
Зарегистрирован: 20 фев 2019, 08:36

Блокировка соцсетей (instagram.com)

Сообщение belui » 20 фев 2019, 08:57

Здравствуйте. Нужно заблокировать соцсети (ok.ru, vk.com, twitter.com, facebook.com и instagram.com). Так вот все сети кроме инстаграма заблокировал по ip (у каждого сайта от 4-10 ip) с помощью ip> route> rules. С инстаграмом такое не прокатывает, вернее прокатывает, но когда я вбил около 70 ip адресов я забил так как их может быть и несколько тысяч, да и роутер возможно начнет тупить.
На просторах интернет есть куча статей как заблокировать сайт по его доменному имени где нужно создать правило в файрволе, так вот я пробовал все эти правила результата ноль. Правила добавляются в filter Rules, Address list, Layer7 protocols видно что ломится в instagram.com, но никакой блокировки.
модель микротика RouterBOARD 952Ui-5ac2nD, RouterOS v6.43.12 (stable)

Второй вопрос как заблокировать трафик на приложениях смартфонов этих же соцсетей?

Аватара пользователя
Sir_Prikol
Сообщения: 281
Зарегистрирован: 14 апр 2018, 15:21
Откуда: СССР
Контактная информация:

Re: Блокировка соцсетей (instagram.com)

Сообщение Sir_Prikol » 20 фев 2019, 11:41

address-list по имени домена, и правило, которое ловит данные из DNS сервера микротика и записывает их в address-list
Ну и скрипт, который преобразует динамические записи address-list в статические

Layer7 - убьёт проц, это устаревшая фича, чтобы собрались все ip адреса то должно пройти время, ну или где-нить узнай подсети инстаграмма по номеру AS и в adress-list просто добавь подсеть и блокируй
Дома:
Uplink - RB3011UiAS (2-ISP(ethernet)белый IP),RB SXT LTE 3-7 (резерв yota (белый IP),Wireless Wire Dish (RBLHGG-60adkit) Uplink белый IP.
2 x RB2011UiAS-2HnD, 2 x RBmAP2nD, 1 x RBwAPG-5HacT2HnD
Хочу uplink - RB1100AHx4 или CCR1036-12G-4S

belui
Сообщения: 2
Зарегистрирован: 20 фев 2019, 08:36

Re: Блокировка соцсетей (instagram.com)

Сообщение belui » 20 фев 2019, 13:00

Sir_Prikol писал(а):
20 фев 2019, 11:41
address-list по имени домена, и правило, которое ловит данные из DNS сервера микротика и записывает их в address-list
Ну и скрипт, который преобразует динамические записи address-list в статические

чтобы собрались все ip адреса то должно пройти время, ну или где-нить узнай подсети инстаграмма по номеру AS и в adress-list просто добавь подсеть и блокируй
А можно подробней про правило и скрип, желательно как оно прописано полностью, в микротиках я не очень.

Аватара пользователя
Chupaka
Сообщения: 1907
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск
Контактная информация:

Re: Блокировка соцсетей (instagram.com)

Сообщение Chupaka » 20 фев 2019, 13:06

Можно попробовать пойти со стороны DNS: добавить запись, которая будет все имена *.instagram.com (или какие они ещё домены используют) разрешать в 127.0.0.1. Ну и все DNS-запросы завернуть на роутер DST-NAT'ом, чтобы смена DNS на устройствах не помогала.

Аватара пользователя
Sir_Prikol
Сообщения: 281
Зарегистрирован: 14 апр 2018, 15:21
Откуда: СССР
Контактная информация:

Re: Блокировка соцсетей (instagram.com)

Сообщение Sir_Prikol » 20 фев 2019, 13:06

Поиск в кеше DNS по ключевому слову

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

:foreach i in=[/ip dns cache find] do={
    :local bNew "true";
    :local cacheName [/ip dns cache all get $i name] ;
 #   :put $cacheName;
    :if (([:find $cacheName "facebook" -1] >= 0) || ([:find $cacheName "outlook" -1] >= 0)) do={
        :local tmpAddress [/ip dns cache get $i address] ;
              :put $cacheName;
              :put $tmpAddress;
# if address list is empty do not check
        :if ( [/ip firewall address-list find ] = "") do={
            :log info ("added entry: $[/ip dns cache get $i name] IP $tmpAddress");
            /ip firewall address-list add address=$tmpAddress list=youtube_dns_ips comment=$cacheName;
        } else={
            :foreach j in=[/ip firewall address-list find ] do={
                :if ( [/ip firewall address-list get $j address] = $tmpAddress ) do={
                    :set bNew "false";
                }
            }
            :if ( $bNew = "true" ) do={
                :log info ("added entry: $[/ip dns cache get $i name] IP $tmpAddress");
                /ip firewall address-list add address=$tmpAddress list=youtube_dns_ips comment=$cacheName;
            }
        }
    }
}
Дома:
Uplink - RB3011UiAS (2-ISP(ethernet)белый IP),RB SXT LTE 3-7 (резерв yota (белый IP),Wireless Wire Dish (RBLHGG-60adkit) Uplink белый IP.
2 x RB2011UiAS-2HnD, 2 x RBmAP2nD, 1 x RBwAPG-5HacT2HnD
Хочу uplink - RB1100AHx4 или CCR1036-12G-4S

Аватара пользователя
Chupaka
Сообщения: 1907
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск
Контактная информация:

Re: Блокировка соцсетей (instagram.com)

Сообщение Chupaka » 20 фев 2019, 13:11

Sir_Prikol писал(а):
20 фев 2019, 13:06
Поиск в кеше DNS по ключевому слову
Небольшой вопрос в контексте оптимизации: вместо перебора каждого имени не проще найти сразу то, что надо?

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

/ip dns cache find name~"instagram"
Так, наверное, роутеру попроще будет...

Аватара пользователя
Sir_Prikol
Сообщения: 281
Зарегистрирован: 14 апр 2018, 15:21
Откуда: СССР
Контактная информация:

Re: Блокировка соцсетей (instagram.com)

Сообщение Sir_Prikol » 20 фев 2019, 13:23

Не спорю, я скрипт тащил со своего микротика, поэтому он может быть немного перегружен :)
Дома:
Uplink - RB3011UiAS (2-ISP(ethernet)белый IP),RB SXT LTE 3-7 (резерв yota (белый IP),Wireless Wire Dish (RBLHGG-60adkit) Uplink белый IP.
2 x RB2011UiAS-2HnD, 2 x RBmAP2nD, 1 x RBwAPG-5HacT2HnD
Хочу uplink - RB1100AHx4 или CCR1036-12G-4S

Ответить