surge wireguard 问题请教

342 天前
 PatrickLe
我的 surge 配置文件放在 iCloud ,多个设备共同使用一个配置,家里路由生成了多个 WG 配置,供不同的设备使用,这些配置都放在 surge 里面,我设置了一个 WG 策略组,指定了 Mac 使用为 Mac 生成的 WG 配置,IPAD 用 IPAD 的配置。

但是问题来了,surge 似乎会自动测试,或者不知道的原因,设备使用了错误的 WG 配置,导致比如原本 Mac 的配置被其他设备占用了,半天会连不上,这个问题该怎么解决呢?

不知道问题描述清楚了没有,就是 WG 是一对一的, 一个路由生成的多个 WG 文件,放在 1 个 surge 文件供多个设备使用时,有时会冲突,导致 WG 配置被错误的占用
2219 次点击
所在节点    Surge
19 条回复
tediorelee
342 天前
把每个设备的配置文件拆分下不就可以了吗
PatrickLe
342 天前
@tediorelee 怎么拆分呢?你是说梯子配置放 iCloud ,WG 配置放本地吗? surge 不允许这样做啊
tediorelee
342 天前
@PatrickLe 不同设备用不同的配置文件,我这里手机用一个配置,macmini 用一个,mbp 又是一个
coolcoffee
342 天前
Wireguard 列表再分一个 Proxy Select Group 。

比如:ProxyGroup 下有 wg-mac 、wg-iphone 、wg-ipad1 、wg-ipad2 ,一个或多个规则就落在 ProxyGroup ,然后在每个设备上再手动选择一下就不会冲突了。 注意 ProxyGroup 就别手动去测试延迟,不然每一个都会跑一遍可能影响到其他设备了。
PatrickLe
342 天前
@tediorelee 我就是想用一套云端设备啊,这样策略调整同步生效多安逸
PatrickLe
342 天前
@coolcoffee 老哥,“ 一个或多个规则就落在 ProxyGroup”这句话什么意思? 你是说 WG 主策略组下,再分别新建 wg-mac 、wg-iphone 、wg-ipad1 这样的子策略组吗?
coolcoffee
342 天前
@PatrickLe

[Proxy Group]
HomeTunnel = select, home-wg, home-wg-02, DIRECT

[Rule]
IP-CIDR,192.168.3.0/24,HomeTunnel,no-resolve

192.168.3.0/24 这条规则会落在 HomeTunnel ,HomeTunnel 是一个手动选择的组,每个设备上手动选择一个不通的配置。 这样就可以做到添加一条规则到 wireguard ,但是每个设备之间不会互相冲突。
stille
342 天前
wg 服务端创建多个客户端,在 surge 配置里全加上去,分别命名,各个设备用这一个配置,用对应设备的 wg ,不要用其它的避免冲突
PatrickLe
336 天前
@coolcoffee 老哥,我这样做了还是不行啊,你看下图我的配置,也是做的手动选择,电脑选 Mac ,平板选 iPad ,但有时依旧是冲突

coolcoffee
336 天前
@PatrickLe 如果你没有对整个 group 做各种 test 的话,那就可能是运营商限流之类的😂
PatrickLe
336 天前
@coolcoffee 没有 test ,我的宽带不可能限流,因为是商务宽带,上传很足,没有 QOS 。
所以我怀疑是不是 surge 某种机制导致的,surge 好像又不能同时使用两个配置,比如一个多设备共享的 iCloud 配置,一个 WG 的配置作为设备的本地配置
coolcoffee
336 天前
@PatrickLe 不行就换 snell 吧,一样可以穿回内网,或者代理嵌套。
ambitiouspei
325 天前
做配置分离,都放到 iCloud 里面,common 里面的 warp 指定 section 是某个名字,然后,每个设备里面,wireguard section 用同一个名字,但是下面对应的设置都是每个设备分配的信息,这样,表面上各个设备的都一样,但是每个设备的 wireguard 配置都不一样
ozOGen
305 天前
用 sgmodule ,每个设备一个模块,
proxy 部分写
WG= wireguard, section-name=wg-device
然后每个模块里只写 wg section ,字段都写
[WireGuard wg-device]
下面的内容设备 specify
然后每个设备开启自己对应的模块就可以了

我 5 个设备这样用都 ok ,只用一份主配置文件,ios 和 macos 都 ok
PatrickLe
240 天前
@ozOGen 老哥方便加个 tg 详细请教下吗?我还是没搞定这个,https://t.me/skywo0
ozOGen
238 天前
proxy.conf 里
[Proxy]
WG-HomeGZ = wireguard, section-name=UDM-SE

然后
WG-Air15.sgmodule 里
#!name=WG for Air15
#!desc=WireGuard for Air15.

[WireGuard UDM-SE]
private-key = +FXXXXXXXXXX1+vYZkQ=
self-ip = 192.168.3.3
dns-server = 192.168.3.1
prefer-ipv6 = false
mtu = 1280
peer = (public-key = aXXXXXXXXXXA=, allowed-ips = "192.168.3.1/32,192.168.3.3/32,0.0.0.0/0", endpoint = home.XXXXX.cn:51820)


然后另一个设备对应的模块里
WG-ATV6.sgmodule 里
#!name=WG for ATV6
#!desc=WireGuard for AppleTV6-Remote.

[WireGuard UDM-SE]
private-key = YXXXXXXXXXXX3g=
self-ip = 192.168.3.6
dns-server = 192.168.3.1
prefer-ipv6 = false
mtu = 1280
peer = (public-key = aXXXXXXXXXXXA=, allowed-ips = "192.168.3.1/32,192.168.3.6/32,0.0.0.0/0", endpoint = home.XXXXX.cn:51820)

然后哪个设备就选那个设备对应的模块
这样对应替换掉自己的信息。。应该没问题了

当然 proxygroup 和 rule 部分也要对应上
@PatrickLe
PatrickLe
235 天前
@ozOGen 老哥,mac 无法创建本地模块,( mac 没找到入口,ios 就是直接在模块那里可以手动添加),这个该怎么办呢?
ozOGen
234 天前
文本文件有什么不能创建的。。。。
@PatrickLe
weeei
210 天前
https://kb.nssurge.com/surge-knowledge-base/v/zh/guidelines/detached-profile
参考这里的配置文件分离。
iOS 使用 ios.conf ,mac 使用 mac.conf ,各自加载不同的配置文件,都放在 iCloud 云盘没有问题。
相同的配置抽取出来放在 Common.conf ,然后在 ios.conf 和 mac.conf 里面包含 #!include Common.conf

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

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

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

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

© 2021 V2EX