Skip to content

L4 链

状态:Current

最后核对:2026-05-30

路由:/gateway/l4-chains

L4 链定义可部署的转发流水线:零个或多个 transit stage,最后一个 target stage。

传输预设

预设状态凭据
TCP RAW完成
TCP TLS完成TLS Cert
TCP REALITY完成REALITY
UDP RAW完成
UDP Noise完成X25519
TCP over QUIC REALITY完成REALITY
UDP over QUIC REALITY完成REALITY
UDP over FAKE_TCP完成
TCP over UDP Noise规划X25519

规划中的传输会显示在选择器中,但后端会通过 TransportSupport 标记为 planned,不会作为已支持 Agent 规则部署。

UDP over FAKE_TCP 是 packet wrapper,不是 TCP tunnel。Agent 会把 UDP datagram payload 放进 TCP-looking raw IP packet 里。L4 inbound listener 和 upstream 转发逻辑见 L4 UDP over FAKE_TCP

创建链

需要 adminoperator

  1. 打开 L4 Chains
  2. 点击 Create Chain
  3. 输入名称。
  4. 选择入口协议:TCPUDPTCP+UDP
  5. 添加 transit stage 和一个 target stage。
  6. transit 节点选择已注册节点,target 从下拉框选择上游。
  7. 选择传输和所需凭据。
  8. 保存。

规则

  • 必须有且只有一个 target stage。
  • target stage 必须是最后一个 stage。
  • transit stage 需要注册节点。
  • target stage 需要选择上游,或保留旧数据中的 endpoint。
  • 同 stage 多节点表示并行/负载均衡候选。

target stage 会保存选中 upstream 的 id,同时保留 endpoint 字符串作为旧数据 fallback。后端 deploy/replay 优先按 upstream id 解析,再回退到已保存的 endpoint 字符串。

对于直接进入 target stage 的 TCP SSLPREREAD 链,所选 upstream 必须配 置 server_names。端口管理 会根据这些名字生成入口 SNI 分 流路由。普通 TCP TLS 链使用 TLS 证书域名作为 listener SNI;upstream 的 server_names 不是出站拨号 SNI 覆盖。

同端口行为

当 Agent 能在首包或握手早期区分流量时,多个 L4 链可以有意使用同一个 listener 端口:

  • TCP REALITY 和 TCP TLS/SSLPREREAD 都由 TCP SNI-family listener 处理。REALITY 先按 SNI 匹配,再对 SNI 命中的 REALITY route 逐个尝试 short ID,因此同 SNI 下 short ID 不同的多个 REALITY route 是合法的。
  • 一个 TCP RAW 链可以作为该 TCP SNI-family listener 下的 fallback。这是把 SSH RAW fallback 和 TLS/REALITY 控制流量放在同一端口的预期方式。
  • UDP Noise route 可以按本地 X25519 key 共用一个 UDP listener,并可保留一个 UDP RAW fallback。
  • 当 QUIC Initial 检测和 REALITY route material 能明确分发时,QUIC REALITY 可以嵌入 UDP Noise 或 UDP RAW 使用的同一个 UDP socket。

部署后使用 端口管理 runtime preview,对比预期链和 Agent 实际应用的 listener 表。

部署

点击 deploy 后,后端向已连接 Agent 推送配置。没有在线 transit Agent 时,前端会提示没有实际部署目标。

NexusNet documentation