Windows 10下实现SSH全局代理+指定域名直连的分流隧道配置方案咨询
Windows 10下实现SSH全局代理+指定域名直连的分流隧道配置方案咨询
兄弟,我完全懂你的需求——既想让电脑所有流量通过SSH隧道走代理,又要让特定域名(比如.com后缀的网站)直接连互联网,不用绕隧道。结合你目前用Bitvise SSH Client+Softether的情况,给你几个实用的方案,你可以根据自己的操作习惯来选:
方案一:用Proxifier实现精准分流(推荐)
这个工具能完美接管系统所有流量,还能灵活设置分流规则,比单独用Bitvise或Softether更省心:
- 先确保Bitvise SSH Client已经建立连接,并且开启了SOCKS代理(默认一般是本地
127.0.0.1:1080,你可以在Bitvise的「Services」标签里确认端口号) - 安装Proxifier后,打开软件,点击「Profile」→「Proxy Servers」,添加代理:选择「SOCKS5」,地址填
127.0.0.1,端口填Bitvise的SOCKS端口,点击确定 - 接着设置分流规则:点击「Profile」→「Proxification Rules」,先保留默认的「All traffic」规则(让所有流量走刚才加的SOCKS代理),然后点击「Add」添加例外:
- 在「Target host」里输入
*.com,「Action」选择「Direct」(直连),点击确定 - 要是还有其他需要直连的域名/IP,重复这个步骤添加就行
- 在「Target host」里输入
- 这样Proxifier会自动帮你分流:符合规则的.com域名直接连网,其他所有流量都走Bitvise的SSH隧道,完全不用依赖Softether
方案二:用Bitvise自带路由规则+PAC脚本
如果你不想装额外工具,可以结合Bitvise的路由设置和Windows的PAC脚本:
- 打开Bitvise的会话配置,切换到「Routing」标签,把「Default route」设为「Through tunnel」(让默认流量走隧道)
- 编写一个PAC脚本,保存成
proxy.pac文件(比如放在C:\根目录),内容如下:
function FindProxyForURL(url, host) { // .com域名直接连互联网 if (dnsDomainIs(host, ".com")) { return "DIRECT"; } // 其他流量走Bitvise的SOCKS代理 return "SOCKS5 127.0.0.1:1080"; }
- 打开Windows的「设置」→「网络和Internet」→「代理」,选择「使用设置脚本」,输入脚本路径
file:///C:/proxy.pac,保存设置 - 这样系统会自动根据PAC脚本的规则分流,Bitvise负责提供隧道代理,同样能实现你的需求
方案三:调整Softether的路由排除规则(适合坚持用Softether的情况)
如果你不想换掉Softether,那可以通过它的路由排除功能实现分流,但这个方法需要手动收集.com域名对应的IP段,比较麻烦:
- 打开Softether VPN Client Manager,找到你的连接,右键选择「Settings」→「Routing Settings」
- 在「Exclude Routes」里添加需要直连的IP段(比如.com域名对应的IP范围),添加后保存设置
- 不过因为.com的IP段太多太杂,维护起来很麻烦,所以更推荐前面两个方案
备注:内容来源于stack exchange,提问作者Guester
相关产品推荐
相关产品推荐

