[GH-ISSUE #426] 添加VPN_ANDROID_MTU_FIX=yes,安卓11设备连接L2TP/IPSec PSK仍只能ping通外网,不能访问网站 #397

Closed
opened 2026-03-02 08:18:38 +03:00 by kerem · 2 comments
Owner

Originally created by @ENEN-YIN on GitHub (Apr 24, 2024).
Original GitHub issue: https://github.com/hwdsl2/docker-ipsec-vpn-server/issues/426

任务列表

问题描述
安卓11设备,IPsec Xauth PSK、L2TP/IPSec PSK可以连接,未添加VPN_ANDROID_MTU_FIX=yes前,只能ping通外网都不能访问网站;
添加VPN_ANDROID_MTU_FIX=yes后,IPsec Xauth PSK正常访问网站,L2TP/IPSec PSK仍只能ping通外网不能访问网站。

重现步骤
重现该 bug 的步骤:

1.docker配置文件vpn.env

VPN_IPSEC_PSK=password
VPN_USER=testuser
VPN_PASSWORD=testpassword
VPN_ADDL_USERS=usera
VPN_ADDL_PASSWORDS=apassword
VPN_ENABLE_MODP1024=yes
VPN_ANDROID_MTU_FIX=yes

2.bash

sudo docker run \                                                 
    --name ipsec-vpn-server \
    --env-file ./vpn.env \
    --restart=always \
    -v ikev2-vpn-data:/etc/ipsec.d \
    -v ./lib/modules:/lib/modules:ro \
    -p 500:500/udp \
    -p 4500:4500/udp \
    -d --privileged \
    hwdsl2/ipsec-vpn-server

期待的正确结果
L2TP/IPSec PSK 连接后能正常访问网站

日志
启用日志,检查 VPN 状态,并且添加错误日志以帮助解释该问题(如果适用)。

服务器信息(请填写以下信息)

  • Docker 主机操作系统: Armbian_24.5.0_rockchip_dg3399_jammy_6.1.87_server 6.1.87-ophub
  • 服务提供商(如果适用): [比如 GCP, AWS]

客户端信息(请填写以下信息)

  • 设备: Redmi K30pro / Xiaomi Pad 5pro
  • 操作系统: MIUI12.5.7(android11)/MIUI13.0.10(android11)
  • VPN 模式: IPsec/L2TP

其它信息
添加关于该 bug 的其它信息。

Originally created by @ENEN-YIN on GitHub (Apr 24, 2024). Original GitHub issue: https://github.com/hwdsl2/docker-ipsec-vpn-server/issues/426 **任务列表** - [x] 我已阅读 [自述文件](https://github.com/hwdsl2/docker-ipsec-vpn-server/blob/master/README-zh.md) - [x] 我已阅读 [重要提示](https://github.com/hwdsl2/docker-ipsec-vpn-server/blob/master/README-zh.md#重要提示) - [x] 我已按照说明 [配置 VPN 客户端](https://github.com/hwdsl2/docker-ipsec-vpn-server/blob/master/README-zh.md#下一步) - [x] 我检查了 [IKEv1 故障排除](https://github.com/hwdsl2/setup-ipsec-vpn/blob/master/docs/clients-zh.md#ikev1-故障排除),[IKEv2 故障排除](https://github.com/hwdsl2/setup-ipsec-vpn/blob/master/docs/ikev2-howto-zh.md#ikev2-故障排除),[启用日志](https://github.com/hwdsl2/docker-ipsec-vpn-server/blob/master/docs/advanced-usage-zh.md#启用-libreswan-日志) 并查看了 [VPN 状态](https://github.com/hwdsl2/setup-ipsec-vpn/blob/master/docs/clients-zh.md#检查日志及-vpn-状态) - [x] 我搜索了已有的 [Issues](https://github.com/hwdsl2/docker-ipsec-vpn-server/issues?q=is%3Aissue) - [x] 这个 bug 是关于 IPsec VPN 服务器 Docker 镜像,而不是 IPsec VPN 本身 <!--- 如果你发现了 IPsec VPN 的一个可重复的程序漏洞,请在 https://github.com/libreswan/libreswan 提交一个错误报告。VPN 的相关问题可在 [Libreswan](https://lists.libreswan.org/mailman/listinfo/swan) 或 [strongSwan](https://lists.strongswan.org/mailman/listinfo/users) 用户邮件列表提问,或者搜索比如 [Stack Overflow](https://stackoverflow.com/questions/tagged/vpn) 等网站。 ---> **问题描述** 安卓11设备,IPsec Xauth PSK、L2TP/IPSec PSK可以连接,未添加VPN_ANDROID_MTU_FIX=yes前,只能ping通外网都不能访问网站; 添加VPN_ANDROID_MTU_FIX=yes后,IPsec Xauth PSK正常访问网站,L2TP/IPSec PSK仍只能ping通外网不能访问网站。 **重现步骤** 重现该 bug 的步骤: 1.docker配置文件vpn.env ``` VPN_IPSEC_PSK=password VPN_USER=testuser VPN_PASSWORD=testpassword VPN_ADDL_USERS=usera VPN_ADDL_PASSWORDS=apassword VPN_ENABLE_MODP1024=yes VPN_ANDROID_MTU_FIX=yes ``` 2.bash ``` sudo docker run \ --name ipsec-vpn-server \ --env-file ./vpn.env \ --restart=always \ -v ikev2-vpn-data:/etc/ipsec.d \ -v ./lib/modules:/lib/modules:ro \ -p 500:500/udp \ -p 4500:4500/udp \ -d --privileged \ hwdsl2/ipsec-vpn-server ``` **期待的正确结果** L2TP/IPSec PSK 连接后能正常访问网站 **日志** [启用日志](https://github.com/hwdsl2/docker-ipsec-vpn-server/blob/master/docs/advanced-usage-zh.md#启用-libreswan-日志),检查 [VPN 状态](https://github.com/hwdsl2/setup-ipsec-vpn/blob/master/docs/clients-zh.md#检查日志及-vpn-状态),并且添加错误日志以帮助解释该问题(如果适用)。 **服务器信息(请填写以下信息)** - Docker 主机操作系统: Armbian_24.5.0_rockchip_dg3399_jammy_6.1.87_server 6.1.87-ophub - 服务提供商(如果适用): [比如 GCP, AWS] **客户端信息(请填写以下信息)** - 设备: Redmi K30pro / Xiaomi Pad 5pro - 操作系统: MIUI12.5.7(android11)/MIUI13.0.10(android11) - VPN 模式: IPsec/L2TP **其它信息** 添加关于该 bug 的其它信息。
kerem closed this issue 2026-03-02 08:18:39 +03:00
Author
Owner

@hwdsl2 commented on GitHub (Apr 24, 2024):

@ENEN-YIN 你好!感谢你提供详细的错误报告。VPN_ANDROID_MTU_FIX=yes的解决方案有其局限性,主要适用于 IPsec/XAuth ("Cisco IPsec") 和 IKEv2 模式。对于 IPsec/L2TP 模式,目前该问题并没有较好的解决方案。你可以编辑容器内的 /opt/src/run.sh 并尝试调整 mtu 和 mru 的值(当前为 1280),然后重启容器以生效。该方法不一定有效,你可以试一下。

请参见:
github.com/hwdsl2/docker-ipsec-vpn-server@b8c056a823/run.sh (L594-L606)
github.com/hwdsl2/docker-ipsec-vpn-server@b8c056a823/run.sh (L479-L480)

<!-- gh-comment-id:2075043589 --> @hwdsl2 commented on GitHub (Apr 24, 2024): @ENEN-YIN 你好!感谢你提供详细的错误报告。`VPN_ANDROID_MTU_FIX=yes`的解决方案有其局限性,主要适用于 IPsec/XAuth ("Cisco IPsec") 和 IKEv2 模式。对于 IPsec/L2TP 模式,目前该问题并没有较好的解决方案。你可以[编辑容器内的](https://github.com/hwdsl2/docker-ipsec-vpn-server/blob/master/docs/advanced-usage-zh.md#%E5%9C%A8%E5%AE%B9%E5%99%A8%E4%B8%AD%E8%BF%90%E8%A1%8C-bash-shell) `/opt/src/run.sh` 并尝试调整 mtu 和 mru 的值(当前为 1280),然后重启容器以生效。该方法不一定有效,你可以试一下。 请参见: https://github.com/hwdsl2/docker-ipsec-vpn-server/blob/b8c056a823d360c6316fd36198d0e26ec2cc3e18/run.sh#L594-L606 https://github.com/hwdsl2/docker-ipsec-vpn-server/blob/b8c056a823d360c6316fd36198d0e26ec2cc3e18/run.sh#L479-L480
Author
Owner

@ENEN-YIN commented on GitHub (Apr 25, 2024):

好的,感谢解答

<!-- gh-comment-id:2077788472 --> @ENEN-YIN commented on GitHub (Apr 25, 2024): 好的,感谢解答
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/docker-ipsec-vpn-server#397
No description provided.