Обход блокировки на mikrotik

Интересная проблема возникла. Когда активен обход на микротике, не могу получить доступ к домену, который обслуживается на cloudflare. Выдаёт ошибку dns_probe_finished_nxdomain. Как только вводишь другие dns серверы (например гугловский или от cloudflare), то работает. Но, естественно, тогда не работает обход блокировок. Как это исправить?

Возникла проблема. Все настроено, как написано и все работало около недели. Потом перестали работать только заблокированные ресурсы.
Подключение к VPN - есть.
DNS Антизапрета получен.
Никаких других ДНС в системе нет.
При отключении от VPN - интернет не работает совсем с ошибкой по ДНС, при подключении все сайты работают, кроме заблокированных

Спасибо, разобрался. Была проблема с файрволом на маршрутизаторе

Приветствую, после добавления этого правила у клиента l2tp (android) в обще все перестает открываться.

Проверьте какой DNS-сервер получил микротик: IP - DNS, Dynamic Servers
Проверьте IP - Firewall - Filter Rules, не закрыт ли порт 53

Укажите в вашем правиле scr-address=“пул ip вашей локальной сети”
Либо в in-interface=“интерфейс вашей локальной сети”

Я редиректы не использую. При отключении и включении ВПН прекрасно справляется скрипт на очищение ДНС. Я уже и забыл, что у меня антизапрет настроен, пока вы не написали)

Добрый день! Почему-то срубилось на п.4 - ключ К не появляется.

Теперь аналогично добавим ключ flash/antizapret.key. Заметьте, что у сертификата добавился флаг K.

Прошивка 6.48.2 stable
Можете подсказать пожалуйста где проблема?
Интерфейс ovpn не работает, соответственно. В логах - ovpn-antizapret: connecting… terminating… - TLS failed

Спасибо большое, сработало!
Видимо файл key криво получался, хотя переделывал вроде как.
Единственное, еще не совсем понял про эту настройку:

На случай непредвиденных проблем, отключения сервера Антизапрета и чего либо еще я оставляю несколько DNS ресолверов в настройках IP - DHCP Server - Networks - Выбираем свой DHCP сервер - DNS Servers , чтобы быстро можно было отключить два правила Файрвола, которые выше, и интернет продолжил работать как раньше, но уже без обхода блокировок, и обратно так же быстро вернуть настройки. Выключил - Включил.

Правильно я понимаю, что прописано несколько значений в поле DNS Servers на вкладке “Networks” в меню IP → DHCP Server ? Не совсем понял как это позволяет быстро отрубать/ врубать вышеуказанные правила FW

Я так ранее делал.
Работало как-то вот так.
При отключении виртуального интерфйеса ovpn-client АнтиЗапрет, срабатывал down-script, который отключал по порядковому номеру два этих правила, и те DNS ресолверы, которые прописаны в настройках DHCP начинали работать. А при подъеме интерфейса АнтиЗапрет, срабатывал up-script, который включал обратно эти два правила. Что я и обозначил как Выключил - Включил.

Сейчас можно вот так попробовать

On-Up:

/ip dns cache flush;
/ip firewall nat add action=redirect chain=dstnat comment=“Redirect to Router” dst-port=53,5353,1253 protocol=udp;
/ip firewall nat add action=redirect chain=dstnat comment=“Redirect to Router” dst-port=53,5353,1253 protocol=tcp;
/ip dns set servers=“”

On-Down:

/ip dns cache flush;
/ip firewall nat remove [find comment=“Redirect to Router”];
/ip dns set servers=1.1.1.1

Понял, спасибо. Но вот кстати, мониторя работу решения, прихожу к выводу что работает оно у меня крайне нестабильно, не могу пока понять с чем это связано. То работает то нет. Наверное нужно или поковыряться с DNS, где-то там видимо собака зарыта. Потому что регулярно встает вместо Германии с непредсказуемой периодичностью это


и ручной dns cache flush не помогает
Причем OVPN соединение не падает и пакетики вроде летают… хз
Наверное нужно самому решение строить

Для начала избавьтесь от сторонних DNS в своей сети.
Узнайте как вы подключены к провайдеру своему.
Если pppoe, зайдите в настройки этого виртуального интерфейса и отключите Use Peer DNS.
В случае если это DHCP-Client, там такая же опция имеется, тоже отключаем.
С другими так же наверное, не знаю.

