Repository navigation
v0.8.0 · 崩了能自己回来 · 统计卡 · 上游不再依赖 gost
三件事:崩了能自己回来 · 看得到谁在占通道 · 上游不再依赖 gost
这一版是三块一起上的(v0.7.1 → v0.8.0)。
一、被外部结束 / 崩溃之后自动拉起(服务形态)
包装成 Windows 服务的机器(nethub.exe -service-install)以前被杀掉就一直是死的,没人知道。
现在服务形态会由 SCM 自动重启:5 秒后第一次、30 秒后第二次,而且带熔断 ——
如果程序是因为配置坏了"起来就崩",不会无限重启把客户的网络反复搞断。
日志里也会留一句"上次未正常退出(pid N)"并在托盘弹一条提示,不用去猜它是不是重启过。
GUI 形态(计划任务自启)没有这个保障:计划任务的失败重试对"进程被外部结束"实测不生效
(Task Scheduler 的语义限制,不是我们没做)。长期无人值守的机器本来就该用服务形态。
二、新的「统计」卡:回答"这段时间谁在占通道"
在「连接」页下半部分(没有新开页签,页签带不该长):
- 三组数字:连接数(含还开着的 / 失败)、流量(↑ 发送 ↓ 接收)、时长(这组数字覆盖了多久);
- 按目标与按应用两个维度各一张表(同一个连接两边都进,合计相等),
域名能认出来就并到域名那一行,点表头换列序; - 「复制」一下把整张表带走(制表符分隔,直接贴进表格);「清零」从头再数;
- 口径只有一个:累计(本程序启动以来)—— 与「链」页的累计、顶栏流量图同一个起点,
引擎重启不会清零(否则同一件事会有两个数)。
直连流量要算进来,得先在「连接」页打开「也统计直连流量的字节数」(关着时直连的包根本不进内核过滤器)。
三、上游协议扩展:内置更多协议,不再需要装 gost
以前上游只能是 socks5(+tls) / http(s) / socks4,要别的协议就得挂一个 gost 进程。
现在这些都在程序里了:
| 新增 | 写法 |
|---|---|
| 传输层 | +tls / +ws / +wss(只认两段:socks5+wss 对,socks5+ws+tls 错) |
| shadowsocks | ss://aes-256-gcm:口令@host:8388(传统 AEAD 四种 + 2022-blake3 三种,2022 的口令位置填 base64 的 PSK) |
| trojan | trojan://口令@host:443(天生 TLS) |
| VLESS | vless://uuid@host:443?security=tls&sni=…,也认 type=ws&path=/ws |
| VMess | vmess://<base64(json)> 分享链接直接粘,或 vmess://uuid@host:443?security=tls |
- xray 分享链接可以直接粘(
vmess://、vless://…?type=ws&security=tls)。 - 从聊天工具里粘来的链接没做 URL 编码也认(凭据里的
+/=?#、中文口令都能解析)。 - 所有新协议都与真服务端对测过(ws/tls/ss 用 gost,trojan/vless/vmess/ss2022 用 xray-core),
包括 110KB 分块、域名透传、凭据错、预热连接。
明确不做(写了会报错并告诉你怎么改,不会静默降级):VLESS 的 flow / Vision、REALITY / XTLS、
grpc / kcp / quic / h2 传输、VMess 的 alterId ≠ 0、shadowsocks 的老式流密码与 none/dummy、
ss2022 的多用户(EIH)与 UDP。
四、顺手修的
- DNS 接管自检不再误报:电脑从睡眠唤醒、或刚换过网络时,自检会把"那几秒的 DNS 空窗"
当成"我们把 DNS 答坏了"。现在按"我们到底发过包没有"归因、失败先复测 20 秒、
网络刚变 30 秒内跳过。 - 「统计」卡去掉了「本次运行 / 累计」的切换(只留累计),时长改成"这组数字覆盖了多久"。
- 若干界面文案与自检修正(上游提示里带括号的写法会让自检误判等)。
安装 / 升级
- 包:
NetHub.zip(不含任何配置与日志;把config.yaml.example复制成config.yaml填自己的上游) - 已经在用的:直接覆盖
nethub.exe(config.yaml保留),或者用「设置 → 关于 → 一键更新」。 - 回滚:
nethub.exe -rollback(旧程序保留为nethub.exe.old)。 - 一条 exe 两种形态,别混装:有人在用的机器用 GUI(界面里开「开机自启」→ 计划任务),
服务器 / 无人登录用服务形态(nethub.exe -service-install)。
已知边界
- UDP(QUIC 那一类)仍然只拦下不中继:本该走链的目标上的 HTTP/3 会被拦下并记一行
quic.block,
应用回落到 TCP(那条路仍归我们管);单条规则可勾「不拦 QUIC」放行。 - 只能 Windows x64;IPv6 主动不做(DNS 层把 AAAA 答空防应用绕过)。