mihomo
mihomo copied to clipboard
[Feature] 建议添加个 proxy-provider 下各节点的别名 tag,比如叫 alias_name
Verify steps
- [X] 我已经在 Issue Tracker 中找过我要提出的请求 I have searched on the issue tracker for a related feature request.
- [X] 我已经仔细看过 Documentation 并无法找到这个功能 I have read the documentation and was unable to solve the issue.
Description
有这样的使用场景,有 3 个 proxy-provider ,每个 proproxy-provider 有 10 个节点,这样有就有30个不同协议集合的节点池,但现在各个节点名称是提供者起的,作为用户不能很好的管理并用于后续的分流。 希望达到的效果是节点池的节点1 ,能根据用户规则自定义命名,比如以 proxy 为前缀,节点1就叫 proxy-1 ,同理节点2叫 proxy-2,但不是覆盖原来的节点 tag,而是添加一个字段比如叫 alias_name,该自定义命名规则放在 proxie-provider 的字段下面,这个与 tag 等效,在后面的分流规则中用 原节点名1和 alias_name-1都可以使用。
Possible Solution
No response
自己整个sub store之类的不就可以了
先用 sub store,订阅举例中的3个订阅url,然后聚合输出一份自定义的节点名的url,最后给 clash 订阅一份我自定义的,是这样吗?
可以提供一个前缀/后缀添加(固定字符串),如果需要修改原有命名,那就用sub-store啥的自己转换吧
可以提供一个前缀/后缀添加(固定字符串),如果需要修改原有命名,那就用sub-store啥的自己转换吧
官方能给予支持吗?只要前缀,比如叫 proxy- ,之后proxy-provider所有订阅里组成的节点池,第1个是 proxy-1,第10个是 proxy-10,第100个是 proxy-100,这样也行啊
可以提供一个前缀/后缀添加(固定字符串),如果需要修改原有命名,那就用sub-store啥的自己转换吧
官方能给予支持吗?只要前缀,比如叫 proxy- ,之后proxy-provider所有订阅里组成的节点池,第1个是 proxy-1,第10个是 proxy-10,第100个是 proxy-100,这样也行啊
已经加了,看alpha的commit
可以提供一个前缀/后缀添加(固定字符串),如果需要修改原有命名,那就用sub-store啥的自己转换吧
官方能给予支持吗?只要前缀,比如叫 proxy- ,之后proxy-provider所有订阅里组成的节点池,第1个是 proxy-1,第10个是 proxy-10,第100个是 proxy-100,这样也行啊
已经加了,看alpha的commit
果然真大神啊,困扰了多年的难题给你处理了。同时还想再多问一下 mihomo 的使用,能区分进来的流量吗? 我现在通过 iptable ,把 172.18.0.2-10 的流量全部通过 172.18.0.1:8765 给到 clash 的入口
iptables -t nat -A PREROUTING -s 172.18.0.0/24 -p tcp -j DNAT --to-destination 172.18.0.1:8765
然后 clash 通过 redir 来接收所有的流量
mixed-port: 7890
listeners:
- name: redir-in
type: redir
port: 8765
listen: 172.18.0.1
最后如何配置新增的 name-prefix: "[provider1]", 让来自不同 IP 的流量严格与 代理对应? 172.18.0.2 --- > provider1-2 172.18.0.3 --- > provider1-3 ...... 172.18.0.10 --- > provider1-10
@fscarmen 建策略组,匹配到策略组
请问是这样吗?
proxy-groups:
- name: 匹配-1
type: select
use:
- provider1-1
- name: 匹配-2
type: select
use:
- provider1-2
。。。。。。
- name: 匹配-10
type: select
use:
- provider1-10
rules:
- SRC-IP-CIDR,178.18.0.2/32,匹配-1
- SRC-IP-CIDR,178.18.0.3/32,匹配-2
。。。。。。
- SRC-IP-CIDR,178.18.0.11/32,匹配-10
...
已经加了,看alpha的commit
刚试了一下,订阅节点名原来为 HK-1、HK-2 ,加了 override: { additional-prefix: "[provider1]" } 就变为 [provider1]HK-1、[provider1]HK-2,这样不知道该节点名的前提下,仍然是做不了策略组的哦
proxy-groups:
- name: match-1
type: select
use:
- [provider1]HK-1 ## 就是这里,我不能提前知道这个 HK-1 的名字,这里也不知道如何写,因为提前不知道节点名字
- name: match-2
type: select
use:
- [provider1]HK-2 ## 这里
rules:
- SRC-IP-CIDR,178.18.0.2/32,match-1
- SRC-IP-CIDR,178.18.0.3/32,match-2
@fscarmen 引用是引用整个集合,而不是单个节点
@fscarmen 引用是引用整个集合,而不是单个节点
哦哦,明白了,需求是想1个节点给1处使用的。 那把 use: 改为 proxies:的话,节点名字那里如何处理好呢?
我试过提前写进去也不行,因为还没有读取订阅的节点,会提示没有节点名的
去掉 proxy-groups 了,这样写
rules:
- SRC-IP-CIDR,178.18.0.2/32,[provider1]HK-1 ## 就是这里,我不能提前知道这个 HK-1 的名字,提前应该如何写?
- SRC-IP-CIDR,178.18.0.3/32,[provider1]HK-2 ## 这里
@fscarmen provider只能被groups引用,不能单独匹配,建议先看完文档
搞乌龙了,我试下用clash api提取节点信息看看