server: example.com

auth: weak_ahh_password

realm:
  stunServers:
    - stun1.example.com:3478
    - stun2.example.com:3478
  stunTimeout: 6s
  punchTimeout: 12s
  insecure: true
  ipMode: v4
  portMapping:
    enabled: true
    timeout: 3s
    lifetime: 2h

transport:
  type: udp
  udp:
    hopInterval: 30s
    minHopInterval: 10s
    maxHopInterval: 50s

obfs:
  type: salamander
  salamander:
    password: cry_me_a_r1ver
  gecko:
    password: g3ck0_in_the_wall
    minPacketSize: 100
    maxPacketSize: 1200

tls:
  sni: another.example.com
  insecure: true
  pinSHA256: 114515DEADBEEF
  ca: custom_ca.crt
  clientCertificate: client.crt
  clientKey: client.key
  ech: AEv+DQBHAAAgACB3rc0Q

quic:
  initStreamReceiveWindow: 1145141
  maxStreamReceiveWindow: 1145142
  initConnReceiveWindow: 1145143
  maxConnReceiveWindow: 1145144
  maxIdleTimeout: 10s
  keepAlivePeriod: 4s
  disablePathMTUDiscovery: true
  disableChromeParrot: true
  sockopts:
    bindInterface: eth0
    fwmark: 1234
    fdControlUnixSocket: test.sock

congestion:
  type: bbr
  bbrProfile: aggressive

bandwidth:
  up: 200 mbps
  down: 1 gbps
  disableLossCompensation: true

fastOpen: true

lazy: true

socks5:
  listen: 127.0.0.1:1080
  username: anon
  password: bro
  disableUDP: true

http:
  listen: 127.0.0.1:8080
  username: qqq
  password: bruh
  realm: martian

tcpForwarding:
  - listen: 127.0.0.1:8088
    remote: internal.example.com:80

udpForwarding:
  - listen: 127.0.0.1:5353
    remote: internal.example.com:53
    timeout: 50s

tcpTProxy:
  listen: 127.0.0.1:2500

udpTProxy:
  listen: 127.0.0.1:2501
  timeout: 20s

tcpRedirect:
  listen: 127.0.0.1:3500

tun:
  name: "hytun"
  mtu: 1500
  timeout: 1m
  address:
    ipv4: 100.100.100.101/30
    ipv6: 2001::ffff:ffff:ffff:fff1/126
  route:
    strict: true
    ipv4: [ 0.0.0.0/0 ]
    ipv6: [ "2000::/3" ]
    ipv4Exclude: [ 192.0.2.1/32 ]
    ipv6Exclude: [ "2001:db8::1/128" ]
