11. Link1 App 管理#


Link1 的用户管理入口是 App,而不是让用户直接操作底层内核。App 的职责是把配置、运行状态、策略组、连接、日志和 HTTP 捕获整理成可理解的页面,帮助你完成“导入 → 校验 → 启动 → 观察 → 排障”的闭环。

App 与内核的分工#

能力Link1 AppLink1 内核
配置档案导入、编辑、校验、切换、展示错误编译 YAML,生成运行时结构
运行状态启动/停止、显示当前配置、展示速率监听端口、创建 TUN、维护连接
策略组展示成员、手动切换、触发测试按组类型选择节点并拨号
Provider展示订阅来源、刷新状态、节点数量下载、解析、过滤、健康检查
连接展示目标、规则、出站、流量接收连接并转发数据
日志搜索、过滤、复制错误输出配置、DNS、规则、拨号、协议错误
HTTP 捕获展示 flow、body 预览、重放入口执行 Capture、MITM、改写和 Mock

用户需要关注的是“页面上的信息代表哪一层出了问题”,而不是底层如何暴露这些信息。

配置档案#

配置档案是一份可启动的网络行为说明书。它通常包含:

App 中配置档案的典型操作:

操作什么时候用实际影响
导入从订阅、本地文件或剪贴板添加配置新增一个可校验的配置档案
校验启动前确认配置能编译不启动网络监听,只检查字段和引用
应用让当前配置成为运行配置内核会按这份配置重新启动或热切换
复制做实验前保留原配置避免误改可用配置
导出迁移到其他设备保存 YAML 和相关文件引用

建议:每次做较大改动前复制一份配置档案;出问题时可以快速回退。

首页与运行状态#

首页应帮助你回答四个问题:

  1. 当前内核是否正在运行。
  1. 当前使用哪份配置档案。
  1. 当前上行/下行速率是否符合预期。
  1. 是否存在持续错误日志。

常见状态含义:

状态含义下一步
未运行内核没有启动应用配置或查看启动错误
启动中正在编译配置、监听端口、创建 TUN等待或查看日志
运行中入口与数据面已就绪用连接列表验证流量
运行但无连接内核可用,但客户端未进入 Link1检查系统代理、TUN、路由器接管
错误配置、权限、端口或协议失败复制错误并按章节排障

连接列表#

连接列表是排障最重要的页面之一。每条连接至少要理解这些字段:

字段含义用来判断什么
源地址谁发起连接是本机、局域网设备还是某个入站用户
目标域名或 IP + 端口Link1 是否拿到了正确目标
网络TCP/UDPUDP 不通时要看协议是否支持 UDP
入站从哪个入口进入是否符合你的预期接管方式
命中规则哪条规则返回 action规则顺序是否正确
出站最终使用哪个节点/组是否走了预期线路
速率/流量当前连接数据量判断是否真的在传输
错误连接失败原因判断 DNS、拨号、握手还是远端断开

排障时优先看“目标”和“命中规则”。如果目标只有 IP,没有域名,域名规则不命中通常不是规则写错,而是 DNS/Fake-IP/Sniffer 没有提供域名信息。

策略组#

策略组页面用于查看和切换出口。

组类型App 中的用户动作注意事项
select手动选择成员选择通常会持久化,重启后仍保持
url-test查看延迟结果,必要时手动触发测试只代表测试 URL 的延迟,不等于所有网站体验
fallback查看当前可用主备排在前面的可用节点优先
load-balance查看成员健康状态单个连接通常不会同时走多个节点
smart查看质量反馈选择结果可能随网络质量变化
relay查看多跳链路任一跳不可用都会影响整条链路

如果规则 action 指向策略组,最终出站取决于策略组当前选择;如果 action 直接指向节点,则策略组页面不会改变这条连接的出口。

Provider 与订阅#

Provider 是节点或规则的来源。常见类型:

类型用途App 中应关注
HTTP proxy provider从订阅地址拉取节点更新时间、下载错误、节点数量、过滤结果
File proxy provider从本地文件加载节点文件路径是否存在、格式是否正确
Inline proxy provider在主配置内写节点配置校验错误和节点名称
WARP provider自动物化 WARP/WireGuard/MASQUE 候选账号/私钥、候选节点、健康检查
Rule provider从文件或远端加载规则集规则数量、更新失败、行为类型
Hosts provider从外部加载 hosts域名映射是否符合预期

Provider 出问题时,症状通常是策略组成员为空、规则集不可用、规则命中失败或节点一直不可用。

规则测试#

规则测试用于在不真正访问网络的情况下,检查一条“假想连接”会命中什么规则。你通常需要填写:

输入示例影响
目标 hostchat.openai.com影响 DOMAIN/GEOSITE 规则
目标 IP1.1.1.1影响 IP-CIDR/GEOIP/IP-ASN 规则
端口443影响 DST-PORT 规则
网络tcp/udp影响 NETWORK 规则
入站类型mixed/tun影响 IN-TYPE/IN-NAME/IN-PORT 规则
源 IP192.168.9.10影响 SRC-IP-CIDR/SRC-GEOIP 规则
进程名Safari影响 PROCESS 规则,取决于平台能力

规则测试的结果应包括:命中的规则、最终 action、是否触发 DNS 解析、是否落到 MATCH。如果测试结果正确但真实连接不正确,通常说明真实连接的元数据和你测试输入不同。

DNS 与 Fake-IP 观察#

DNS 页面或相关日志用于回答:

典型问题:

现象可能原因
域名规则不命中DNS 没进 Link1,连接只有 IP
国内站点解析到海外 IPnameserver/fallback 策略不合适
TUN 下访问失败DNS hijack 未生效,系统仍用外部 DNS
Fake-IP 后局域网服务异常内网域名应加入 fake-ip-filter 或 hosts

日志#

日志不是越详细越好。建议:

场景建议日志级别
日常使用info
启动失败debug 或复制启动错误
DNS 问题临时提高到 debug
协议握手失败查看节点名称、远端地址、TLS/认证相关错误
HTTP Engine 调试只对目标 host 开启,并限制 body 大小

读日志时先看“错误属于哪一层”:配置编译、入站监听、DNS、规则、策略组、provider、出站协议、HTTP Engine。

HTTP 捕获与重放#

开启 HTTP Engine Capture 后,App 可以展示 HTTP flow:

重放用于复现某个已捕获请求,适合调试改写规则或 Mock 规则。注意:重放可能再次访问真实目标服务,也可能带上敏感 header/body,使用前应确认目标和内容。

安全边界#