Replies: 4 comments 17 replies
-
|
从代码上来说,对于一个包含链接复用类的proxy来说,withDialer类的函数很难正常工作(你需要在proxy内部根据传入的dialer维持一个复杂的对应关系,并小心处理资源释放问题) 从设计上说,一个proxy就不该允许在proxy创建后动态修改dialer 最初重构withDialer系列函数只是为了让relay更好的工作,而dialer-proxy的目的就是彻底废止relay这种让一个proxy存在dialer动态变化的可能,所以group不会支持dialer-proxy(但是dialer-proxy可以设置一个group作为目标) 对于原版clash,当初设计relay没有什么大问题的基础在于,当年支持的协议大部分是无状态的(比如ss),proxy内部不需要维护proxy的底层状态,然而这种设计放在现在显然是不太合理的 |
Beta Was this translation helpful? Give feedback.
-
这点我赞同,强一致是比较困难的,但最终一致性还是可以的。dialer-proxy的设计比relay在这方面已经要强上不少了。原本clash的relay确实在mux场景有较大的问题 https://x.com/ayanamist/status/1892127564459585959 那对于社区广泛需求,relay里包含一个入口proxy一个出口proxy,都需要select类型的group(我自己就有这需求),你有什么实现建议吗,relay被删掉后,这场景就完全无解了。 |
Beta Was this translation helpful? Give feedback.
-
|
感谢讨论和提供的样例,已经成功实现基于 |
Beta Was this translation helpful? Give feedback.
-
|
有个疑问,比如我有自建 a-国内,b-国外-美国,c-订阅,我想实现 PC==a-国内==c-订阅(筛选出美国节点)==b-国外-美国,即,所有的出口 ip 都是我这一个 b-国外-美国,这个要怎么写 |
Beta Was this translation helpful? Give feedback.

Uh oh!
There was an error while loading. Please reload this page.
-
曾经有两个issue提过这个需求
#1717
#1815
都在没有回复的情况下关掉了
翻看了下代码,select、fallback、loadbalancer、urltest这几个简单支持下好像并不困难,把代码里DialContext/ListenPacketContext改成DialContextWithDialer/ListenPacketWithDialer,然后用proxydialer.NewByName获取一个dialer并传进去应该就好了?
这块是有什么原因吗,还是说只要有人提PR,也是会被接受的?
Beta Was this translation helpful? Give feedback.
All reactions