Смешанный порт — дверь на вашей машине

Сразу после запуска клиент слушает локальный порт, по умолчанию обычно 7890. mixed-port означает, что один порт принимает и HTTP-прокси, и SOCKS5, а клиент сам разбирается, что пришло. Старые конфиги с раздельными port и socks-port тоже работают: смешанный порт просто избавляет от второго числа.

mixed-port: 7890
allow-lan: false

Открытая дверь — ещё не трафик. Кто-то должен осознанно отправить запрос на этот адрес. Команды ниже показывают, слушается ли порт и добирается ли он до внешней сети; в macOS возьмите lsof -i :7890, в Linux ss -tlnp. Ответ 204 означает, что цепочка от порта до узла цела.

netstat -ano | findstr 7890
curl -x http://127.0.0.1:7890 https://www.gstatic.com/generate_204 -I
Партнёрский материалОткуда взять ссылку на подписку?Партнёрский сервис даёт 1 ГБ высокоскоростного трафика Гонконга при регистрации — импорт в один клик.Получить быстрые серверы

Системный прокси — записка для операционной системы

Переключатель делает меньше, чем кажется: он вписывает 127.0.0.1:7890 в настройки прокси операционной системы, и всё. В Windows значение видно в «Параметрах», раздел «Сеть и Интернет», «Прокси-сервер»; в macOS — «Сеть», «Подробности», «Прокси». Выключение стирает эту строку.

  • Браузеры её читают, а следом за Chromium читают и приложения на Electron: эти двое оживают первыми.
  • Консольные утилиты обычно её игнорируют и признают только http_proxy и https_proxy.
  • UDP ей недоступен. Игры, звонки и реалтайм-часть некоторых мессенджеров идут напрямую в любом случае.

TUN ставит в систему виртуальный адаптер

TUN не рассчитывает на сговорчивость программ. Ядро создаёт виртуальный адаптер и правит таблицу маршрутизации так, чтобы маршрут по умолчанию вёл туда. Весь исходящий трафик машины, включая UDP, попадает в движок правил — независимо от того, знает ли программа про прокси.

tun:
  enable: true
  stack: mixed
  auto-route: true
  dns-hijack:
    - any:53

stack обычно принимает значения system, gvisor или mixed, и смена стека — самая дешёвая проверка, когда под TUN капризничает одно приложение. auto-route отвечает за правку маршрутов: выключен — адаптер есть, а трафика в нём нет. Плата — привилегии: Windows ставит фоновую службу, macOS при первом включении просит пароль администратора.

Три механизма рядом

  • Охват: порт обслуживает тех, кто сам пришёл; системный прокси добавляет слой послушных программ; TUN забирает машину целиком.
  • UDP: надёжен только TUN. В SOCKS5 ретрансляция UDP описана, но реализовать её должно приложение, и делают это немногие.
  • Права: первые два работают от обычного пользователя; TUN требует администратора или службы, а на рабочем ноутбуке пункт нередко серый.
  • Остатки: порт исчезает вместе с процессом, а системный прокси — постоянная настройка ОС, переживающая принудительное завершение.
  • Локальная сеть: allow-lan: true пускает соседние устройства на порт 7890. Это только про порт и никак не связано с TUN.
Если после выхода из клиента машина осталась без интернета, адрес прокси почти наверняка всё ещё прописан в настройках ОС, а слушать порт уже некому. Закрывайте клиент через значок в трее, а не завершением процесса; если это уже случилось, выключите системный прокси вручную.