Когда стоит использовать режим TUN? Сценарии и проверки перед включением

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


