Не удается подключить локальный одноранговый узел к локальному узлу через Wireguard

У меня есть онлайн-сервер с IP 1.2.3.4 и два локальных компьютеры в разных местах. компьютер A и компьютер B.

Я выполнил инструкции по установке Wireguard здесь: https://www.cyberciti.biz/faq/ubuntu-20-04-set-up-wireguard-vpn-server/

Но компьютер A не удается выполнить эхо-запрос или подключиться к компьютеру B.

Я думаю, что мне нужно, но я не знаю, как настроить на онлайн-сервере связь между локальными узлами.

Как это сделать?

Локальные узлы - это рабочий стол Mac и Ubuntu.

Мои настройки: Сервер:

[Interface]
Address = 192.168.6.1/24
ListenPort = 41194
PrivateKey = <key>


[Peer]
PublicKey = <key>
AllowedIPs = 192.168.6.2/32
PersistentKeepalive = 15

[Peer]
PublicKey = <key>
AllowedIPs = 192.168.6.3/32
PersistentKeepalive = 15

Локальный партнер A:

[Interface]
PrivateKey = <key>
Address = 192.168.6.2/32

[Peer]
PublicKey = <key>
AllowedIPs = 192.168.6.1/32
Endpoint = 65.21.63.31:41194
PersistentKeepalive = 21

[Peer]
PublicKey = <key>
AllowedIPs = 192.168.6.3/32
PersistentKeepalive = 15

Локальный партнер B:

[Interface]
PrivateKey = <key>
Address = 192.168.6.3/32

[Peer]
PublicKey = <key>
AllowedIPs = 192.168.6.1/32
Endpoint = 65.21.63.31:41194
PersistentKeepalive = 21

[Peer]
PublicKey = <key>
AllowedIPs = 192.168.6.2/32
PersistentKeepalive = 15

Сервер может связываться с одноранговым узлом A и одноранговым узлом B, но одноранговый узел A не может связываться с одноранговым узлом B.

0
задан 29 August 2021 в 11:12
1 ответ

Учебник, на который вы ссылаетесь, выглядит так, как будто он направляет вас к топологии «звезда-звезда», где узел A и узел B не подключаются напрямую друг к другу — вместо этого их соединение маршрутизируется через ваш сервер. Если это то, что вы хотите сделать, вы должны удалить вторую запись [Peer] из конфигурационных файлов узла A и узла B и изменить параметр AllowedIPs их первого . [Peer] запись к этому:

AllowedIPs = 192.168.6.0/24

Вам также необходимо убедиться, что вы включили пересылку пакетов на сервере. Есть несколько разных способов сделать это, но самый простой с WireGuard — просто добавить следующую команду PreUp в раздел [Interface] конфигурационного файла сервера:

PreUp = sysctl -w net.ipv4.ip_forward=1

Однако, если вы хотите соединить узел A с узлом B напрямую (т. е. «точка-точка»), вам необходимо иметь статический общедоступный IP-адрес для одного из узлов. Если это так, вы должны сохранить эту вторую запись [Peer] в конфигурационных файлах узла A и узла B; и добавьте параметр Endpoint во вторую запись [Peer] одного из своих файлов и параметр ListenPort в [Interface]. ] запись другой.

Например, если узел А доступен узлу Б через Интернет (или некоторую внутреннюю сеть) по адресу 198.51.100.123 и имеет UDP-порт 51820, доступный для новых подключений от узла B, измените вторую запись [Peer] в файле конфигурации узла B на это:

[Peer]
PublicKey = <key>
AllowedIPs = 192.168.6.2/32
Endpoint = 198.51.100.123:51820
PersistentKeepalive = 15

И измените [Interface]. ] запись в конфигурации Peer A для этого:

[Interface]
PrivateKey = <key>
Address = 192.168.6.2/32
ListenPort = 51820
0
ответ дан 30 August 2021 в 21:21

Теги

Похожие вопросы