介绍
Hysteria内核是什么?
Hysteria2 的内核是一个基于 QUIC 协议、深度定制了拥塞控制算法并伪装成标准 HTTP/3 流量的高性能代理协议。 它并非传统的“内核模块”或“内核空间程序”,而是一种应用层的传输协议实现。其核心优势在于通过“算法暴力”对抗网络丢包与抖动,同时利用 TLS 加密和流量特征伪装实现高度的抗审查性。
Hysteria原理是什么?
1. 基于 QUIC 协议
-
QUIC 原生支持多路复用。在 TCP 中,如果一个数据包丢失,后续所有数据都会被阻塞。而在 Hysteria2 中,一个流的丢包不会影响其他流,极大提升了高延迟/高丢包场景下的流畅度。
-
基于 TLS 1.3 的 QUIC 允许在首次握手时就发送数据,大幅降低了连接建立的延迟。
-
全链路加密:强制使用 TLS 1.3,所有传输内容(包括元数据)默认加密,不仅保护了数据隐私,也让流量根本特征变为加密的 UDP 流。
2. 激进的拥塞控制算法
-
Brutal 算法:这是 Hysteria 的特色算法。你可以直接在客户端指定一个带宽数值(例如 down: 100 mbps)。协议会无视网络丢包,直接用这个速度去发包。在网络环境较差(如高丢包率)时,这比传统 TCP 更能抢占带宽。
-
BBR 算法:作为 Brutal 的备选或补充,用于在不清楚具体带宽情况时进行自适应探测。
3. 传输机制:流与数据报
-
TCP over Stream:利用 QUIC 的双向流承载 TCP 连接。每个 TCP 连接对应一个 QUIC Stream,实现了多路复用。
-
UDP over Datagram:利用 QUIC 的不可靠数据报扩展来传输 UDP 包。由于 UDP 本身不要求可靠性,这样可以避免不必要的重传开销,适合游戏、VoIP 等场景。对于大包,协议内部还实现了碎片重组机制。
部署&使用
部署Hysteria2节点(hy2节点)
我这里以我在Akile上购买的香港VPS举例:
Akile是一家云服务提供商,主打高带宽、大流量和性价比高 注册链接:点此前往注册Akile
首先我们需要登陆VPS的SSH
然后我们先安装Hysteria2,在SSH中输入:
bash <(curl -fsSL https://get.hy2.sh/)等待出现 Congratulation! Hysteria 2 has been successfully installed on your server.

然后我们需要设置开机自启动,在SSH中输入:
systemctl enable hysteria-server.service安装成功后,我们需要生成一个自签证书(可选,也可以采用域名CA证书),在SSH中输入:
openssl req -x509 -nodes -newkey ec:<(openssl ecparam -name prime256v1) -keyout /etc/hysteria/server.key -out /etc/hysteria/server.crt -subj "/CN=bing.com" -days 36500 && sudo chown hysteria /etc/hysteria/server.key && sudo chown hysteria /etc/hysteria/server.crt
然后我们需要去生成一个配置文件,在SSH中输入:
cat << EOF > /etc/hysteria/config.yamllisten: :443 #监听端口
#使用CA证书#acme:# domains:# - a.com #你的域名,需要先解析到服务器ip# email: test@sharklasers.com
#使用自签证书#tls:# cert: /etc/hysteria/server.crt# key: /etc/hysteria/server.key
auth: type: password password: 123456 #设置认证密码
masquerade: type: proxy proxy: url: https://bing.com #伪装网址 rewriteHost: trueEOF如果你使用的是自签证书,则把使用自签证书下方的三行前的#号去除
如果你使用的是域名CA证书,则把使用CA证书下的四行前的#号去除
这里我们以自签证书为例(更简单快捷):

然后我们来气启动Hysteria服务,在SSH中输入:
systemctl start hysteria-server.service然后查看Hysteria服务状态,输入:(按q退出查看状态)
systemctl status hysteria-server.service
如果运行状态正常,且日志中提示Server up则代表服务已经正常启动了
如果你的日志中存在ERROR或者运行状态为failed,那么大概率是防火墙的问题,关闭你的防火墙即可
以ufw举例:
#关闭ufwufw disable
#重启Hysteria2systemctl restart hysteria-server.service
#或者开放80和443端口ufw allow 80/tcpufw allow 443/tcp在 Windows 客户端中使用hy2节点
V2rayN
如果你还没有V2rayN客户端,点击下方链接前往下载
https://github.com/2dust/v2rayN/releases/latest
因为目前V2rayN不自带Hysteria2核心,所以我们需要先前往下载Hysteria2核心,链接:
https://github.com/apernet/hysteria/releases
Hysteria2文档:https://v2.hysteria.network/zh/
选择合适的平台下载,然后我们将下载下来的Hysteria2核心放到V2rayN目录下的bin目录下的hysteria2里

然后我们创建一个配置文件:
server: ip:443 #服务器的ip+服务端口auth: 123456 #服务器配置的密码
bandwidth: up: 20 mbps #最大上传带宽 down: 100 mbps #最大下载带宽
tls: sni: yourdomain.com #使用自签时改为服务器配置的伪装网址 insecure: false #使用自签时需要改成true
socks5: listen: 127.0.0.1:1080http: listen: 127.0.0.1:8080然后我们回到V2rayN,选择添加自定义配置,地址改为你刚才创建的配置文件的路径,内核改为hysteria2

然后点击确定,然后开启代理模式,基本就可以正常使用了
Mihomo内核(新一代Clash替代品)
对于Mihomo内核来说,其原生就支持hy2节点
以下是目前主流的Mihomo内核的客户端
| 名称 | 是否还在更新 | 链接 |
|---|---|---|
| Clash Verge | 否 | https://github.com/MetaCubeX/clash-verge |
| Clash Verge Rev | 是 | https://github.com/clash-verge-rev/clash-verge-rev |
| Clash Party | 是 | https://github.com/mihomo-party-org/clash-party |
然后我们创建一个yaml配置文件:
proxies: - name: HY2节点 type: hysteria2 server: 111.11.11.111 #服务器IP port: 443 #服务器服务端口 password: 123456 #密码
sni: bing.com #伪装域名 skip-cert-verify: true #跳过证书验证
up: "20 Mbps" #最大上传 down: "100 Mbps" #最大下载然后在Mihomo内核客户端中导入配置文件即可
在 Android/IOS 客户端中使用hy2节点
FlClash - Android
地址:https://github.com/chen08209/FlClash
和 Windows 端的Mihomo内核客户端的配置文件相同
IOS
推荐使用Shadowrocket或Quantumult X
需通过非大陆区App Store购买下载,导入Hysteria2节点时选择对应协议类型即可
更多说明
服务端配置出站带宽
在服务端的配置文件中加入以下字段:
bandwidth: up: 100 mbps #对应客户端中的down down: 20 mbps #对应客户端中的up配置之后记得重启服务,然后就可以限制最大带宽了
速度对比
这里我们与传统节点协议Vless做对比:
Vless

Hysteria2
