WireGuard на роутере: что нужно знать до настройки
WireGuard на роутере настраивают одним файлом: сервер выдаёт короткий текст с ключами и адресом, прошивка его читает и поднимает туннель для всей квартиры. Сбои обычно дают не сам протокол, а старая прошивка, ошибка в адресе сервера, сбитые часы роутера или сеть оператора. Ниже разобран файл по строчкам, требования к роутеру и признаки, по которым видно, где сбой.
Что написано в файле настроек
Файл с расширением .conf открывается любым блокнотом. У типичного клиентского файла две части: [Interface] описывает сам роутер, [Peer] описывает сервер, к которому он подключается. Значения ниже выдуманы, но порядок строк такой же, как в настоящем файле.
[Interface] PrivateKey = aGVsbG8... # секретный ключ роутера Address = 10.8.0.2/32 # адрес роутера внутри туннеля DNS = 10.8.0.1 # кто отвечает на запросы имён [Peer] PublicKey = c2VydmVy... # открытый ключ сервера Endpoint = 203.0.113.10:51820 # адрес и порт сервера AllowedIPs = 0.0.0.0/0 # что отправлять в туннель PersistentKeepalive = 25 # «пинать» сервер раз в 25 с
Две строки здесь важнее остальных. AllowedIPs со значением 0.0.0.0/0 значит, что в туннель уйдёт весь трафик, включая банк, госуслуги и онлайн-кинотеатры. Многие российские сайты такой заход с иностранного адреса встречают капчей или отказом, поэтому заранее решите, все ли устройства дома должны сидеть в туннеле. PersistentKeepalive нужен, когда роутер стоит за адресом провайдера, общим для многих абонентов: без регулярного сигнала провайдер забывает соединение, и сервер перестаёт до вас дотягиваться.
PrivateKey никому не пересылайте и не выкладывайте скриншот файла на форум. Ключ даёт доступ к туннелю, и тот, кто его получил, подключится как ваш роутер.
Чего роутер требует от себя
Первое условие очевидное: в прошивке должен быть клиент WireGuard. В Keenetic это отдельный компонент, его включают в наборе компонентов, и после этого в «Других подключениях» появляется раздел с кнопкой загрузки файла, порядок описан в статье Туннель на роутере Keenetic. У TP-Link клиент есть не во всех моделях, набор протоколов указан в характеристиках конкретного устройства, подробнее в материале Туннель на роутере TP-Link. В MikroTik WireGuard появился в RouterOS 7, на шестой версии его нет. Если в меню вашего роутера раздела нет, обновите прошивку и проверьте ещё раз: функцию часто добавляют позже.
Второе условие касается процессора. Шифрование для всех домашних устройств считает роутер, и дешёвая модель с WireGuard справляется легче, чем с TLS-туннелем: в справке Keenetic сказано, что WireGuard на том же железе работает в несколько раз быстрее. Но если дома много устройств и тяжёлый трафик, слабый процессор всё равно станет узким местом. Как оценить модель заранее, разобрано в статье какой роутер выбрать для туннеля.
Третье условие легко пропустить: правильное время. При рукопожатии WireGuard передаёт метку времени, и сервер отбрасывает метку старше той, что уже видел. Роутер, который после отключения света проснулся с часами из прошлого, может не подключаться, пока не сверит время по сети. В настройках системы проверьте, что синхронизация времени включена.
Как понять, где сбой
У WireGuard нет привычного статуса «подключено». Туннель считается живым, пока роутер и сервер обмениваются рукопожатиями, а пока идёт трафик, оно повторяется примерно раз в две минуты. В статусе подключения у большинства прошивок видно время последнего рукопожатия и счётчики байтов. По ним и ищут причину.
- Рукопожатия не было ни разу, отправлено больше нуля, получено ноль. Сервер не отвечает: неверный Endpoint, сервер выключен, порт закрыт или сеть оператора не пропускает такие соединения до этого адреса.
- Рукопожатие было час назад и больше не обновляется. Связь была и пропала. Попробуйте добавить PersistentKeepalive, если его нет, и проверьте, не сменился ли адрес сервера.
- Рукопожатие свежее, а сайты не открываются. Туннель поднят, сломано имя или маршрут: проверьте строку DNS и то, включено ли в прошивке использование подключения для выхода в интернет.
- Часть сайтов открывается, часть висит на загрузке. Похоже на размер пакета. Уменьшите MTU интерфейса WireGuard, например с 1420 до 1380, особенно если провайдер подключает по PPPoE.
Отдельная история с сетями операторов. Пользователи в России пишут, что у части провайдеров соединения WireGuard с иностранными серверами то поднимаются, то рвутся, и в разных городах картина разная. Если файл точно верный, а рукопожатия нет, проверьте тот же файл на телефоне через мобильный интернет: так станет понятно, дело в роутере или в сети. Общий порядок отладки для любой марки собран в статье как настроить туннель на роутере.
Откуда берётся файл .conf
Файл выдаёт сервер, и путей два. Можно арендовать виртуальную машину за границей и поставить WireGuard на неё самому. Тогда ключи и адрес только ваши, но обновления и смена адреса тоже на вас; с чего начать, рассказано в статье как выбрать VPS. Второй путь: сервис, который выдаёт готовые файлы WireGuard. Перед оплатой спросите, можно ли получить отдельный файл для роутера и сколько устройств или сетей разрешено одновременно; список вопросов есть в статье что входит в подписку для роутера.
Siberian V и WireGuard
Файлов WireGuard в подписке Siberian нет, и загрузить её в раздел WireGuard на роутере не получится. В личном кабинете две ссылки: для Karing, основного приложения, и для INCY, запасного, если в вашем кабинете есть его блок. Приложение ставят на телефон, компьютер или телевизор на Android TV, а роутер работает как обычно. Российские сайты при этом идут напрямую, мимо туннеля, так что банк и доставка видят вас из вашего города.
Подключить можно несколько своих устройств, одновременно не больше чем из двух сетей. Всё за домашним роутером считается одной сетью. Если в вашей сети не подключается Karing, попробуйте INCY: протоколы у них разные, и если один не проходит, второй может пройти. Когда на роутере уже стоит свой WireGuard для приставки, телефоны с Karing стоит вывести из этого туннеля, чтобы не получилось два туннеля один в другом. Какие устройства дома держат приложение сами, а каким нужен роутер, разобрано в статье роутер с туннелем для дома.
Частые вопросы
Какие роутеры поддерживают WireGuard?
Клиент WireGuard есть в Keenetic (отдельный компонент), в MikroTik с RouterOS 7, у части моделей TP-Link и ASUS и в OpenWrt. Точный список смотрите в характеристиках своей модели и после обновления прошивки.
Что значит AllowedIPs = 0.0.0.0/0 в файле WireGuard?
Что весь трафик роутера уходит в туннель, включая российские сайты. Если банк или госуслуги начнут спрашивать капчу, пускайте в туннель не все устройства, а только нужные.
Почему WireGuard на роутере не подключается?
Посмотрите время последнего рукопожатия. Его нет ни разу: неверный адрес сервера, закрытый порт или сеть оператора. Было и пропало: добавьте PersistentKeepalive и проверьте время на роутере. Рукопожатие есть, а сайтов нет: смотрите DNS и MTU.
Можно ли один файл WireGuard загрузить на роутер и на телефон?
Технически файл подойдёт, но одновременно они будут мешать друг другу: у обоих один ключ и один адрес внутри туннеля. Для каждого устройства нужен отдельный файл.
Даёт ли Siberian V файл WireGuard для роутера?
Нет. В кабинете ссылки для приложений Karing и INCY: их ставят на телефон, компьютер или Android TV. Роутер туннель не держит, а дом за ним считается одной из двух сетей, доступных одновременно.