Skip to content

Hysteria

Structure

{
  "type": "hysteria",
  "tag": "hysteria-out",

  "server": "127.0.0.1",
  "server_port": 1080,
  "up": "100 Mbps",
  "up_mbps": 100,
  "down": "100 Mbps",
  "down_mbps": 100,
  "obfs": "fuck me till the daylight",
  "auth": "",
  "auth_str": "password",
  "recv_window_conn": 0,
  "recv_window": 0,
  "disable_mtu_discovery": false,
  "network": "tcp",
  "tls": {},

  ... // Dial Fields
}

Fields

server

Required

The server address.

server_port

Required

The server port.

up, down

Required

Format: [Integer] [Unit] e.g. 100 Mbps, 640 KBps, 2 Gbps

Supported units (case sensitive, b = bits, B = bytes, 8b=1B):

bps (bits per second)
Bps (bytes per second)
Kbps (kilobits per second)
KBps (kilobytes per second)
Mbps (megabits per second)
MBps (megabytes per second)
Gbps (gigabits per second)
GBps (gigabytes per second)
Tbps (terabits per second)
TBps (terabytes per second)

up_mbps, down_mbps

Required

up, down in Mbps.

obfs

Obfuscated password.

auth

Authentication password, in base64.

auth_str

Authentication password.

recv_window_conn

The QUIC stream-level flow control window for receiving data.

15728640 (15 MB/s) will be used if empty.

recv_window

The QUIC connection-level flow control window for receiving data.

67108864 (64 MB/s) will be used if empty.

disable_mtu_discovery

Disables Path MTU Discovery (RFC 8899). Packets will then be at most 1252 (IPv4) / 1232 (IPv6) bytes in size.

Force enabled on for systems other than Linux and Windows (according to upstream).

network

Enabled network

One of tcp udp.

Both is enabled by default.

tls

Required

TLS configuration, see TLS.

Dial Fields

See Dial Fields for details.