У меня есть сервер, на котором работает Wireguard, и у меня есть несколько клиентов (одноранговых узлов), подключенных к нему и работающих. Я не очень уверен, как работает VPN, но это моя текущая настройка.
/etc/wireguard/wg0.conf
моего сервера выглядит так.
[Interface]
Address = 172.16.16.1/24
SaveConfig = true
ListenPort = 8999
PrivateKey = XXX
[Peer]
PublicKey = XXX
AllowedIPs = 172.16.16.2/32
[Peer]
PublicKey = XXX
AllowedIPs = 172.16.16.3/32
И конфигурация на моих клиентах wg0.conf
выглядит так.
[Interface]
PrivateKey = XXX
Address = 172.16.16.x/32
[Peer]
PublicKey = XXX
AllowedIPs = 172.16.16.0/24
PersistentKeepalive = 30
Когда все работает, с моего клиента с IP-адресом 172.16.16.2
я могу проверить связь с сервером 172.16.16.1
. Я могу сделать то же самое на другом моем клиенте с 172.16.16.3
, я могу пинговать сервер 172.16.16.1
.
Интересно, что с моего сервера я могу пинговать всех пиров! То есть изнутри 172.16.16.1
я могу пинговать как 172.16.16.2
, так и 172.16.16.3
. Но это основная цель настройки!
Теперь я хочу, чтобы мои сверстники разговаривали друг с другом, то есть я должен иметь возможность пинговать 172.16.16.2
от моего другого сверстника 172.16.16.3
и наоборот. наоборот, но это не работает. Он говорит, что сеть недоступна.
Идея в том, что я хочу, чтобы он работал как сервер LAN, где один сервер действует как шлюз, и несколько одноранговых узлов / клиентов, которые могут общаться друг с другом, а также разговаривать с сервером.
Возможно ли такое? Если да, то что мне не хватает?