PPTP VPN 随机断开连接

PPTP VPN 随机断开连接

我的点对点隧道协议VPN 在 Windows 和 Android 上均可正常运行。在 Android 和 Windows 上,无需进行任何特定配置,只需检查PPP加密(MPPE)

但是在 Ubuntu 20.04 上,一段时间后它会随机断开连接。

答案1

我在这里找到了答案:Ubuntu 14 pptp客户端频繁断开连接

我必须在客户端上使用。

sudo ifconfig wlp3s0 mtu 1400
sudo ifconfig ppp0 mtu 1300

可以通过阅读系统日志错误来调查此问题:

pouria@pouria-pc:~$ cat /var/log/syslog | grep pptp | grep long
May 31 09:36:11 pouria-pc pptp[18156]: nm-pptp-service-18147 warn[decaps_gre:pptp_gre.c:352]: short read (-1): Message too long
May 31 09:47:14 pouria-pc pptp[18617]: nm-pptp-service-18609 warn[decaps_gre:pptp_gre.c:352]: short read (-1): Message too long
May 31 09:57:18 pouria-pc pptp[19439]: nm-pptp-service-19430 warn[decaps_gre:pptp_gre.c:352]: short read (-1): Message too long
May 31 10:07:21 pouria-pc pptp[20790]: nm-pptp-service-20781 warn[decaps_gre:pptp_gre.c:352]: short read (-1): Message too long
May 31 10:17:57 pouria-pc pptp[21003]: nm-pptp-service-20994 warn[decaps_gre:pptp_gre.c:352]: short read (-1): Message too long
May 31 11:16:36 pouria-pc pptp[23730]: nm-pptp-service-23718 warn[decaps_gre:pptp_gre.c:352]: short read (-1): Message too long

通过设置,mtu我们告诉wlan使用较小的消息。

我想知道为什么其他操作系统的用户不必配置他们的 WLAN 消息大小即可使用最简单的 VPN 形式。

更新

永久地做到这一点

wlan0...通过查找您设备的接口名称ifconfig

/etc/network/if-up.d/ppp创建包含以下内容的文件:

#! /bin/bash
sudo ifconfig wlp0s20f3 mtu 1400
sudo ifconfig ppp0 mtu 1300

使用chmod +x /etc/network/if-up.d/ppp它使其可执行。它在每次连接和断开连接时运行。

答案2

我使用你的答案,并回答它来解决有关的问题永久设置 MTU

我找到了这个链接(用于永久设置 MTU)

我们编写脚本/etc/network/if-up.d/调用它set-pptp.sh,每当链接尝试启动时,都会调用此脚本。

现在我们在这个文件中插入以下行:

[我们正在检查当前尝试启动的接口,如果是 VPN,我们将其 MTU 设置为 1300,如果不是,我们将其 MTU 设置为 1400]

#!/bin/sh

if [ "$IFACE" = "ppp0" ]; then
   ifconfig ppp0 mtu 1300
fi

if [ "$IFACE" = "wlp3s0" ]; then
   ifconfig wlp3s0 mtu 1400
fi

现在我们需要使其可执行

$ sudo chmod 755 /etc/network/if-up.d/set-pptp.sh

最后一步(重要)

如果您正在使用图形网络管理器(KDE、Gnome 等),您也需要执行以下操作:

打开此文件/etc/NetworkManager/dispatcher.d/01-ifupdown,在我的电脑里它的名字是01-ifupdown,也许在你的电脑里它有其他名字,打开它。

找到包含如下内容的行:

if [ "$2" = "vpn-up" ] || [ "$2" = "vpn-down" ]; then

将其更改为:

if [ "$2" = "vpn-up" ] || [ "$2" = "vpn-down" ]; then
    ifconfig ppp0 mtu 1300
   ADDRESS_FAMILIES=""
fi

完成,您现在拥有永久的 MTU 设置。

相关内容