Голосовые звонки в Telegram не проходят под VPN

  • Тип настройки: VPN
  • Тип проблемы: не проходят голосовые звонки в мобильном Telegram при установленном VPN соединении
  • Что с сайтом: уведомление о звонке проходит, а само голосовое соединение не устанавливается
  • Используемый браузер: стандартный мобильный Телеграм из Play Market’а

Попробуйте подключиться к VPN вот с этим конфигурационным файлом:
antizapret-tcp_nothing.ovpn (6.3 KB)

Это файл-пустышка: он только подключается к серверу, но не устанавливает ни маршрутов, ни DNS.
Если при подключении к нему проблемы останутся, то это ошибка в приложении Telegram. Скорее всего, связанная с определением IP-адреса для пробива NAT — возможно, разработчики предположили, что VPN-соединение не может не пропускать весь трафик.

С antizapret-tcp_nothing.ovpn проблема осталась. Спасибо за подсказку! Баг в ТГ:
https://bugs.telegram.org/c/19158

У вас, кстати, какой OpenVPN-клиент: OpenVPN Connect или OpenVPN for Android?

Давайте я помогу вам с написанием правильного сообщения об ошибке.

Voice calls are not working when local-only (split-tunneling) VPN is connected

Voice calls are not working with “antizapret” VPN when using private IPs (like 192.168.X.X). Antizapret is a free VPN service used by people in Russia to bypass censorship, but unlike regular VPN, it works like a split-tunneling VPN: it does not set default route, it does not redirect all users’ traffic.
Its OpenVPN configuration file: https://antizapret.prostovpn.org/antizapret-tcp.ovpn

The bug is reproducible with a minimum OpenVPN configuration which provides only internal network access, and does not install any additional routes or change DNS.

Antizapret support suggests that the bug is most likely related to determining source IP address the call/NAT punching — perhaps Telegram developers believed that when a VPN connection is established, it always redirect all the traffic, which is not true in the case of this service. If this assumption is correct, then there’s a bug in Telegram: it should use source IP of (or bind to) the internet interface, not the VPN interface.
https://ntc.party/t/telegram-vpn/2852

Steps to reproduce

OpenVPN Connect

Попробуйте OpenVPN for Android, чтобы убедиться в наличии той же проблемы.
В качестве временного решения можно исключить OpenVPN из списка использования VPN, в OpenVPN for Android есть такая функция.

is most likely related to determining source IP address the call/NAT punching

Вот это звучит немного странно, здесь точно нет ошибки?

Попробуйте OpenVPN for Android

Попробую, спасибо!

Не могу сказать, как это реализовано в Telegram, но в браузерах WebRTC байндится на разные локальные IP/интерфейсы в процессе ICE, т.к. пиры могут быть внутри одной локальной сети/одного NAT/CGNAT, а интерфейсов может быть несколько.

Попробуйте OpenVPN for Android

Симптомы те же

Не могу сказать, как это реализовано в Telegram

Я там в тикете оставил ссылку сюда в любом случае

В качестве временного решения можно исключить OpenVPN из списка использования VPN, в OpenVPN for Android есть такая функция.

Это где там в настройках такое? Не могу сообразить.

UPD: А, в смысле, Telegram включить в список приложений, разботающих без VPN? Ну такое, а если его заблокируют завтра?