doona
系統需求
示範
繁體中文

系統需求

閘道器

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 結束。
  • 地理資料更新可能增加小型路由器的記憶體用量。honk 將更新串流寫入磁碟;在 OpenWrt 上使用 mimalloc 建置時,請保留 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_DEBUG_INFO_BTF=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|m
CONFIG_NFT_CT=y|m
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 版本

  • doona beta.19 的 honk-core 附件來自 Glassyiris/honk feat/native-api 標籤 debug.2026.10.9.native-api.2,提交為 eac5e0c5fba5078a7ff4517a3e3851e7fa0f4f8e。附件啟用需明確選擇的 native-api 建置功能,並內建 doona 0.1.0-beta.19。HONK-SOURCE.txt 記錄標籤與完整 honk 提交,並提供 honk 原始碼與對應 doona 原始碼的連結。設定 ui: embedded 後不需單獨安裝介面套件,也可以將 ui 指向外部目錄。
  • 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 與 Firefox Nightly 相容性測試。
建置 僅從原始碼建置 doona 時需要 Node ^22.13.0 || ^24.0.0 || >=26.0.0 與 pnpm 11.15.1;打包需要 GNU tar、gzip 與 sha256sum。
doona

doona 文件

繁體中文
doona 文件首次啟動若只使用直連,請按快速入門操作。 快速入門使用僅直連的 honk 組態啟動 doona 標準版,登入後驗證閘道器本機的流量。 標準版與 doona lite標準版用於管理組態與觀測流量。 系統需求 在 Debian 或 Ubuntu 上安裝在 Debian、Ubuntu 或其他使用 APT 的系統上,從 doona-web .deb 套件安裝 doona,並從同一個發行版本安裝 honk-core。 在 Fedora 或 RHEL 上安裝在 Fedora、RHEL 或其他使用 DNF 的系統上,從 .rpm 套件安裝 doona,並從同一個發行版本安裝 honk-core。 在 Arch Linux 上安裝在 Arch Linux 或其他使用 pacman 的系統上,從 .pkg.tar.zst 套件安裝 doona,並從同一個發行版本安裝 honk-core。 在 Gentoo 上安裝在本機 ebuild 儲存庫中,用 Portage 從 doona 的 ebuild 安裝 doona,並從同一個發行版本安裝 honk-core。 在 OpenWrt 上安裝在 OpenWrt 25.12 上,從發行套件或封存檔安裝 doona,並從同一個發行版本安裝 honk-core。 在其他系統上安裝在符合以下核心需求的 x86_64 或 aarch64 Linux 系統上,從發行封存檔安裝 doona 與 honk-core。 安裝詳解先安裝 honk 並撰寫組態,再安裝 doona 並啟動 honk。 最小組態本頁撰寫能啟動 honk 並提供 doona 的最小 honk 組態,然後手動啟動 honk 檢查組態。 服務管理本頁以 systemd 或 OpenWrt procd 服務的形式運作 honk:先建立一次服務,再列出啟動、停止、重新啟動、重載 honk 以及檢視日誌的命令。 為第一條連線設定路由從快速啟動繼續,保持 honk 運作並以管理員身分登入。 首次登入本頁在瀏覽器中開啟 doona,建立管理員帳戶,並檢查 doona 是否顯示正在運作的 honk。 介面導覽用導覽開啟頁面,用頂端列搜尋或重新整理,用分頁切換檢視。 觀測流量用「活動」與「系統狀態」查看引擎健康,用「連線」「分流」與「DNS」檢查流量。 路由、節點與規則策略管理群組選擇與成員。 組態與設定「組態」頁讀取、驗證並套用 honk 的設定檔。 常見操作本頁介紹標準版;doona lite 請參閱 doona lite。 功能各項功能的前提條件與操作被停用的原因,見功能啟用條件。 doona litedoona lite 為初學者提供較小的介面,用於編輯 honk 組態。 連線 doona lite將 doona lite 連線至 honk 原生 API,或在沒有後端時開啟示範。 doona lite 常見操作使用 doona lite 匯入資源並編輯 honk 組態。 組態參考本頁列出 doona 涉及的 honk DAE 設定、預設值及生效方式。 doona 可以修改什麼doona 透過不同的控制項修改組態來源、執行期狀態、持久儲存的地理資料設定和瀏覽器偏好。 功能啟用條件在表中找到你要使用的標準版功能,再按對應章節檢查前提並啟用。 疑難排解 開發送出 pull request 前先讀 CONTRIBUTING.md。