У меня есть рабочая установка wireguard (сервер Ubuntu 20.04, один клиент Ubuntu 20.04 и один клиент Windows 10). Я могу подключиться к устройствам за VPN-сервером.
VPN-сервер (конечная точка): 1.2.3.2/32
Конечная точка общедоступной подсети находится в: 1.2.3.0/27.
Адрес сервера WireGuard: 10.2.0.1/16
Офисная локальная сеть: 10.0.0.0/16
Адрес узла: 10.2.0.3/16
Проблема в том, что клиенты не могут подключиться ни к чему, что должно проходить через vpn, включая адрес EndPoint, когда я добавляю публичную подсеть публичного интерфейса WireGuard в Разрешенные IP-адреса
в конфиге клиента:
Разрешенные IP-адреса = 10.2.0.0/16, 10.0.0.0/16, 1.2.3.0/27
ИЛИ добавить Конечная точка
адрес:
Разрешенные IP-адреса = 10.2.0.0/16, 10.0.0.0/16, 1.2.3.2/32
Это работает, когда я добавляю другие индивидуальные адреса из общедоступной подсети. Я могу подключиться к этим серверам через VPN (так говорит traceroute):
Разрешенные IP-адреса = 10.2.0.0/16, 10.0.0.0/16, 1.2.3.3/32, 1.2.3.4/32
Дополнительная информация:
КЛИЕНТ
$ sudo cat /etc/wireguard/wg1.conf
[Интерфейс]
PrivateKey = <отрезано>
Адрес = 10.2.0.3/16
[Вглядеться]
PublicKey = <отрезано>
Разрешенные IP-адреса = 10.2.0.0/16, 10.0.0.0/16, 1.2.3.3/32, 1.2.3.4/32, 1.2.3.0/27
Конечная точка = 1.2.3.2:51820
$ IP-маршрут
по умолчанию через 10.25.0.1 dev wlp0s20f3 proto dhcp metric 600
Ссылка на объем 10.0.0.0/16 dev wg1
10.25.0.0/16 dev wlp0s20f3 proto kernel scope link src 10.25.50.12 метрика 600
10.2.0.0/16 dev wg1 прото-область ядра ссылка src 10.2.0.3
Ссылка на область действия 1.2.3.0/27 dev wg1
1.2.3.3 Ссылка на область разработки WG1
1.2.3.4 Ссылка на область dev wg1
$ sudo tcpdump -nn -i любой 'udp порт 51820'
tcpdump: подробный вывод подавлен, используйте -v или -vv для полного декодирования протокола
прослушивание на любом, ссылка типа LINUX_SLL (линукс сваренный v1), размер захвата 262144 байт
23:21:43.439854 IP 10.2.0.3.34656 > 1.2.3.1.51820: UDP, длина 148
23:21:48.705386 IP 10.2.0.3.34656 > 1.2.3.1.51820: UDP, длина 148
23:21:54.081297 IP 10.2.0.3.34656 > 1.2.3.1.51820: UDP, длина 148
23:21:59.201381 IP 10.2.0.3.34656 > 1.2.3.1.51820: UDP, длина 148
Время трассировки истекло.
СЕРВЕР
$ IP-маршрут
по умолчанию через 1.2.3.1 dev enp1s0 proto static
10.0.0.0/16 dev enp6s0 прото-область ядра ссылка src 10.0.25.20
10.0.0.0/16 через 10.0.1.254 dev enp6s0 протостатическая метрика 100
10.2.0.0/16 dev wg0 прото-область ядра ссылка src 10.2.0.1
1.2.3.0/27 dev enp1s0 ссылка на область действия ядра proto src 1.2.3.2
$ sudo cat /etc/wireguard/wg0.conf
[Интерфейс]
Адрес = 10.2.0.1/16
Сохранение конфигурации = истина
PostUp = маршрут ufw разрешает вход на wg0, выход на enp6s0
PostUp = iptables -t nat -I POSTROUTING -o enp6s0 -j MASQUERADE
PreDown = ufw удалить маршрут, разрешить вход на wg0, выход на enp6s0
PreDown = iptables -t nat -D POSTROUTING -o enp6s0 -j MASQUERADE
Порт прослушивания = 51820
PrivateKey = <отрезано>
[Вглядеться]
PublicKey = <отрезано>
Разрешенные IP-адреса = 10.2.0.2/32
Конечная точка = <отрезано>:37785
[Вглядеться]
PublicKey = <отрезано>
Разрешенные IP-адреса = 10.2.0.3/32
Конечная точка = <отрезано>:37950