需求
一个vpn客户端,共享给局域网内其它主机使用
常见的翻墙方式
- 买一个厂家的产品,并安装一个提供的客户端在电脑上,开关代理进行外网访问。
- 海外云服务器自建通道;
一般来说方案2只能来玩一下, 或者是有固定出网ip需求的也还行;
综合更为推荐方案1, 因为付费买的东西质量和速度都要快得多;
买服务
厂商又有多种形式
- 简约型: 提供一个客户端, 只支持开关模式, 开就是智能走外网, 关就是走内网; 或者增加一个节点列表让切换一下;
- 更简约型: 只卖机场订阅, 需要用户自行安装开源客户端来导入订阅;
厂商提供客户端这种一般都有终端数量限制, 比如一个账号只能安装2个客户端在不同电脑上;
开源客户端这种一般功能都比较丰富, 限制也非常少, 支持局域网共享;
局域网代理
所以早期我都使用 Clash Verge 这类软件, 开放局域网端口后, 让其它主机配置代理使用;

第一阶段: 安装在自己笔记本上的, 问题是只要一关机和拿走或重启, 其它机器就上不了网了;
第二阶段: 局域网装一台 win 的虚拟机, 专门安装一个Clash Verge来供其它主机上网, 感觉有些重, 改个配置切换和节点还要远程上去, 比较麻烦, 还多管理一个虚拟机;
第三阶段: 折腾软路由 openwrt + OpenClash 的方式; 挺好, 但用了一段时间 openwrt 后我的软路由换成 vyos 了, 没有Clash的包了;
第四阶段: docker + v2raya; 很满意, 但是我订阅的那个机场的主要节点的协议 v2raya 支持的不好, 具体就是 vmess(tcp) 协议支持, vmess(grpc+tls) 就不行;
第五阶段: docker + clash-verge.deb + vnc;
非常好, docker 启停迁移都方便, 管理只需要web页面登录vnc就可以通过ui进行管理; 这个就是最终方案了;

第六阶段
辅助方案
我订阅的是非常便宜的那种机场, 有时候怎么换节点速度都慢;就想需要切换到我另外一个速率和费用都较高的商业vpn上去;
但是这个vpn的客户端是有限定安装数量和不支持局域网端口代理的; 也只有win+mac两种客户端;
之前我是采用 “Clash Verge 直连模式”+“商业vpn” 的组合, 由 Clash 提供一个 socket5 的代理端口出去;
太繁琐,而网上找那种 socket5 代理工具又太复杂,我只需要这一个小功能而已;
于是找 ai 搞了一个支持 https_proxy, https_proxy, socket5 代理转发的小工具, 完美解决这个问题;
采用 docker + vnc 还有个好处就是, 有很多软件只有图形化客户端版本, 要在服务器上部署就比较麻烦了,这时都可以采用这种方式来部署,方便还好维护, 例如 java 的 VisualVM 图形化客户端直接连上 jvm 来观测性能和内存数据就很方便。