系统要求
网关
honk 只能在 Linux 上以 root 身份运行。它会加载 eBPF 程序、创建 dae0 链路与 daens 命名空间并修改 sysctl,因此首次启动时请保留控制台等第二条管理通道。
- Linux 6.12 或更高版本。内核版本过低时,honk 会在挂载任何程序之前拒绝启动。
- 下列内核选项。桌面与服务器发行版通常已启用;OpenWrt、Armbian 与 VyOS 需要逐项检查。
pname(...)规则需要 cgroup v2。缺少 cgroup v2 时 honk 仍可启动,但按进程名分流不可用。- bpffs 挂载于
/sys/fs/bpf。 - CA 证书,例如
ca-certificates软件包。缺少时 honk 会以subscription network startup failed退出。 - 在
debug.2026.9.28.native-api.4之前的 honk 构建上使用geoip规则时,建议至少 512 MB 内存:早期 OpenWrt 测试在 256 MB VM 上更新 geodata 时发生 OOM。从该构建起,honk 将 geodata 更新流式写入磁盘。在 OpenWrt 上,请保留 procd 服务中的MIMALLOC_PURGE_DELAY=0。
uname -r
zcat /proc/config.gz 2>/dev/null || cat /boot/config-$(uname -r)
CONFIG_BPF=y
CONFIG_BPF_SYSCALL=y
CONFIG_BPF_JIT=y
CONFIG_CGROUP_BPF=y
CONFIG_NET_CLS_BPF=y|m
CONFIG_NET_SCH_INGRESS=y|m
CONFIG_NET_CLS_ACT=y
CONFIG_NET_NS=y
# Held-first-packet UDP (NFQUEUE, on by default) also needs:
CONFIG_NF_TABLES=y|m
CONFIG_NF_TABLES_INET=y
CONFIG_NETFILTER_NETLINK_QUEUE=y|m
CONFIG_NFT_QUEUE=y|m
系统未自动挂载 bpffs 时,执行:
sudo install -d -m 0755 /sys/fs/bpf
mountpoint -q /sys/fs/bpf || sudo mount -t bpf bpf /sys/fs/bpf
mountpoint /sys/fs/bpf
# To mount it at boot, add this line to /etc/fstab:
# bpf /sys/fs/bpf bpf defaults 0 0
honk 版本
- 只有 Glassyiris/honk
feat/native-api分支及其滚动debug发布版本的构建提供原生 API。在该分支上,构建时须显式启用native-api;发布与debug构建已包含此功能。doona beta.12 附带debug.2026.9.30.native-api.5(提交25377686)。从 beta.8 起,每个 doona 发行版的HONK-SOURCE.txt注明其 honk 标签与提交。 - daeuniverse/honk
main分支的构建没有原生 API。honk 会以unknown experimental setting拒绝所有native_api设置,访问/api与/ui/会返回 404。 feat/native-api分支的构建若未启用native-api功能,启用native_api时会以native-api feature is required阻止启动。- 早期的
feat/native-api构建可以更新地理数据,但不能设置来源。doona beta.8 和 beta.9 附带的构建两者都支持。
执行 honk-core --version 查看已安装二进制文件的版本;正在运行的版本请查看 doona 概览页的“引擎”卡片或侧边导航栏底部。
浏览器与构建
| 组件 | 要求 |
|---|---|
| 后端 | 实现 SOURCE.md 所钉契约并启用 API 监听的引擎 |
| 浏览器 | Chrome 或 Edge 120、Firefox 121、Safari 17 及以后。这些是 CSS 构建目标;JavaScript 构建目标是 ES2022。自动化测试使用 Chromium,CI 另加 WebKit |
| 构建 | 仅从源码构建 doona 时需要 Node ^22.18.0 || ^24.0.0 || >=26.0.0 与 pnpm 11.15.1;打包需要 GNU tar、gzip 与 sha256sum |