适用条件:添加前必须核验的范围
在 mihomo 的配置结构中,远程订阅对应 proxy-providers 里类型为 http 的代理集合。只要准备把一条链接写入 url,就应当先完成来源检查,而不是先保存配置再观察能否出现节点。类型为 file 时,检查重点是本地文件路径是否落在资料允许的目录;类型为 inline 时没有远程链接,来源核验转为确认 payload 是否由你本人掌握。集合的 name 为必填项,不能重复,资料建议不要和策略组名称重复,否则后续难以判断节点究竟来自哪一个集合。
需要做来源检查的情况包括:首次写入某个远程地址、更换域名或路径、为下载增加自定义请求头或指定下载代理、以及准备把缓存文件放到默认目录之外。只修改筛选、健康检查或名称覆写、且不改变拉取地址时,不属于「添加订阅前的来源检查」。尚未确定 type 就填写 url,也容易把单节点分享文本误当成集合地址。
按官方字段检查链接与落盘位置
对 http 类型,资料写明需要配置 url。应确认该地址指向你信任的订阅接口,并能说明其用途是拉取代理列表。若接口要求鉴权,应在 header 中按对方约定设置,例如授权字段或 User-Agent;请求头会随下载发出,因此头的内容也属于来源身份的一部分,不能把令牌指向不明中转。
然后检查缓存路径。path 可选,不可与其他集合重复;不填写时会使用 url 的 MD5 作为文件名。由于安全问题,该路径只允许位于 HomeDir 中,HomeDir 由启动参数 -d 配置。若希望存到其他位置,必须通过 SAFE_PATHS 环境变量指定额外安全路径,语法与本操作系统的 PATH 相同:Windows 下以分号分割,其他系统下以冒号分割。路径越权意味着来源检查未通过,不应继续添加。
若订阅正文经过 age 加密,资料限定目前仅支持 age-encryption.org/v1 的 official ASCII armor 格式,密钥仅支持 x25519 recipient type 以及 mlkem768-x25519 混合后量子类型。核心不会主动将公钥发送给服务器,需要自行在请求头里设置 X-Age-Public-Key,或通过其他方式上传公钥。格式或密钥类型不符时,该链接不能视为可用来源。size-limit 以字节限制下载文件最大大小,默认 0 表示不限制;来源尚不完全确定时,应先给出上限。proxy 表示经过指定代理进行下载或更新,若目标接口不能直连,必须明确这条下载路径,以免把连通性问题当成链接不可信。
判断依据与失败后的下一步
可以写入配置的判断依据应同时成立:type 与字段匹配,即 http 具备 url、file 具备合法 path、inline 具备 payload;缓存路径位于 HomeDir 或 SAFE_PATHS 声明的目录;若启用加密,则密钥与 armor 格式符合资料要求;自定义头不会把请求发往未授权的第三方。缺少任一项,都应停止添加。
失败时按原因处理。路径被拒绝时,先确认 -d 所指向的 HomeDir,或补写 SAFE_PATHS,不要改用任意绝对路径试图绕过限制。鉴权失败时,核对 header 是否完整,而不是改填来路不明的镜像地址。密文无法解密时,使用资料中的 mihomo age 相关命令在本地验证密钥与文件,而不是改为接收未知明文。体积异常或长时间无响应时,检查 size-limit 与 proxy,仍失败则回到提供方确认接口本身,而不是继续更换未核验的 url。interval 只表示更新间隔秒数,不能代替添加前的来源检查。健康检查地址与期望状态用于节点延迟测试,同样不能证明链接来源可信。