如何允许我的 vpn 客户端访问远程 LAN(eth1)?

如何允许我的 vpn 客户端访问远程 LAN(eth1)?

我的 ubuntu 服务器有两个 if:eth0, eth1

eth0: Public IP  
eth1: 192.168.0.2  

我已经eth0使用 pptpd 配置了 vpn 服务器。

vpn ip_range192.168.100.234-248

#/etc/pptpd.conf
logwtmp
bcrelay eth2
localip 192.168.100.1
remoteip 192.168.100.234-238,192.168.100.245

现在从我的客户端可以连接到 vpn 服务器并获取192.168.100.234地址。

但是我无法访问 192.168.0.2/24 LAN 网络中的任何内容。

我已尝试设置iptables -A FORWARD -j ACCEPT并进行-t nat设置。

但好像没什么效果。

如何正确完成这项工作?

多谢。

这是我的服务器和客户端的相关信息https://gist.github.com/4635571

答案1

我找到了解决方案并进行了测试。它确实有效。

我的 ubuntu 服务器有两个网络接口:eth1 - wan eth2 - lan 192.168.0.2

并且VPN服务使用192.168.100.1作为其地址。

VPN 客户端将获取一个来自 192.168.100.234-238 的地址。

以下命令让 VPN 客户端访问服务器 LAN 后面的其他客户端。例如 192.168.0.100

使用 iptables 设置 nat。

# ubuntu vpn server 
sudo iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -d 192.168.0.0/24 -j MASQUERADE

客户端手动添加路线。

# mac os x client
sudo route add 192.168.0.0/24 192.168.100.1

相关内容