Телефон остался без VPN? Туннель на роутере или клиент на каждом устройстве
Туннель на роутере охватывает телевизор и консоль; клиент на каждом устройстве держит политики раздельно. Сравните охват, протоколы, DNS и общий сбой.
Ноутбук подключён к VPN, телефон в той же сети Wi-Fi, и всё же телефон выходит в интернет с адреса ISP. Это не ошибка клиента: туннель живёт на машине, которая его завершает, и ничто другое не наследует его по близости. Охват расширяется только тогда, когда роутер сам запускает клиента, или когда машину намеренно превращают в шлюз для LAN. Какую модель выбрать, решают три вещи: протокол, на котором ваш провайдер действительно говорит, насколько по-разному нужно обрабатывать устройства и какой сбой вы выдержите в девять вечера.
Что на самом деле охватывает туннель на роутере
Когда туннель завершается на роутере, каждое устройство, которое маршрутизирует через него, делит выход. В этом привлекательность для телевизора, консоли или аппарата, который никогда не запустит клиент: нечего устанавливать, нечего поддерживать в актуальном состоянии и одно место для смены провайдера.
Охват условен такими способами, которые удивляют людей. Гостевая сеть или второй SSID со своей политикой идёт по пути, который определяет эта политика, а не по туннелю. Путь IPv6 может обойти туннель, который несёт только IPv4. Устройство с собственным приложением VPN или собственным шифрованным резолвером полностью игнорирует роутер. А собственный трафик роутера, включая обновления и DNS, следует его политике выхода, которая является другим путём, чем пересылаемый трафик LAN.
Проверка одинакова в обеих моделях и занимает минуту: спросите два устройства, какой адрес видит мир, а затем посмотрите в списке подключений роутера туннель. Если телефон сообщает адрес ISP, пока роутер показывает установленный туннель, телефон не маршрутизируется через него, и никакое переподключение этого не изменит.
Где выигрывает клиент на каждом устройстве
Клиенты на каждом устройстве выигрывают, как только требования расходятся. Рабочему ноутбуку может понадобиться корпоративный туннель, в который телефон не должен входить; клиент провайдера может предлагать раздельный туннель по приложению, чего роутер не умеет выразить; консоли, возможно, нужно остаться снаружи, чтобы сохранить свой тип NAT. Каждое устройство также отказывает само по себе, поэтому одна истёкшая подписка не заглушает весь дом.
Учётные данные — более острый аргумент. Роутер, который подключается от имени всех, держит один аккаунт, и каждый человек в этой сети наследует его доступ. Если цель — аутентификация каждого человека до доступа в интернет, один туннель на роутере этого не может. Обычное решение — captive-портал, который проверяет аккаунт и затем выпускает клиента в уже установленный туннель, а это больше движущихся частей, чем хочет большинство домов.
Поддержка протоколов решает больше случаев, чем предпочтение
Потребительские роутеры предоставляют только те протоколы, которые поставил производитель. Роутер с PPTP, L2TP или обычным IPsec не может подключиться к провайдеру, который публикует только профили OpenVPN или WireGuard, и никакая настройка этого не изменит. Честные варианты — провайдер, говорящий на поддерживаемом протоколе, роутер с OpenWrt или другой прошивкой и нужным клиентом, либо клиент на каждом устройстве.
Обратный случай столь же част: роутер с поддержкой OpenVPN не может использовать провайдера, чья услуга зависит от собственного клиента и его собственных трюков маршрутизации. Прочитайте страницу провайдера о поддерживаемых протоколах до покупки оборудования и проверьте версию прошивки, потому что «поддерживает WireGuard» на странице продукта часто означает одно конкретное поколение прошивки.
Дорожный роутер с клиентом WireGuard — дешёвая версия модели с роутером и разумный ответ для нескольких устройств, которые не могут запустить клиент. Это всё ещё туннель на роутере, поэтому всё сказанное выше о гостевых сетях, IPv6 и общем сбое действует без изменений.
Третий вариант: машина как шлюз
Делиться клиентом с ноутбука можно, и это обычно и имеют в виду, когда говорят, что превратили ноутбук в роутер.
sysctl -w net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADEЭто работает, пока машина не заснёт, клиент не переподключится в другой профиль или собственный брандмауэр машины не отбросит пересылаемые пакеты. Тогда всё за ней теряет связь сразу, и сбой выглядит как мёртвая сеть, а не как проблема VPN.
Для лаборатории или временной установки это нормально. Как постоянное решение он делает один ноутбук единственной точкой отказа домохозяйства, и обычно заканчивается тем, что кто-то недоумевает, почему телевизор перестал работать, когда закрылась крышка.
Входящие порты, DNS и общий сбой
Входящие службы перемещаются вместе с туннелем. VPN на роутере обычно ломает перенаправление портов для сервера в LAN, а динамическое имя DNS должно указывать на выход VPN, а не на адрес ISP, если служба должна быть доступна через туннель. Некоторые провайдеры вообще не предлагают маршрутизируемый входящий адрес, что тихо завершает любой план, который на него опирался.
DNS следует за роутером, когда роутер владеет туннелем, что удобно, пока одному устройству не понадобится другой резолвер. Клиент на каждом устройстве может это выразить; политика роутера не может без разделения сети на две. Сбой тоже общий, потому что один сбой, одна истёкшая подписка или один плохой протолкнутый маршрут отключают каждое устройство в один и тот же момент.
Выберите модель с роутером, когда устройства не могут запускать клиенты и один выход приемлем. Выберите клиентов на каждом устройстве, когда политики различаются, когда провайдеру нужен протокол, которого у роутера нет, или когда аккаунт нельзя делить. Если машина — шлюз, запишите, какой интерфейс делит какую сеть, и проверьте случай «туннель упал», потому что именно в этом состоянии большинство таких схем оказываются неверными.