Hysteria 是一个功能丰富的,专为恶劣网络环境进行优化的网络工具(双边加速),比如卫星网络、拥挤的公共 Wi-Fi、在中国连接国外服务器等。 基于修改版的 QUIC 协议。此协议目前经测试专用于突破各种防火墙的封锁,但是部分地区有QoS所以可能效果并不是很好。
  目前Hysteria已经逐步趋于稳定,开发者升级到了1.0.1版本正式版,此版本功能并不多,暂时没有太多的客户端支持,安卓上面只有一个二进制的核心和SagerNet的插件支持,win上也需要用cmd命令行启动后台服务。
  Hysteria 需要一个TLS证书,这个证书是必须的。如果要签发正规的证书还需要一个域名。这便是许多人搭建的瓶颈。另外,一小部分IDC怕被DDoS打到怀疑人生,会禁止大量不识别流量而无法正常使用Hysteria,大部分服务商hysteria表现均正常。截至文章发布,以下机场无法使用,报日志表现为[error:timeout: no recent network activity] Failed to initialize client。

  • digitalocean : 有时可用,有时不可用,防火墙规则深不可测,它的floating ip有着更为严格的规则。
  • vultr:和DigitalOcean表现一致
  • virmach:曾同地区电信可用,移动不可用。
  • aws: 当你使用ec2实例使用udp/wechat-video模式等udp模式时,会被aws认为是对外的udp攻击,收到警告邮件。
    限制UDP的服务商排雷列表【2022/02/20更新】

针对超高传速度进行优化

  如果要用 Hysteria 进行极高速度的传输 (如内网超过 10G 或高延迟跨国超过 1G),请增加系统的 UDP receive buffer 大小。
sysctl -w net.core.rmem_max=4000000
这个命令会在 Linux 下将 buffer 大小提升到 4 MB 左右。

  你可能还需要提高 recv_window_conn 和 recv_window (服务器端是 recv_window_client) 以确保它们至少不低于带宽-延迟的乘积。 比如如果想在一条 RTT 200ms 的线路上达到 500 MB/s 的速度,receive window 至少需要 100 MB (500*0.2)

路由器与其他嵌入式设备

  对于运算性能和内存十分有限的嵌入式设备,如果不是必须的话建议关闭混淆,可以带来少许性能提升。

  Hysteria 服务端与客户端默认的 receive window 大小是 64 MB。如果设备内存不够,请考虑通过配置降低。建议保持 stream receive window 和 connection receive window 之间 1:4 的比例关系。

部署及安装

github地址:https://github.com/HyNetwork/hysteria
配置相关说明在Wiki