我已经配置了我的 Cisco 路由器(这是我的网关)来处理来自 Android 客户端的远程访问 IPsec VPN 连接,并且我已经配置了我的 Android 手机通过 VPN 连接到路由器来访问我的家庭网络。
所有客户端流量都强制通过隧道,并且 VPN 连接的 NAT 被禁用,这样 Android 手机在连接到 VPN 时就无法访问互联网。
我的内部网络使用 10.0.0.0/24,并且 VPN 客户端被分配了 192.168.0.0/24 网络的地址。
连接后,Android 手机可以成功 ping 通内部 10.0.0.0/24 网络上的客户端。它也可以通过 SSH 连接到它们,但尝试访问我内部运行的任何 Web 服务器时都会失败。
我可以在网络服务器上的日志消息中看到,它接收来自 192.168.0.x/24 地址的连接,但网页从未在 Android 上的网络浏览器中加载,只是挂起等待。
任何帮助,将不胜感激!
答案1
我最终通过在网络服务器上运行 wireshark 发现了问题,它向我显示较大的数据包一直在重新传输,但小数据包没有。
我通过添加ip tcp adjust-mss 1300
隧道接口解决了该问题,这会导致路由器在协商会话时干预 TCP 数据包,并将最大段大小设置为 1300。