与 PPTP 服务器的连接不断断开

与 PPTP 服务器的连接不断断开

我正在使用 Ubuntu 12.04 VPS 来托管 PPTP 服务器,供我个人使用。我使用自己编写的脚本来设置它,该脚本来自我在网上找到的各种不同的教程(http://www.markmearns.com/sandbox/pptp.sh)。

该服务安装顺利,我可以使用内置 VPN 客户端通过 iPhone 和 Android 平板电脑使用任何 Windows 机器连接到该服务。连接正常,所有流量都通过 VPN 路由。它运行迅速,从未掉线。

但是,我投资了 Mikrotik 路由板,因为我想要一个仅通过 VPN 路由的 wifi 网络。路由器连接到 PPTP 服务器,但大约 1 分 20 秒后断开连接并重新连接。VPN 服务器也不会与路由器交换任何数据。

路由器及其设置工作正常,因为我可以连接到商业 PPTP VPN 服务(如 hidemyass.com),连接工作正常,从未中断。这让我相信路由器没有问题,但我的 PPTP 服务器有问题。

如果有人能帮我解释一下,我将不胜感激。配置显然是我写的脚本中看到的。

标记。

答案1

就我而言,原因是 vpn 的 mtu 大小大于到主机的路径,因此您可以使用 traceroute 来发现到主机的路径中的较低 mtu。命令是: traceroute <host> --mtu

在我的情况下,较低的 MTU 是 1280,因此我在路由器配置中使用 1200 来创建 vpn。

答案2

在我看来,pptpd 无法建立连接并不断重试。请检查您的系统日志。这可以通过以下命令在终端中实时完成:

    tail -f /var/log/syslog

(在终端中发出该命令,然后在另一个终端中启动 pptpd。使用 CRTL-C 中止第一个终端中的列表。)

PPTP 使用 GRE 协议。您必须通过协议 47 (GRE) 打开防火墙以进行出站连接。

答案3

感谢您的建议 - 事实证明它比我想象的要简单 - 在 /etc/pptpd.conf 中,我已将服务器 IP 指定为服务器的外部 IP,而我应该将其设为本地 IP,与客户端 IP 属于同一范围。出于某种原因,Windows 客户端会接受这一点,但其他客户端则更为敏感。

标记。

相关内容