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

Но перед подключением запрос к домену то через публичные нешифрованные dns идет. Да и после подключения тот же 1.1.1.1/help показывает мои указанные dns и после очистки кэшов.

Используйте DoH(443), вместо PlainDNS(53) после отключения(on-down) интерфейса AntiZapret.

Это что значит?

Ну тогда весь интернет умирает до отката, возможно, что-то неправильно делаю.

То что показывает соединение до CloudFlare

Настройка устройства для работы с DoH вместе с функцией Verify DoH Certificate

/tool fetch url="https://curl.se/ca/cacert.pem" mode=http

/certificate import file-name=cacert.pem passphrase=""

/ip dns set verify-doh-cert=yes

/ip dns set use-doh-server="https://dns.cloudflare.com/dns-query"

/ip dns static
add address=1.1.1.1 comment=dns.cloudflare.com name=dns.cloudflare.com
add address=1.0.0.1 comment=dns.cloudflare.com name=dns.cloudflare.com

/ip dns set servers=""

/ip dns cache flush

Подправить on-up & on-down скрипты для профиля AntiZapret

on-down:
/ip dns set use-doh-server="https://dns.cloudflare.com/dns-query";

on-up:
/ip dns set use-doh-server="";

Не оставляйте там ничего связанного с PlainDNS
/ip dns set servers

Тогда в логе получается без плейна:
DoH server connection error: resolving error
Напишите, пожалуйста, полную последовательность действий как здесь же Обход блокировки на mikrotik - #36 by khammatov , но с учетом работы через DoH

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

Для замены PlainDNS(53) на DoH(443) в профиле АнтиЗапрет.

Удалить старый профиль AntiZapret
/ppp profile remove AntiZapret

Удалить виртуальный интерфейс AntiZapret
/interface ovpn-client remove AntiZapret

Очистить DNS Upstream сервера
/ip dns set servers=""
/ip dns set use-doh-server=""

Перезагрузить устройство
/system reboot

нажать Y на клавиатуре

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

Screenshot from 2023-04-03 10-26-30

Добавить временные DNS сервера
/ip dns set servers="1.1.1.1,9.9.9.10"

Добавить статические записи для домена: dns.cloudflare.com

/ip dns static
add address=1.1.1.1 comment=dns.cloudflare.com name=dns.cloudflare.com
add address=1.0.0.1 comment=dns.cloudflare.com name=dns.cloudflare.com

Выкачать файл с корневыми сертификатами, в моем примере это хранилище от Mozilla
/tool fetch url="https://curl.se/ca/cacert.pem" mode=http

Импортировать файл с сертификатами
/certificate import file-name=cacert.pem passphrase=""

Включить проверку сертификатов
/ip dns set verify-doh-cert=yes

Удалить временные DNS сервера
/ip dns set servers=""

Вернуть отредактированный профиль интерфейса AntiZapret с использованием DoH(443) вместо PlainDNS(53)

/ppp profile
add change-tcp-mss=yes name=AntiZapret on-down="/ip dns set use-doh-server=\"https://dns.cloudflare.com/dns-query\";\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 use-doh-server=\"\";\r\
    \n/ip dns cache flush"

Вернуть виртуальный интерфейс AntiZapret, без изменений.

/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

Поправить Firewall

/ip firewall nat remove [find comment=AntiZapret]
/ip firewall nat add chain=srcnat action=masquerade out-interface=AntiZapret comment=AntiZapret

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

Поднять виртуальный интерфейс обратно.
/interface enable AntiZapret

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

Теперь при падении виртуального интерфейса AntiZapret, все DNS запросы будут перенаправляться на DoH(443) ресолвер от cloudflare.

Как на картинке

Screenshot 2023-04-03 at 10-40-58 1.1.1.1 — the Internet’s Fastest Privacy-First DNS Resolver

Тест: https://one.one.one.one/help

Спасибо, теперь DoH есть при отрубе интерфейса OpenVPN, но разве порты не надо менять с 53 на 443 в Firewall для полноценного сокрытия dns запросов от провайдера? И есть смысл включать сжатие с принудительным шифрованием в профиле?
image
И еще, а есть ли варианты как-то совместить фильтрующие DoH сервера от CloudFlare с OpenVPN АнтиЗапрета? Просто как-то не особо понятно, почему тот же https://family.cloudflare-dns.com/dns-query требует указать 1.1.1.3, 1.0.0.3, а тот адрес от вас без фильтрации плейна не требует вообще.

Ага

Неа

/ip dns static
add address=1.1.1.3 comment=family.cloudflare-dns.com name=family.cloudflare-dns.com
add address=1.0.0.3 comment=family.cloudflare-dns.com name=family.cloudflare-dns.com

Заменить это:
https://dns.cloudflare.com/dns-query

На это:
https://family.cloudflare-dns.com/dns-query

Для обхода блокировок и параллельной фильтрации DNS трафика требуются отдельные сервисы.

Проще со своим контейнером. Но можно и локально, если есть возможность содержания сервисов в постоянной доступности.

Все это к теме Микротика уже не относится.

Возможно, это будет относится к Микротику если поставить пакет container из Extra packages
Советовать такой вариант не стану, судя по модели вашего устройства.

сделал всё по инструкции - всё работает. единственное хотел уточнить: в случае сбоев антизапрета, мой интернет продолжит работать или тоже падет?

При корректном отключении виртуального интерфейса и срабатывании on-down команд, все продолжит работать.

Гарантий нет, если интерфейс зависнет на вашей стороне и скрипты из профиля не сработают, интернета не станет.

Ребят. Напишите пожалуйста свежую пошаговую инструкцию как настроить на микротике Антзапрет. А то та что самая первая не работает. Заранее Вас благодарю.

Спасибо за инструкцию. Настроил. Подключается и ошибок нигде нет.
При проверка browserleaks показывает все же 2 записи.


При включенном vpn

Подскажите, пожалуйста, что я мог упустить?

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

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

Можно

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

Для обновления устаревших корневых сертификатов DoH.

/ip dns set servers="1.1.1.1,9.9.9.10"

/certificate remove [find where name!=antizapret-client-shared.crt_0]

/tool fetch url="https://curl.se/ca/cacert.pem" mode=http

/certificate import file-name=cacert.pem passphrase=""

/ip dns set servers=""

Считаю, что есть пара моментов, которые стоит добавить. Они не относятся к самому Mikrotik, но относятся к устройствам, которые будут к нему подключены.

В Google Chrome на ПК и в настройках системы Android требуется отключить частный DNS.

Это есть в АнтиЗапрет — диагностика и решение проблем

Убедитесь, что используете DNS-сервер внутри VPN-соединения, а не сторонний или провайдерский. Проверьте, что не используете DNS over HTTPS в браузере («Защищенный DNS»), Private DNS в Android, Private Relay в iOS.

Доброго дня. Не нашел в поиске ответа. Можно ли исключить из обхода определенный сайт? По какой то причине сайт truenas.com кидает через OVPN, хотя не должен. Без включенного VPN сайт работает, с включенным почему то не открывается. Спасибо.