Чтобы удаленно подключиться к локальной сети интернет-центра Keenetic, начиная с версии KeeneticOS 3.3 стало возможно использовать туннель Wireguard VPN.
Сначала необходимо выполнить настройку сервера Wireguard в Keenetic, которая показана в инструкции "Настройка WireGuard VPN между двумя роутерами Keenetic", после переходите к настройке VPN-клиента.
NOTE: Важно! Если вы планируете настроить Keenetic в качестве VPN-сервера, начать необходимо с проверки того, что он имеет публичный "белый" IP-адрес, а при использовании сервиса KeenDNS, что он работает в режиме "Прямой доступ", для которого также требуется публичный IP-адрес. При несоблюдении любого из этих условий подключение к такому серверу из Интернета будет невозможно.
Ниже приведем пример действий для подключения к серверу со смартфона iPhone под управлением операционной системы iOS.
Чтобы установить соединение к Wireguard-серверу Keenetic, в мобильном устройстве на базе iOS, можно воспользоваться бесплатным приложением WireGuard.
1. Устанавливаем клиент, находим на рабочем столе ярлык программы WireGuard и запускаем его.
2. Откроется главное окно программы. В правом верхнем углу экрана нажмите на значок "+" для настройки Wireguard-клиента на телефоне. Затем нажмите на "Create from scratch".
В поле "Name" вводим имя подключения, например "wg-ios-client" (можно указать любое произвольное имя). Переходим к генерации частного и публичного ключей (Private key и Public key). Нажимаем на "Generate keypair". Сохраните публичный ключ в буфер обмена телефона (он потребуется на следующем пункте настроек), нажав на Public key.
3. Затем выполним настройку подключения к удаленному пиру. В поле "Addresses" указываем IP-адрес wireguard-клиента в формате IP/bitmask — 172.16.82.7/32 (это внутренний адрес туннеля). Можно использовать другую подсеть, при этом ее следует выбрать из частного диапазона адресов и избежать наложения с другими настроенными на данных устройствах подсетями.
4. В разделе "Peer" указываем публичный ключ сервера, адрес сервера, порт, разрешенные адреса/подсети со стороны сервера.
Public key вы должны получить в настройках Wireguard-сервера в веб-конфигураторе роутера Keenetic. Скопируйте сгенерированный публичный ключ сервера, нажав на "Сохранить публичный ключ в буфер обмена" и затем вставьте его в настройках пира на телефоне.
В поле "Allowed IPs" указываем разрешенные IP-адреса, в формате IP/bitmask — 172.16.82.1/32 (это внутренний адрес сервера) и 192.168.22.0/24 (адрес локального сегмента роутера Keenetic).
В поле "Endpoint" указываем публичный IP-адрес или доменное имя Wireguard-сервера, и порт прослушивания, на который будет устанавливать связь Wireguard-клиент.
В поле "Persistent keepalive" указываем периодичность попыток проверки доступности удаленной стороны соединения. Обычно достаточно 10-15 секундного интервала между проверками.
Сохраняем настройку, нажав на "Save" в правом верхнем углу экрана.
5. Настраиваем удаленное подключение на стороне ранее настроенного Wireguard-сервера.
Подключитесь к веб-конфигуратору роутера Keenetic и перейдите в меню "Интернет" — "Другие подключения". Нажмите на ранее созданное Wireguard-подключение ("WG-S") и добавьте "Настройки пира". Нажав на "Добавить пир", откроется поле настроек пира, в котором укажите название туннеля "wg-ios-client".
В поле "Публичный ключ" указываем ключ, который был сгенерирован ранее в пункте 2 данной статьи.
В полях "Разрешенные подсети" указываем адрес, трафик с которого будет допущен до сервера в формате IP/bitmask — 172.16.82.7/32
В поле "Проверка активности" необходимо указать периодичность попыток проверки доступности удаленной стороны соединения. Обычно достаточно 10-15 секундного интервала между проверками. По умолчанию значение "Проверки активности" в настройках пира Keenetic указано 30 секунд.
Нажмите "Сохранить".
6. Возвращаемся в настройки Wireguard-клиента на телефоне и активируем (включаем) подключение к серверу.
NOTE: Важно! Если у вас настроен "Доступ в Интернет через Wireguard-туннель" роутера, на стороне Wireguard-клиента необходимо указать DNS-сервер в поле "DNS-серверы".
В нашем примере указан адрес DNS-сервера от Google 8.8.8.8:
7. Проверяем доступность сервера со стороны клиента.
Если настройка выполнена правильно, веб-интерфейс сервера будет доступен (в нашем примере это Keenetic с IP-адресом 192.168.22.1).
Для проверки доступности сервера можно выполнить отправку ICMP-пакетов до IP-адреса, например при помощи программы iNetTools - Ping, DNS, Port Scan.
Настройка завершена.
Если вам нужно, чтобы подключенные клиенты получали через данное VPN-соединение доступ в Интернет, выполните дополнительную настройку из статьи "Доступ в Интернет через Wireguard-туннель".