使用 MorganOnBass/docker-openconnect-ldap: Docker OpenConnect VPN Server 这个 docker 部署了 ocserv 镜像, 测试功能是正常的, 但是一旦开启分组隧道就会有问题. 个人需求是只有 vpn 服务器所在的局域网网段才走 vpn 代理流量, 其余全部走客户端本地的网咯. 其中 vpn 服务器所在的局域网网段不仅指 vpn 创建的虚拟网段, 更重要的是 ocserv 部署前就存在的私网网段.
vpn 服务器所在的局域网网段是 192.168.30.x, 所以配置了 ocserv 的 route=192.168.30.0/24, 内网 dns 为 192.168.30.1. 但是一旦开启这个参数, 就无法通过内网域名访问内网服务了, 只有 192.168.30.x 的内网 ip 访问可行.
测试过连上 vpn 前后的客户端在百度显示的公网 ip 变化, 增加 route 字段配置前后, 公网 ip 确实从 vpn 服务器所在公网 ip 变成了 客户端自己所在网络的公网 ip, 证明分组确实生效了.
尝试过将内网域名写入 split-dns 字段, 并指定 dns 字段配置为 192.168.30.1(内网域名在这里可以解析), 但还是不行. 个人对 split-dns 功能的理解: split-dns 指定的域名会走 ocserv 配置的 dns 的地址(dns=xxxx)去解析域名? 不知道这么理解是否正确?
看到过不用 docker 的 ocserv 教程, 似乎还要增加一些 iptables 规则, 不知道跟这个是否有关系?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.