xtrime-ru / antizapret-vpn-docker

Docker container with antizapret-vpn for selfhosting.
MIT License
97 stars 21 forks source link

Перестало работать на iOS #45

Open lu40k-tech opened 3 weeks ago

lu40k-tech commented 3 weeks ago

На версии контейнера выше 3.1.0 опять перестал работать antizapret на iOS, никуда ли не потерялся патч, о котором говорилось в Issue #14?

xtrime-ru commented 3 weeks ago

Патч на месте. DoH ответы фильтруются.

Нужно больше подробностей, что именно не работает?

После версии 3.1.0 только эти правки выглядят подозрительно:

  1. Выключил переопределение DNS в контейнере, так как оно ломает работу на новых системах, например в ubuntu24.04: https://github.com/xtrime-ru/antizapret-vpn-docker/commit/8721cb12241802b5849b1e03960fb77b3172cc08#diff-e45e45baeda1c1e73482975a664062aa56f20c03dd9d64a827aba57775bed0d3R20-R21 Если используется старая система на хосте (ubuntu 20.04), то стоит включить обратно.

    1. Выключил DNSSEC: https://github.com/xtrime-ru/antizapret-vpn-docker/commit/8721cb12241802b5849b1e03960fb77b3172cc08#diff-278d0c17715b18eb4d19d1ca3da8ea62a0a59924e35ac96f8f875c8f5ad4441bR11
lu40k-tech commented 3 weeks ago

У меня роутер на ASUSWRT-Merlin, VPN подключение и раздача DNS осуществляется через него. На ПК контейнер и все его обновления работают без проблем, все как надо. А вот на iOS, на контейнере версии выше 3.1.0, заблокированные сайты перестают открываться.

Если судить по сайту ip-api.com, iOS получает обычный Cloudflare DNS, т.к. на этом сайте отображается "Cloudflare DNS - Russia", В этот же момент, из той же сети, на ПК отображается "Cloudflare DNS - Страна, в которой находится сервер". Сравнивал старую и новую версию конфигурации .ovpn, из изменений нашел только удаление MTU. Откатился до коммита, где MTU еще на месте, но на той версии тоже не работает. В итоге дошел до версии 3.1.0, коммит #51c7c9c, на этой версии все работает и на iOS. Пробовал чистую установку контейнера и 2 разных сервера. Пришел к выводу, что проблема именно в обновлениях контейнера.

xtrime-ru commented 3 weeks ago

Проверил последнюю версию контейнера. Подключился с IOS через OpenVPN Connect - все работает.

  1. Клиент antizapret на роутере?
  2. iPhone подключен к интернету через роутер?
  3. ПК подключен к этому же роутеру?
  4. На ПК заблокированные сайты открываются, а на iphone нет?
  5. Какой docker compose файл используется, есть ли в нем правки?
  6. Какая версия операционки на хосте?
  7. Работает ли сеть внутри контейнера антизапрета?
    docker compose exec antizapret-vpn dig youtube.com @127.0.0.1
    docker compose exec antizapret-vpn dig yandex.ru @127.0.0.1
    docker compose exec antizapret-vpn curl https://ya.ru -v
  8. В момент попыток открытия сайтов на iPhone нужны логи контейнера: docker compose logs -f