具有多个外部IP的L2TP / PPTP服务器

时间:2014-09-11 15:27:43

标签: ip vpn iptables pptp l2tp

我有一个带有2个IP地址的Debian VPS:例1.1.1.1和2.2.2.2

我已经设置了PPTP服务和运行良好的L2TP服务。

当VPN客户端连接到VPS(IP 1.1.1.1)时:他的公共IP地址为1.1.1.1

但问题是当VPN客户端连接到VPS(IP 2.2.2.2)时:他的公共IP地址仍然是1.1.1.1而不是2.2.2.2

我该如何解决这个问题?

谢谢!

1 个答案:

答案 0 :(得分:0)

假设您有多个pptpd监听1.1.1.1和2.2.2.2,其子网的配置不同,并且接口实际上是up(eth0,eth0:1等)。

即。 对于1.1.1.1,您可以使用这样的配置(让我们称之为config1)

option /etc/ppp/pptpd-options
logwtmp
localip 192.168.30.1
remoteip 192.168.30.2-100

和2.2.2.2(让我们称之为config2)

option /etc/ppp/pptpd-options
logwtmp
localip 192.168.50.1
remoteip 192.168.50.2-100

然后听听这两个像这样的

pptpd --listen 1.1.1.1 --conf config1
pptpd --listen 2.2.2.2 --conf config2

然后你会使用像这样的iptables规则

iptables -t nat -A POSTROUTING -s 192.168.30.0/24 -o eth0 -j SNAT --to-source 1.1.1.1
iptables -t nat -A POSTROUTING -s 192.168.50.0/24 -o eth0 -j SNAT --to-source 2.2.2.2