VPN-туннель между двумя роутерами Keenetic — инструкция
VPN-туннель между двумя роутерами Keenetic (site-to-site VPN) позволяет объединить две удалённые локальные сети в одну. Устройства в обеих сетях видят друг друга так, словно находятся в одной локальной сети — без установки VPN-клиентов на каждое устройство.
В этой статье: для чего нужен site-to-site VPN, какой протокол выбрать, требования к IP-адресам, пошаговая инструкция настройки обоих роутеров, настройка маршрутизации и решение проблемы NAT.
Если вам нужен VPN для защиты интернет-трафика (а не объединения сетей), используйте руководство по настройке VPN-клиента на Keenetic. Для удалённого доступа одного устройства к домашней сети — удалённый доступ к сети через Keenetic.
Зачем нужен VPN между двумя Keenetic#
Site-to-site VPN создаёт постоянный зашифрованный туннель между двумя роутерами. Весь трафик между подсетями проходит через этот туннель автоматически. Устройствам на обоих концах не нужно знать о VPN — они просто видят друг друга по локальным IP-адресам.
Сценарии: дом + дача, офис + филиал#
Дом + дача / загородный дом. Доступ к NAS, камерам видеонаблюдения, умному дому на даче из городской квартиры. Управление сетевым оборудованием удалённо. Общий доступ к файлам и принтерам между двумя домами.
Офис + филиал. Объединение сетей головного офиса и филиала. Доступ к общим серверам, базам данных, 1С, CRM без открытия портов в интернет. Безопасная связь между офисами через зашифрованный канал.
Родители + дети. Удалённая настройка и обслуживание сети родителей. Общий доступ к медиатеке, фотоархиву, домашним устройствам.
Резервный канал. VPN-туннель между двумя площадками как резервный канал связи для критичных сервисов.
Какой протокол выбрать для site-to-site#
Для site-to-site VPN между двумя Keenetic подходят несколько протоколов. Выбор зависит от ваших приоритетов:
| Протокол | Скорость | Настройка | NAT traversal | Рекомендация |
|---|---|---|---|---|
| WireGuard | Очень высокая | Простая | Работает | Лучший выбор |
| IPSec/L2TP | Средняя | Средняя | NAT-T | Для корпоративных |
| OpenVPN | Средняя | Сложная | Работает | Для обхода блокировок |
| IKEv2 | Высокая | Средняя | NAT-T | Альтернатива WG |
| PPTP | Средняя | Простая | Проблемы | Небезопасен |
Рекомендация: WireGuard. Это самый быстрый и простой в настройке протокол для site-to-site. На Keenetic WireGuard поддерживает множество пиров, что позволяет объединить даже несколько площадок. Далее в инструкции мы используем WireGuard. Инструкции по другим протоколам: IPSec/L2TP, OpenVPN, IKEv2.
Требования: белый IP, DDNS, NAT#
Перед настройкой убедитесь, что выполняются следующие условия:
Белый (публичный) IP-адрес хотя бы у одного роутера. WireGuard-пир должен знать, куда подключаться. Если хотя бы один из двух роутеров имеет белый IP — этого достаточно. Он будет «сервером» (endpoint), а второй — «клиентом».
DDNS (если IP динамический). Если белый IP есть, но он меняется при каждом подключении, настройте DDNS (Dynamic DNS). Keenetic поддерживает KeenDNS (бесплатный сервис Keenetic) — доменное имя вида myrouter.keenetic.pro.
Разные подсети. Два роутера должны использовать разные локальные подсети. Например, Keenetic A — 192.168.1.0/24, Keenetic B — 192.168.2.0/24. Если оба используют 192.168.1.0/24, смените подсеть на одном из них в разделе «Домашняя сеть».
Оба роутера на KeeneticOS 3.x. Убедитесь, что прошивка обоих роутеров актуальна. WireGuard доступен начиная с KeeneticOS 3.3.
Оба роутера за NAT? Если ни у одного роутера нет белого IP (оба за NAT провайдера), прямое подключение невозможно. В этом случае нужен промежуточный VPN-сервер — подробнее в разделе «Если один роутер за NAT» ниже.
Пошаговая инструкция#
Настроим WireGuard site-to-site VPN между двумя Keenetic. В примере:
| Параметр | Keenetic A (сервер) | Keenetic B (клиент) |
|---|---|---|
| Роль | VPN-сервер (endpoint) | VPN-клиент |
| Белый IP / DDNS | Да (203.0.113.10 или myrouter.keenetic.pro) | Не обязателен |
| Локальная сеть | 192.168.1.0/24 | 192.168.2.0/24 |
| WireGuard IP | 10.8.0.1/24 | 10.8.0.2/24 |
| WireGuard порт | 51820 (UDP) | — |
Шаг 1 — Настройка VPN-сервера на первом Keenetic (Keenetic A)#
На роутере с белым IP настраиваем WireGuard-интерфейс, который будет принимать входящие подключения:
-
Установите компонент WireGuard. «Общие настройки» → «Изменить набор компонентов» → «WireGuard VPN» → установить.
-
Создайте WireGuard-интерфейс. «Другие подключения» → «WireGuard» → «Добавить подключение». Имя: «Site-to-Site». Нажмите «Сгенерировать ключи» — роутер создаст пару приватный/публичный ключ. Запишите публичный ключ Keenetic A — он понадобится для настройки Keenetic B.
-
Укажите IP-адрес интерфейса:
10.8.0.1/24. Это адрес Keenetic A внутри VPN-туннеля. -
Укажите порт прослушивания:
51820(стандартный порт WireGuard). Keenetic A будет слушать входящие подключения на этом порту. -
Добавьте пир (Keenetic B). Нажмите «Добавить пир». Пока оставьте поле «Публичный ключ» пустым — заполним после настройки Keenetic B. В поле AllowedIPs укажите два значения:
10.8.0.2/32(VPN-адрес Keenetic B) и192.168.2.0/24(локальная сеть Keenetic B). PersistentKeepalive оставьте пустым (сервер не инициирует keepalive). -
Откройте порт в файрволе. Перейдите в «Межсетевой экран» → правило для интерфейса «Провайдер» → разрешите входящий UDP-трафик на порт 51820.
Шаг 2 — Настройка VPN-клиента на втором Keenetic (Keenetic B)#
На втором роутере настраиваем WireGuard-клиент, который подключается к Keenetic A:
-
Установите компонент WireGuard (аналогично шагу 1).
-
Создайте WireGuard-интерфейс. Имя: «Site-to-Site». Сгенерируйте ключи. Запишите публичный ключ Keenetic B — его нужно будет добавить в настройки пира на Keenetic A.
-
Укажите IP-адрес интерфейса:
10.8.0.2/24. -
Порт прослушивания оставьте пустым — Keenetic B подключается к A, а не принимает подключения.
-
Добавьте пир (Keenetic A). Публичный ключ: вставьте публичный ключ Keenetic A. Endpoint:
203.0.113.10:51820(илиmyrouter.keenetic.pro:51820). AllowedIPs:10.8.0.1/32и192.168.1.0/24(VPN-адрес и локальная сеть Keenetic A). PersistentKeepalive: 25 секунд. -
Вернитесь на Keenetic A и впишите публичный ключ Keenetic B в ранее созданный пир.
Шаг 3 — Настройка маршрутов#
Чтобы устройства в обеих сетях видели друг друга, нужно настроить маршрутизацию на обоих роутерах. KeeneticOS создаёт маршруты автоматически на основе AllowedIPs, но важно проверить:
На Keenetic A: трафик к 192.168.2.0/24 должен направляться через WireGuard-интерфейс «Site-to-Site». Если AllowedIPs пира содержит 192.168.2.0/24, маршрут создаётся автоматически.
На Keenetic B: трафик к 192.168.1.0/24 должен направляться через WireGuard-интерфейс «Site-to-Site». Аналогично, AllowedIPs = 192.168.1.0/24 создаёт маршрут автоматически.
Важно: не включайте галочку «Использовать для выхода в Интернет» на WireGuard-интерфейсе site-to-site. Это не клиентское подключение к VPN-сервису — это туннель между двумя сетями. Интернет-трафик должен идти через провайдера каждого роутера, а не через туннель.
Проверить маршруты можно в CLI роутера (Telnet/SSH):
show ip routebashВ списке маршрутов должна быть строка с подсетью удалённой стороны, направленная через WireGuard-интерфейс.
Шаг 4 — Проверка туннеля#
После настройки обоих роутеров проверьте, что туннель работает:
-
Активируйте WireGuard на обоих роутерах. Keenetic B подключится к Keenetic A автоматически. Индикатор должен стать зелёным на обоих.
-
Пинг VPN-адреса. С устройства в сети A (192.168.1.x) выполните
ping 10.8.0.2. С устройства в сети B (192.168.2.x) —ping 10.8.0.1. Оба должны отвечать. -
Пинг устройства в удалённой сети. С устройства в сети A выполните
ping 192.168.2.1(адрес Keenetic B). С устройства в сети B —ping 192.168.1.1(адрес Keenetic A). Если пинг проходит — туннель и маршрутизация работают корректно. -
Проверьте доступ к ресурсам. Попробуйте открыть общую папку, веб-интерфейс камеры или другой ресурс в удалённой сети по его локальному IP.
Готово! Если пинги проходят и ресурсы доступны — site-to-site VPN между двумя Keenetic настроен. Туннель будет работать постоянно и переподключаться автоматически.
Если один роутер за NAT#
Ситуация: ни один из двух Keenetic не имеет белого IP-адреса. Оба находятся за NAT провайдера (серый IP, например 10.x.x.x или 100.64.x.x). В этом случае прямое подключение между роутерами невозможно — ни один из них не может быть «endpoint» для другого.
Есть несколько решений:
Заказать белый IP у провайдера. Самый простой вариант. Многие провайдеры предоставляют статический белый IP за небольшую плату (100–300 ₽/мес). Достаточно одного белого IP на одном из роутеров.
Использовать KeenDNS в режиме «Через облако». Keenetic поддерживает режим KeenDNS с проксированием через облако, что позволяет обойти NAT для некоторых сервисов. Однако для WireGuard этот режим не подходит, так как WireGuard работает по UDP.
Использовать промежуточный VPN-сервер. Оба роутера подключаются как клиенты к внешнему VPN-серверу, который маршрутизирует трафик между ними.
Промежуточный VPN-сервер (Sputnik VPN)#
Если оба роутера за NAT, промежуточный VPN-сервер решает проблему. Схема работы:
- Keenetic A подключается к VPN-серверу как клиент (WireGuard-пир).
- Keenetic B подключается к тому же VPN-серверу как второй клиент.
- VPN-сервер маршрутизирует трафик между двумя клиентами, позволяя им видеть сети друг друга.
Sputnik VPN может работать как такой промежуточный сервер — оба Keenetic подключаются к нему через WireGuard, а сервер обеспечивает связность между подсетями. В этой схеме белый IP не нужен ни одному роутеру.
Ограничение: при использовании промежуточного сервера весь трафик между сетями проходит через него. Это добавляет задержку (двойной хоп) и зависимость от стабильности VPN-сервиса. Белый IP у одного из роутеров — всегда предпочтительнее.
Устранение ошибок#
Типичные проблемы при настройке site-to-site VPN и их решения:
Пинг VPN-адресов работает, но пинг устройств в удалённой сети — нет. Проблема маршрутизации. Проверьте, что AllowedIPs на обоих роутерах содержат подсеть удалённой стороны (192.168.x.0/24). Убедитесь, что маршрут создан: show ip route в CLI.
Туннель не устанавливается. Проверьте: открыт ли порт 51820/UDP в файрволе Keenetic A, правильно ли указан endpoint на Keenetic B, совпадают ли публичные ключи. Попробуйте подключиться из CLI: interface WireGuard0 connect.
Одинаковые подсети на обоих роутерах. Если оба используют 192.168.1.0/24, маршрутизация невозможна — роутер не знает, куда отправлять пакеты. Смените подсеть на одном из роутеров: «Домашняя сеть» → «IP-адрес» → измените на 192.168.2.1.
Туннель работает, но нестабильно. Установите PersistentKeepalive = 25 на стороне клиента (Keenetic B). Это предотвращает разрыв NAT-сессии у провайдера.
Устройства видят удалённую сеть, но не могут выйти в интернет. Убедитесь, что AllowedIPs не содержит 0.0.0.0/0 (весь трафик). Для site-to-site нужны только конкретные подсети: 10.8.0.0/24 и 192.168.x.0/24.
Нужны готовые конфиги?
Sputnik VPN предоставляет параметры WireGuard и OpenVPN для всех моделей Keenetic. Настройка — 5 минут.
Попробовать Sputnik VPNFAQ#
Вопрос: Как объединить две сети через VPN на Keenetic?
Ответ: Настройте WireGuard site-to-site VPN: на роутере с белым IP создайте WireGuard-интерфейс с портом прослушивания, на втором — клиентское подключение с endpoint первого. В AllowedIPs каждого пира укажите подсеть удалённой стороны. Подробная инструкция — в этой статье.
Вопрос: Нужен ли белый IP для site-to-site VPN?
Ответ: Белый IP нужен хотя бы у одного роутера — он будет «сервером» (endpoint). Если белый IP динамический, используйте KeenDNS для привязки доменного имени. Если белого IP нет ни у одного роутера, используйте промежуточный VPN-сервер (например, Sputnik VPN).
Вопрос: Какой протокол лучше для site-to-site VPN между Keenetic?
Ответ: WireGuard — лучший выбор: максимальная скорость, простая настройка, поддержка множества пиров. Альтернатива — IKEv2/IPSec для корпоративных сценариев или OpenVPN для обхода блокировок.
Вопрос: Что делать, если оба роутера за NAT?
Ответ: Три варианта: заказать белый IP у провайдера одного из роутеров (лучший вариант), использовать промежуточный VPN-сервер (Sputnik VPN — оба Keenetic подключаются к нему как клиенты), или арендовать VPS и поднять WireGuard-сервер самостоятельно.
Вопрос: Как настроить маршрутизацию между двумя сетями?
Ответ: KeeneticOS создаёт маршруты автоматически на основе AllowedIPs в настройках WireGuard-пира. Убедитесь, что на Keenetic A в AllowedIPs пира указана подсеть Keenetic B (192.168.2.0/24), и наоборот. Проверьте маршруты командой show ip route в CLI. Не включайте «Использовать для выхода в Интернет» на site-to-site подключении.