歇斯底里hysteria节点搭建教程(带路由功能)-端口跳跃缓解QoS 极致节点提速篇


分类:建站与VPS       作者:Caq98i       发布时间:2023-06-18       更新时间:2024-03-25 阅读量:2140    


本文介绍歇斯底里hysteria节点搭建,通过端口跳跃缓解QoS,相较于普通的Vless节点,hysteria节点可以极大的提升节点速度,即便是普通的线路,晚高峰时也能流畅观看2K视频。本教程服务端使用sing-box搭建,支持配置路由分流与二级代理,windows客户端使用v2rayN,安卓客户端使用了clash-Meta,并提供了clash的负载均衡配置模板。



准备工作:

vps一台,已安装docker(Linux系统Docker安装教程),已创建了一个docker网络(在本教程中,所有的容器都将放置在这个网络中):

docker network create --subnet 192.168.18.0/24 --gateway 192.168.18.1 anqiqii

在本教程中创建了一个名为anqiqii的网络,并确定网关为192.168.18.1(宿主机的内网IP)本教程只完整介绍在ipv4网络下hysteria节点的搭建与连接

 

可能有用:

racknerd $11一年VPS(3000 GB流量每月,1Gbps) 了解更多

$36.00一年VPS 特惠三网直连线路VPS(Los Angeles, China Optimised, 9929&CMIN2)

$49.99一年VPS 特惠CN2线路

$169.99一年VPS 高端CN2 GIA线路  了解更多

域名注册 一美元优惠码:c34aq98i  了解更多

 

歇斯底里2已经推出了并得到了各大客户端的支持,可以查看这个进行部署:

歇斯底里2节点搭建教程(hysteria2)-使用docker singbox搭建歇斯底里2科学上网节点

 

服务端配置


① 创建一个/etc/sing-box文件夹(用于放置sing-box的配置文件,路径自行指定)

 

② 进入这个文件夹(cd 命令),使用如下两条命令在当前目录生成私钥与证书(为方便起见,这里只演示使用自签证书):

openssl ecparam -genkey -name prime256v1 -out ca.key
openssl req -new -x509 -days 36500 -key ca.key -out ca.crt -subj "/CN=bing.com"

# 自签证书,域名随便指定,要多高大上都行,但不能是被墙的,比如:google.com

 

③ 在 /etc/sing-box 目录下,创建一个配置文件(config.json),文件模板见:sing-box-conf(解压密码为:caq98i.toponeto221on)

sing-box配置文件修改说明:

第9行:"listen_port": 5666,   # 修改为实际部署hysteria的端口

第16、17行:根据服务端实际情况修改

第18行:"obfs": "dfhnefk2345",     # 指定一个复杂的字符串,与客户端配置保持一致

第22行:"server_name": "example.com",        # 指定一个域名,与证书域名匹配

第24、25行:指定证书路径与私钥路径

第38~46行配置了一个socks5的出站,根据代理提供商给的配置填写(一般住宅ip给的为socks5的代理)

第50~55行配置了一个路由规则,在本例中,只要是域名结尾为.google.com都会匹配到这条规则,走标签为socks-out的出站(也就是第38~46行配置的socks5的出站)

如果所有流量都是直接出站,可直接删除第38~46行和第50~55行

 

④ 拉取sing-box最新版官方镜像并启动:

docker run -d \
  --network anqiqii --ip 192.168.18.5 -p 5666:5666/udp \
  --restart unless-stopped --name=singbox \
  --volume /etc/sing-box/:/etc/sing-box/ \
  gzxhwq/sing-box

这里进行了udp的端口映射,具体端口与配置文件中的保持一致。

⚠ 如果配置文件不正确可能导致singbox容器无法启动,可以将参数-d改为-it,这样可以查看容器启动时的错误信息,便于排查错误。

 

⑤ 添加端口转发规则(请关闭所有防火墙):

# IPv4
iptables -t nat -A PREROUTING -i eth0 -p udp --dport 20000:50000 -j DNAT --to-destination :5666
# IPv6
ip6tables -t nat -A PREROUTING -i eth0 -p udp --dport 20000:50000 -j DNAT --to-destination :5666

此规则表示将20000:50000端口的udp协议的请求全部转发到5666端口

补充:

iptables -t nat -nL --line      # 查看当前的ipv4网络的规则
iptables -t nat -D PREROUTING 3    # 删除第三条规则

 

客户端配置


文件hysteria.json为使用hysteria内核的客户端配置,修改说明:

第2行:"server": "192.168.1.99:20000-50000",       # 修改为服务器的ip地址,端口范围为服务端端口范围的子集(服务端配置第⑤步)

第3行:"obfs": "dfhnefk2345",     # 与服务端配置保持一致

第4、5行:与运营商给的网络带宽保持一致,可以小于运营商给的带宽,但不能大于

第6行:如果是使用的自签证书,请设置为true

 

然后使用v2rayN添加一个自定义服务器:(core类型选hysteria,这里没有配新图)

PS:最新版的v2rayN已经改用sing-box内核了,支持直接添加hysteria协议,无需采用这里介绍的“添加自定义配置服务器”了。

 

文件clash-meta.yaml为使用clash meta内核的客户端配置,修改说明:

第6、7行:修改端口和密码(和内核的api,一般用不到,但为了安全请修改)

第9、10行:配置了两个hysteria节点,都是端口跳跃节点,用于缓解QoS,ports根据服务端的开放的端口进行配置,显然这里配置的端口范围为服务端端口的子集。up和down根据客户端实际带宽填写,由于本教程使用的是自签证书所以skip-cert-verify设置为了true。

⚠空格是yaml文件语法的一部分,请注意不要漏掉空格;clash的节点名不能重复

此配置模板默认是使用的轮询的方式进行的负载均衡(第15~17行),可自行更改顺序进行调整;"负载均衡-轮询"使用了两个节点(第41、42行,可自行添加更多的节点用于负载均衡)

 

然后使用v2rayN添加一个自定义服务器:(core类型选clash meta)

注:这里提供的clash-meta.yaml配置文件,当然和clash更为搭配:

clash使用教程——clash verge(clash meta内核)新手使用教程

 

安卓客户端可以使用clash meta进行连接,下载地址:Releases · MetaCubeX/ClashMetaForAndroid

将修改好的clash-meta.yaml文件发送到Android设备,然后按照如下方式添加一个自定义配置:


捐赠通道,感谢!🦀🦀


          support a 🍕


留言与评论







限时特惠促销