dovecoteescapee / ByeDPIAndroid

App to bypass censorship on Android
https://ntc.party/c/community-software/byedpi
GNU General Public License v3.0
2.95k stars 127 forks source link

dnscrypt + ByeDPI #90

Closed Stepman123 closed 3 months ago

Stepman123 commented 3 months ago

Describe the bug / Описание ошибки

Не применяются настройки DNS в виде 127.0.0.1:5353 Не запускается если DNS - 127.0.0.1

To Reproduce / Как воспроизвести

  1. Установить dnscrypt, ByeDPI
  2. Применить настройки DNS (ip:port) в ByeDPI
  3. See error

Expected behavior / Ожидаемое поведение

Должно работать с dnscrypt.

Screenshots / Скриншоты

No response

Environment / Окружение

Smartphone / Смартфон:

Additional context / Дополнительная информация

У меня установлен dnscrypt на Андроид 7.1.2 в паре с программой, которая отслеживает изменение DNS при подключении, что бы заново применить настройки DNS. Это Override DNS. При использовании обычных VPN, DNS работает тот который в самом VPN, не смотря на Override DNS. Но я подумал что если ByeDPI это локальный VPN, то он мог бы использовать локальный dnscrypt.

dnscrypt работает на 127.0.0.1:5353. Когда я ввожу это значение в настройки ByeDPI, то он отказывается сохранять это значение.

Тогда я изменил конфигурацию dnscrypt на стандартный порт 127.0.0.1:53. Теперь я могу в настройках ByeDPI прописать 127.0.0.1 и это сохраняется, но теперь в ByeDPI не работает Connect. "Failed to start VPN"

Что бы проверить какой DNS реально работает, использовался www.dnsleaktest.com

Before you submit / Прежде чем отправить

dovecoteescapee commented 3 months ago

У меня установлен dnscrypt на Андроид 7.1.2 в паре с программой, которая отслеживает изменение DNS при подключении, что бы заново применить настройки DNS

Можете прислать ссылки на приложения, которые вы используете?

dnscrypt работает на 127.0.0.1:5353. Когда я ввожу это значение в настройки ByeDPI, то он отказывается сохранять это значение.

Android не позволяет указать порт DNS

Теперь я могу в настройках ByeDPI прописать 127.0.0.1 и это сохраняется, но теперь в ByeDPI не работает Connect. "Failed to start VPN"

Пришлите логи (сохранить можно в главном меню) сюда или на почту dovecoteescapee@cock.email UPD: не надо, смотрите следующий ответ

dovecoteescapee commented 3 months ago

Тогда я изменил конфигурацию dnscrypt на стандартный порт 127.0.0.1:53. Теперь я могу в настройках ByeDPI прописать 127.0.0.1 и это сохраняется, но теперь в ByeDPI не работает Connect. "Failed to start VPN"

Android не поддерживает указание локальных адресов в качестве DNS

Stepman123 commented 3 months ago

Android не поддерживает указание локальных адресов в качестве DNS

Но он же работает с Override DNS на андроид 7. Сейчас я пробую ByeDPI в прокси режиме с sockstun и DNS теперь работает через dnscrypt.

Stepman123 commented 3 months ago

Можете прислать ссылки на приложения, которые вы используете?

dnscrypt https://github.com/DNSCrypt/dnscrypt-proxy/releases (arm 2.1.5) Override DNS (a DNS changer) v5.3.2-0-g51105449 https://4pda.to/forum/index.php?showtopic=594809&st=40 (пост #47)

dovecoteescapee commented 3 months ago

Но он же работает с Override DNS на андроид 7

Я говорю про DNS, указываемый VPN сервису (именно эта настройка указывается в ByeDPI). Он не позволяет указать порт и не поддерживает локальные адреса.

Override DNS требует root-права, у него больше возможностей, чем у ByeDPI.

Сейчас я пробую ByeDPI в прокси режиме с sockstun и DNS теперь работает через dnscrypt.

Вы указали 127.0.0.1 в качестве DNS в sockstun?

Stepman123 commented 3 months ago

Вы указали 127.0.0.1 в качестве прокси в sockstun?

В sockstun пришлось очистить поле DNS (ipv4 и ipv6 тоже) иначе ничего не работало. Ну то-есть DNS в браузере не срабатывал, ошибка об этом. Вот кстати, почему в ByeDPI с пустым полем не получилось. Однако, мне надо еще раз проверить.

Stepman123 commented 3 months ago

Ага, не дает с пустым полем сохранить настройку. А по логике это должно сработать как в sockstun, ведь он тоже локальный VPN.