VPN 客户端无法访问 VPN 服务器(wireguard)后面的网络

VPN 客户端无法访问 VPN 服务器(wireguard)后面的网络

我已经创建了一个 wireguard VPN 服务器,但是客户端无法访问服务器后面的某些网络,

wireguard-server
eno1: 10.10.10.2/24 (GW)
eno2: 10.10.11.2/24
wg0: 10.66.66.1/24

我希望 wireguard VPN 的客户端可以访问网络 10.10.11.0/24(它与 10.10.10.2/24 一起工作)。

路线-n

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.10.10.1      0.0.0.0         UG    0      0        0 eno1
10.10.10.0      0.0.0.0         255.255.255.0   U     0      0        0 eno1
10.10.11.0      0.0.0.0         255.255.255.0   U     0      0        0 eno2
10.66.66.0      0.0.0.0         255.255.255.0   U     0      0        0 wg0

iptable -S

-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
-A INPUT -p udp -m udp --dport 44021 -j ACCEPT
-A FORWARD -i wg0 -j ACCEPT
-A FORWARD -i eno1 -o wg0 -j ACCEPT

我尝试使用 ip route 和 masquerade iptable,但是没有用,请帮帮忙。

解决了!

通过在 wg0.conf 中添加以下几行来解决:

     PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eno2 -j MASQUERADE
     PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eno2 -j MASQUERADE

答案1

帖子 无法访问 Wireguard VPN 服务器后面的网络。客户端上的 Split-tunneligt 配置 有这个答案:

解决方案非常简单。

不需要任何脚本来实现分割隧道。

1. 在 wg0.conf 中添加以下几行:

  PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
  PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

2. 按照如下方式修改客户端 WG 配置:

 [Peer] AllowedIPs = 192.168.99.0/24, 192.168.30.0/24

net.ipv4.ip_forward = 13.在 WG 服务器上启用。

因此,我没有通过 WG 服务器访问互联网的路由,只有指定的网络。

以下是更多详细信息: https://iliasa.eu/wireguard-how-to-access-a-peers-local-network/

第 1 项足以解决海报的问题。

相关内容