docker-easyconnect + Clash For Windows 规则不生效问题

53 天前
 adpw001

背景

最近日常开发需要连接不同的客户 vpn ,而本机本来就存在 Clash 用于代理,几个 vpn 就发生了冲突,为了能支持多个 vpn 同时运行,就在网上也查到 docker-easyconnect 这个解决方案。在本机顺利搭建了起来,docker-easyconnect 启动命令如下:

docker run --device /dev/net/tun --cap-add NET_ADMIN -ti -e PASSWORD=admin -v C:\Users\lihuayang\.ecdata:/root -p 127.0.0.1:5901:5901 -p 127.0.0.1:1080:1080 -p 127.0.0.1:8888:8888 hagb/docker-easyconnect:7.6.7

目前在 Chrome 上使用 SwitchyOmega 是能正常访问到 vpn 所对应的资源的,同时我使用 DataGrip 配置连接参数 socksProxyHostsocksProxyPort 也能正常访问到 vpn 对应的 mysql 资源。

问题

美中不足的是每次上相关网站的时候需要切换到对应的场景模式(按不同的 vpn 分别新建场景),多少还是有点麻烦。加上此时 Clash 也是能正常工作,所以在想能不能通过 Clash 配置规则而不用 SwitchyOmega 来实现,就省去手动切换的步骤了。所以我进行了规则配置。我的 Clash 配置文件大致如下(省略了很多)

proxies:
  - name: lian_dong
    type: socks5
    server: 127.0.0.1
    port: 1080

rules:
  - IP-CIDR,10.0.11.105/32,lian_dong
  - DOMAIN,blj.liando.cn,lian_dong

在我使用 SwitchyOmega 来切换场景这种方法时; blj.liando.cn 和 10.0.11.105 内的资源我都能访问到。但当我关了 SwitchyOmega 使用 Clash For Windows 配置上述 clash 规则,DOMAIN 这条能生效,而 IP-CIDR 这条怎么都不生效。

本人对网络这块不是很熟悉。菜鸡一枚,遇到这种问题,有点手足无措了,是我哪里配错了吗?大佬们有什么建议不,或者是排查思路,感谢感谢🙏

753 次点击
所在节点    问与答
7 条回复
brucmao
53 天前
brucmao
53 天前
你可以打开 cfw 看下日志
KJH
53 天前
我没学过专业知识,可能叫法不对。

下面是我自己的解决方式,供参考

目前我这 windows 电脑现在就在用 easyConnect 客户端+ clash
一开始发现 开启 clash 后再开 easyconnect 就会导致无法访问 easyconnect 代理的 10.254.0.0 号段,比如公司的内网代理域名是:test.com.cn

经过看 clash 日志发现
访问 test.com.cn 的时候 dns 解析不了,也就是内网域名没有走 easyconnect 的解析


通过 cmd 使用 ipconfig /all 找到 easyconnect 的适配器,查看他的 DNS 服务器地址,我这是 127.0.0.1

打开 clash 修改配置文件
dns:
nameserver:

一般机场都会有这个

把你查出来的 DNS 地址 127.0.0.1 配到 nameserver 里就行了。完美解决。
JohnCen
53 天前
clash 客户端设置中有个代理绕过,你可以去配置一下,默认设置中就包括了局域网不走代理的设置
adpw001
53 天前
@brucmao 好家伙,原来这里还有个全局设置,强啊!老哥,多谢多谢。
adpw001
53 天前
@JohnCen 是的是的,已经找到了,感谢
adpw001
53 天前
@KJH 嗯嗯,已经解决了,老哥,感谢回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1061683

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX