Files
XTLS_Xray-docs-next/docs/config/transports/hysteria.md
T
2026-01-18 18:22:54 +08:00

2.6 KiB

Hysteria

Hysteria2 的底层 QUIC 传输的 Xray 实现,通常需要搭配 hysteria2 出站 使用。

HysteriaObject

HysteriaObject 对应传输配置的 hysteriaSettings 项。

{
  "version": 2,
  "auth": "password",
  "up": "0",
  "down": "0",
  "udphop": {
    "port": "1145-1919",
    "interval": 30
  },
  "initStreamReceiveWindow": 8388608,
  "maxStreamReceiveWindow": 8388608,
  "initConnectionReceiveWindow": 20971520,
  "maxConnectionReceiveWindow": 20971520,
  "maxIdleTimeout": 30,
  "keepAlivePeriod": 0,
  "disablePathMTUDiscovery": false
}

version: number

Hysteria 版本,必须为 2。

auth: string

Hysteria 认证密码,服务端和客户端需要保持一致。

up: string

down: string

限制的上传/下载速率。默认值为 0.

格式用户友好,支持各种常见的比特每秒写法,包括 1000000 100kb 20 mb 100 mbps 1g 1 tbps 等等等,大小写不敏感,单位之间可以带或者不带空格,无单位时默认为 bps(比特每秒),不能低于 65535 bps。

协商行为和 Hysteria 原版一致:

服务端的值将限制客户端可以选择的最大 Brutal 模式速率,为 0 表示不限制客户端。

客户端为 0 则表示使用 BBR 模式,不为 0 则表示使用 Brutal 模式,会受到服务端的限制。

注意相对论,服务端的上传是客户端的下载,服务端的下载是客户端的上传。

udphop: {"port": string, "interval": number}

UDP 端口跳跃配置。

port 为跳跃的端口范围,可以是一个数值类型的字符串,如 "1234";或者一个数值范围,如 "1145-1919" 表示端口 1145 到端口 1919,这 775 个端口。可以使用逗号进行分段,如 11,13,15-17 表示端口 11、端口 13、端口 15 到端口 17 这 5 个端口。

interval 为端口跳跃间隔,单位为秒,至少为 5,默认 30 秒。

initStreamReceiveWindow: number

maxStreamReceiveWindow: number

initConnectionReceiveWindow: number

maxConnectionReceiveWindow: number

这四个为具体的 QUIC 窗口参数,除非你完全明白自己在做什么,否则不建议修改这些值。如果要改,建议保持流接收窗口与连接接收窗口的比例为 2:5

maxIdleTimeout: number

最长空闲超时时间(秒)。服务器会在多长时间没有收到任何客户端数据后关闭连接,范围为 4~120 秒,默认为 30 秒。

keepAlivePeriod: number

QUIC KeepAlive 间隔(秒)。范围为 2~60 秒。默认禁用。

disablePathMTUDiscovery: bool

是否禁用路径 MTU 发现。