Mac 上是否有根据 WiFi 无感切换代理的工具?

2020-09-11 14:04:40 +08:00
 Xheldon

场景一:在家路由器自动代理,因此不用打开任何软件,直接使用即可(直连)

场景二:在外面需要 Mac 配置代理,因此需要手动打开代理软件

痛点:在上述过程中需要手动打开 /关闭代理软件。

目前调研结果:没用过 Surge,看起来符合需求?有这么用的吗 麻烦给个结论,可以的话我就买一个。

现状:目前我代理软件用的 ClashX,看了文档 没有相关的功能。

需求:就跟 iOS 上的 QuantumultX 的根据 ssid 自动选择是走代理还是走直连一样, 即:电脑无论什么情况会一直运行代理软件,然后它根据 WiFi 名字,选择走直连还是代理,而不是每次手动打开 /关闭软件。

1980 次点击
所在节点    macOS
19 条回复
christin
2020-09-11 15:20:22 +08:00
有的 surge 可以 不过需要配置 qx 好像也可以 不过没用过
https://github.com/Peng-YM/QuanX
最下面有个 surge 运行模式
missdeer
2020-09-11 15:27:48 +08:00
https://github.com/Hammerspoon/hammerspoon
可能要自己写几行代码
mooyo
2020-09-11 15:28:50 +08:00
可以整个软路由自动下发代理网关
mooyo
2020-09-11 15:29:25 +08:00
如果有软路由的话 还能根据不同设备自动配置代理或者不代理 整个 100 块钱的 n1 盒子就够了
likaci
2020-09-11 15:34:33 +08:00
Surge 可以
Clash 用 fallback 模式, 配置一个家里内网才能访问通的 url
dangyuluo
2020-09-11 16:01:09 +08:00
单纯好奇,你是用的那种架构搭建的透明代理?
honjow
2020-09-11 16:25:53 +08:00
Surge 确实可以
zh826256645
2020-09-11 17:40:45 +08:00
用 2 楼老哥发的 🔨 工具

1.mac 网络设置新增一个默认“家”的位置,再新增一个“外面”的位置,这个位置在高级设置中,配置好代理
2.然后用 🔨 写个检测位置后自动切换网络位置的脚本,检测到家里的网络,就切换到"家"的网络位置,否者切换“外面”的网络位置。

可以参考下: https://github.com/zh826256645/hammerspoon_config/blob/master/modules/wifi.lua
1002xin
2020-09-11 19:09:24 +08:00
Surge 可以,基本操作
Kobayashi
2020-09-11 21:59:35 +08:00
hammerspoon 切换 network location (其实和位置没有关系,就是切换网络配置 profile )。surge Mac 监听 WiFi 名切换也是一个思路。
mooyo
2020-09-11 23:19:04 +08:00
抱歉看岔了 忽略楼上的的回答吧
czwen1993
2020-09-11 23:43:39 +08:00
我用 ControlPlane,设置定位在家范围内直接关闭代理软件,在家以外的地方打开代理软件。
ooops
2020-09-12 00:54:13 +08:00
之前正好有同样的需求,用 hammerspoon 搞了个。可以参考下 https://gist.github.com/ooopscc/39570b414bd492c86d2a2e72b5315ac9
Xheldon
2020-09-12 01:29:33 +08:00
@likaci 这个我试试,本来想弄个仅内网可访问的 url-test 健康检查设置,家里健康检查发现 fail 不会连接代理,外面健康测试可以连接就走代理,但是不清楚这个健康检查的机制:是直接访问 url 还是跟普通的 url 一样,走代理访问...我没试过。
不过你这个方案似乎更可行,感谢!
Xheldon
2020-09-12 01:33:48 +08:00
@dangyuluo iOS 上用的 quantumultX,可以这样用,该软件一直运行,可以配置策略如 ssid 名称来决定请求是往哪个地方发送。你问的什么架构没明白什么意思。就是 `设备 <---> 代理软件 <---> 代理服务器` 这种正向代理模式...?

家里用的梅林,装的 SS
Xheldon
2020-09-12 01:34:54 +08:00
@christin 好的,我先试试简单的解决方案,毕竟 surge 不便宜... 感谢
Xheldon
2020-09-12 01:36:56 +08:00
@zh826256645 好的,我试下。

这个方案似乎跟 clashX 脚本类似。clashX 也支持 Python 脚本,但是该软件的作者说似乎 syscall 无法获取到系统的 ssid (可能是权限问题),所以该软件不支持。

感谢!
Xheldon
2020-09-12 01:38:55 +08:00
@czwen1993 又需要一个新的软件来控制...想尽量避免这种情况😂 anyway, 感谢思路!
chztv
2020-09-15 09:57:29 +08:00
还是入手 Surge 吧,最近越来越强大,楼主说的这种问题我记得 Surge 在 N 年前就解决了。
最近在 Surge 下还解决了需要用原生 VPN 连接阿里内网才可登录服务器的奇怕需求,再也不需要开开关关 Surge 了。

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

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

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

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

© 2021 V2EX