Чат и голос — это два разных соединения
Текст и голос идут по разным правилам. Самая частая жалоба звучит одинаково: сообщения отправляются, сервер виден, а в голосовом канале тишина. Причина не в настройках звука.
Текстовая часть работает поверх обычных веб-соединений — их посредник проводит без затруднений. Голос устроен иначе: он передаётся датаграммами, которые идут по протоколу UDP, потому что для разговора важнее скорость доставки, чем гарантия, что дойдёт каждый пакет.
Обычный прокси с UDP не работает. Отсюда и картина: половина приложения функционирует, половина молчит.
Что про это говорит стандарт
Стандарт SOCKS5 предусматривает три операции: установить исходящее соединение, принять входящее и передавать датаграммы UDP — последняя называется UDP ASSOCIATE.
Ключевое слово здесь «предусматривает». Поддержка описана в стандарте, но каждая конкретная реализация решает сама, включать её или нет. Большинство публичных узлов ограничиваются первой операцией, потому что её достаточно для веба и она проще в обслуживании.
HTTP-прокси вопрос не решает в принципе: он рассчитан на веб-запросы, и датаграмм в его модели нет вовсе.
Проверить заранее, поддерживает ли конкретный узел UDP, снаружи нельзя — это выясняется попыткой.
Почему при этом растёт задержка
Даже когда голос проходит, разговор может стать некомфортным.
Каждое дополнительное звено добавляет время в пути, а голосовая связь к задержке чувствительна: собеседники начинают перебивать друг друга, речь распадается. Заметным это становится раньше, чем при просмотре видео, где буфер сглаживает неровности.
География усиливает эффект: узел на другом континенте добавляет задержку просто расстоянием, и обойти это невозможно.
Что делать
Если нужен только текст — посредника хватит, задача решена.
Если нужен голос, у прокси два условия сразу: поддержка UDP на стороне узла и близкое расположение. Публичные адреса не дают обычно ни того, ни другого.
Туннель на уровне устройства закрывает вопрос иначе: трафик идёт целиком, разделения на «текст проходит, голос нет» не возникает. У нас VPN PRO работает на выделенных серверах, и задержка там — вопрос выбора локации, а не удачи.
Настройки внутри приложения, которых нет
Вопрос возникает регулярно, поэтому стоит ответить прямо: отдельного поля для ввода прокси в самом приложении не предусмотрено.
Настольная версия работает поверх системных настроек соединения — то, что задано в параметрах операционной системы, она обычно использует. Мобильное приложение задаёт соединение самостоятельно, и системную настройку может игнорировать.
Поэтому способов ровно два: настройка на уровне системы, если приложение её читает, или туннель на уровне устройства, который приложению обойти нечем. Третьего варианта, при котором прокси вводится внутри самого приложения, просто не существует.