Вижу что Вы дописали важные строчки чуть позже, я к ним сам пришел в итоге методом тыка )) с ними все работает стабильно) это то чего не хватало даже с выключенным Use Peer DNS

/ip dns set servers=“”;
/ip dns set servers=1.1.1.1,1.0.0.1;

Спасибо Вам большое ) А тем временем Роскомнадзор не исключил замедления трафика Google – Коммерсантъ так что еще рано расслабляться))

А не подскажете такой кейс - есть тоннель на этом же роутере до другой локации, можно ли на удаленном роутере настроить маршрутизацию таким образом чтобы ходить по заблокированным сайтам через мой роутер по тоннелю, используя мои настройки antizapret?

Кстати, еще одна странность. У меня чекбокс на DHCP Client - Use Peer DNS сам собой в настройках восстанавливается. Не пойму, то ли это баг, то ли это как-то провайдер делает ))

Если хорошо знакомы с Микротиками.
Произведите переустановку прошивки с помощью софта NetInstall и обновите его полностью.

MikroTik Routers and Wireless - Software

Выкачайте видеоинструкцию себе на устройство, чтобы под рукой всегда было.
Отключите все кабели, включая провайдера, ибо мы подозреваем что он мутит нам воду.
По инструкции переустанавливаете RouterOS.
Провайдер все еще не подключен. Не забываем.

Делаем так:

/system reset-configuration keep-users=no caps-mode=no no-defaults=yes skip-backup=yes

Создаем нового пользователя с полными правами. Уникальное название, не - admin.
И такой же уникальный пароль. Удаляем пользователя - admin.
Перезагружаем устройство. И далее втыкаем провод от провайдера и настраиваете сами.

И не забываем сделать вот так.

/system package update
check-for-updates
install

/system routerboard upgrade
/system reboot

Можете еще проверить, что имеется в списке скриптов и планировщике

System > Scripts
System > Scheduler

Возможно там есть скрипты автоматической настройки, которые меняют настройки после ваших манипуляций.
И чтобы наверняка, убедитесь что пользователь имеет пароль, желательно пользователя пересоздать со своим запоминающимся именем, что угодно кроме слова - admin.

Например:

Username: izogar
Password: myISP#874sucks*

Если ваш Микротик настраивал сотрудник компании провайдера, в нем могли оказаться какие угодно настройки, имейте ввиду.

Поглядите еще, не включены ли на устройстве сервера: Telnet,SSH…
И по возможности все остальные методы удаленного управления устройством.
Возможно это автоматические системы, которые контролируют оборудование клиентов. Для автоматической настройки или еще чего либо.

Понял, спасибо ) Нет, роутер без бэкдоров скриптов скрытых админов и прочего. Настраивал сам, сбросив дефолтную конфу.
Но! Заметил одну забавную вещь - мобильник стабильно работает c заблокированными сайтами и показывает DNS Германия, а ноут на той же wifi сети нет (Макос). sudo dscacheutil -flushcache не помогает - помогает перезагрузка. Мистика! продолжаю копать дальше

