Home

打造完美的 Mac Mini 家庭伺服器

Mac Mini?

我主要在 Mac Mini 上以橋接模式部署了幾台虛擬機,一條網路線連接到 Router。擁有 10Gb Ethernet 的網路埠,儘管有多個虛擬機的網路承載,但仍然避免物理層的傳輸瓶頸。

我在 MacOS 裡運行了 Tailscale.app 作為 Exit Node,作為外出 Macbook 規避網路審查,同時具備訪問本地網路的能力。

Tips:

  • 開啟 Content Caching,可以讓其作為本地網路的緩存伺服器。
  • 開啟 Automatically log in,突發斷電恢復後能夠自動進入系統。
  • 設定 Turn display off on battery when inactive > Never,避免伺服器休眠。

我選擇了 UTM 運行虛擬機,承載我的使用場景。目前只有這三個映像運行,皆為橋接模式。

Home Assistant Operating System 可以將非認證產品接入 HomeKit。同時透過 Cloudflared add-on 隧道公網暴露服務可以遠程訪問控制面板。

OpenWrt 作為「規避網路審查的 Gateway」,被 Router 的 lan 介面作為預設 Gateway、DNS 由 DHCP 下發。iot_lan 介面則下發 Router IP 作為 Gateway IP,因為 IoT 裝置不需要也不應該直接接入家庭網路,所以給他們分配一個獨立的介面。

Ubuntu 24.04.3 LTS Minimal 運行 Docker 和邊緣服務。例如 Dashboard、qBittorrent 等等。 特殊的是,qBittorrent 需要繞過「規避網路審查的 Gateway」,否則會影響連通性,我使用了 IPvlan 設定了獨立的 Docker 網路 Stack,Gateway 指向 Router 而不是「繞過規避網路審查的 Gateway」。

數據路徑

先說明 Router 的設定。我有 laniot_lan 兩個介面。Wireless 中提供一個特殊的 2.4 GHz Wi-Fi 專門給物聯網設備,網路接口只使用 iot_lan

lan:192.168.10.1

iot_lan:192.168.101.1

使用感受

透過 UTM 實現的虛擬化架構,保證了穩定性和性能。兼顧了極簡、安靜、省電、穩定、性能。同時讓管理變得方便。

這種不僅確保了單一服務崩潰不會影響整體網路(比如某個 Docker 壞了不會影響上網、物聯網),還利用了 M-Chip 省電的特性與 10Gb Ethernet 的物理優勢。