【问题标题】:Forward lan traffic to VPN IPsec将局域网流量转发到 VPN IPsec
【发布时间】:2021-01-12 11:23:20
【问题描述】:

我在 Linux 中使用 docker 容器来设置 IPsec ike 连接,特别是它是一个 stono/ike 容器。

docker run -d --privileged --net=host -v sites:/sites stono/ike:最新站点用户密码

此容器在主机中引发一个 tap0 接口,并为 VPN 的每个子网创建路由。 VPN 在 192.168.50.0/24 范围内为我提供了一个 IP 作为客户端,并允许我从中访问这是路由表:

192.168.50.0/24 via 192.168.50.14 dev tap0 proto static
192.168.51.0/24 via 192.168.50.14 dev tap0 proto static
192.168.52.0/24 via 192.168.50.14 dev tap0 proto static
....

如何在我的局域网上共享这些网络?

  • IPV4 转发已启用
  • 我已经创建了 iptables 规则来接受流量:
iptables -A FORWARD -i eth0 -j ACCEPT 
iptables -A FORWARD -o tap0 -j ACCEPT 
iptables -t nat -A POSTROUTING -o tap0 -j MASQUERADE

最后,我在局域网中的另一台计算机上创建了静态路由,但我只能 ping ip 192.168.50.14,这是 VPN 服务器在 tap0 接口中分配给我的 ip,该网络中的其他主机,或者在其他人中,我无权访问。

sudo ip route add 192.168.50.0/24 via 192.168.1.202
sudo ip route add 192.168.51.0/24 via 192.168.1.202
...

【问题讨论】:

    标签: routes vpn iptables lan


    【解决方案1】:

    如果您使 NAT 规则更明确,会发生什么? (我假设 192.168.1.0/24 是您的 LAN 范围)

    iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT --to-source 192.168.50.14
    

    【讨论】:

    • 这对我不起作用,我也尝试将 --to-source 更改为我在局域网中的接口的 ip,192.168.1.128 也没有。我已经看到对 vpn 主机的 ping -i tap0 没有响应,只有在我使用 eth0 接口时才会响应。在其他情况下,当辅助接口允许我访问子网时,我使用了 nat,在这种情况下,tap0 接口的 ip 似乎直接是网关。我无法让它工作
    猜你喜欢
    • 1970-01-01
    • 2019-04-04
    • 1970-01-01
    • 2022-01-18
    • 2019-08-23
    • 2019-08-15
    • 1970-01-01
    • 1970-01-01
    • 2013-08-11
    相关资源
    最近更新 更多