Всем привет, сделал данную настройку для hAP ac2 - все прекрасно работает! Но теперь у меня загвоздка: я правильно понимаю что не получится теперь поставить фильтра DNS типа Pi-Hole или AdGuard DNS? Если же можно, ткните пожалуйста, а то я еще зеленый в микротах(

Можно поставить PI-Hole или аналог, если свой контейнер запустите.
Вот тут смотрите https://ntc.party/t/vpn/129/39

Делал по вашему посту Обход блокировки на mikrotik - #22 by khammatov в нем гораздо быстрее и удобнее описан способ чем в первом посте. Но после выполнения всех действий обход блокировок не заработал. Я стал сравнивать с инструкцией первого поста и заметил что по вашей инструкции у меня в графе Use Peer DNS выбрано значение yes, я изменил его на exclusively и обход блокировок заработал. Может внесёте изменения в свою инструкцию с учётом того что я выше написал.

И ещё не могли бы вы также подробно сделать инструкцию на случай если сайт antizapret.prostovpn.org перестанет работать. То микторик сам бы менял DNS на провайдерские (или другие, лишь бы интернет не переставал работать). Ну и обратно на antizapret когда он восстановит работу.

Ещё добавлю. В вашей инструкции при копировании команды вот кусок “cipher=aes128 connect-to=vpn.antizapret.prostovpn.org 3 name=AntiZapret” появляется символ 2 или 3 ну сколько раз было нажато на ссылку. И когда всю команду копируешь и вставляешь в микротик то естественно он пишет ошибку из за этого лишнего символа.

Сборник ссылок

Для настройки АнтиЗапрет.

Заходим сюда:

IP - DHCP Server - Networks - выбираем свою сеть - DNS Servers

Задаем DNS Servers

1.1.1.1
9.9.9.10

Перезагружаем Микротик.

Настраиваем Антизапрет.

Загружаем актуальный архив с сертификатом и ключом: antizapret-tcp.zip

https://antizapret.prostovpn.org/antizapret-tcp.zip

Резервные ссылки на актуальный архив с сертификатом и ключом

https://antizapret.prostovpn.org:8443/antizapret-tcp.zip

https://antizapret.prostovpn.org:18443/antizapret-tcp.zip

https://raw.githubusercontent.com/nzkhammatov/certificates/main/antizapret-openvpn/antizapret-tcp.zip

Распаковываем архив:

antizapret-tcp.zip

Отправляем 2 этих файла в память Микротика:

antizapret-client-shared.crt
antizapret-client-shared.key

Импортируем сертификат, а после ключ:

/certificate import file-name=antizapret-client-shared.crt passphrase=""
/certificate import file-name=antizapret-client-shared.key passphrase=""

Проверим статус сертификата:

/certificate print detail from=antizapret-client-shared.crt_0

Если наблюдаем 2 этих флага: K T
Выделено красной линией
Значит порядок, смотрим картинку и идем далее

Делаем так, чтобы наш Микротик взял на себя ответственность за обработку DNS

/ip dns set allow-remote-requests=yes

Добавим DNS, в конце настройки оно само очиститься.

/ip dns set servers="1.1.1.1,9.9.9.10";

:warning: Проведем осмотр интерфейсов способных отдать список DNS серверов

PPPoE

DHCP Client

PPPoE, DHCP Client, ...

:warning: И отключим опцию: Use Peer DNS

Сейчас раздел IP - DNS
Должен выглядеть как на картинке

photo_2024-03-18_22-06-50

Создаем профиль для виртуального интерфейса:

/ppp profile 
add change-tcp-mss=yes name=AntiZapret on-down=\
    "/ip dns set servers=\"1.1.1.1,9.9.9.10\";\r\
    \n/ip dns cache flush;\r\
    \n{:delay 10};\r\
    \n/ip dns static remove [find comment=\"v.31337.lol\"];\r\
    \n/ip dns static add address=[/put [resolve v.31337.lol]] comment=v.31337.lol name=v.31337.lol;" on-up="/ip dns set servers=\"\";\r\
    \n/ip dns cache flush"

Создаем виртуальный интерфейс:

/interface ovpn-client add certificate=antizapret-client-shared.crt_0 cipher=blowfish128 connect-to=v.31337.lol name=AntiZapret password=none port=1194 profile=AntiZapret user=none use-peer-dns=yes disabled=yes

Создадим 3 правила в NAT, первый для Маскарада и два других для редиректа всего не шифрованного DNS на Микротик.

/ip firewall nat add chain=srcnat action=masquerade out-interface=AntiZapret comment=AntiZapret;
/ip firewall nat add action=redirect chain=dstnat comment="DNS Redirect to Router" dst-port=53,5353 protocol=udp;
/ip firewall nat add action=redirect chain=dstnat comment="DNS Redirect to Router" dst-port=53,5353 protocol=tcp;

Перетащим их на самый верх или под правило Маскарад вашего провайдера (основного шлюза).

/interface enable AntiZapret

Перезагрузите Микротик, проверяйте.

По итогу раздел IP - DNS
Должен выглядеть вот так

Screenshot from 2023-04-03 10-18-47

При проведении тестов на ресурсе https://browserleaks.com/dns
Должны получаться результаты как на картинках


Роутрер микротик настроенный по инструкции от сюда. Вчера и сегодня периодически не открываются сайты.
При открытии browserleaks.com показывает немецкий ip и два российских.
Germany, Limburg an der Lahn
Russia, St Petersburg (Tsentralnyy rayon)
Russia, Moscow
И это всё периодично происходит. Потом через какое то время показывает только немецкий ip и сайты открываются.