戰未來十年!《第四章》關鍵設定筆記 (VLAN & HA)
好的,硬體只是「骨架」,軟體設定才是「神經」。這一章,我們要讓網路「活」起來,並在「安全」與「便利」之間,劃出一條完美的界線。
好的,硬體只是「骨架」,軟體設定才是「神經」。這一章,我們要讓網路「活」起來,並在「安全」與「便利」之間,劃出一條完美的界線。
第四章:關鍵設定筆記 - 讓 VLAN 與 Home Assistant 完美協作
我的機櫃 (18U) 已經就位,UDM-SE 和 TVS-h674 的風扇聲正譜出第一首交響曲。但現在,它們都還只是「孤島」。
是時候進入 UniFi 控制器,編織我的網路神經了。這一步將決定誰能與誰對話,這也是我 10G 影音內網的「安全基石」。
我的機櫃 (18U) 已經就位,UDM-SE 和 TVS-h674 的風扇聲正譜出第一首交響曲。但現在,它們都還只是「孤島」。
是時候進入 UniFi 控制器,編織我的網路神經了。這一步將決定誰能與誰對話,這也是我 10G 影音內網的「安全基石」。
1. UDM-SE:用 VLAN 建立數位護城河
我的第一項任務,就是執行「第一章」的藍圖,在 UDM-SE 上建立我的「數位城堡」。
如果你是 UniFi 新手,這個介面非常直觀:
登入 UDM-SE: 透過 unifi.ui.com 或 192.168.1.1 登入。
修改預設網路 (Default):
導航至 設定 (Settings) > 網路 (Networks)。
點選 Default (預設) 網路。
(重要) 我不喜歡 192.168.1.x 網段。我將它重新命名為 Trusted,並將 IP 網段改為 192.168.10.1/24。
這裡就是我的「皇室內城」(VLAN 10)。
建立 IoT 網路 (VLAN 20):
點選 Create New Network。
Network Name (名稱): IoT
VLAN ID (關鍵): 20
Gateway/Subnet (IP 網段): 192.168.20.1/24
(Pro-Tip) 在「Advanced」中,我關閉了「IGMP Snooping」和「mDNS」,因為我不希望 IoT 設備的垃圾廣播封包污染我的網路。
這裡就是我的「隔離廣場」。
建立訪客網路 (VLAN 30):
再次點選 Create New Network。
Network Name: Guest
VLAN ID: 30
Gateway/Subnet: 192.168.30.1/24
(關鍵) 網路類型選擇 Guest Network。UniFi 會自動幫你建立「客戶端隔離」和「禁止存取內網」的防火牆規則,省時省力。
防火牆呢? UniFi 預設的防火牆規則是「VLAN 互不相通,但全部允許存取 Internet」。這正是我要的!
但這也帶來了 Home Assistant (HA) 玩家的終極難題...
我的第一項任務,就是執行「第一章」的藍圖,在 UDM-SE 上建立我的「數位城堡」。
如果你是 UniFi 新手,這個介面非常直觀:
登入 UDM-SE: 透過
unifi.ui.com或192.168.1.1登入。修改預設網路 (Default):
導航至
設定 (Settings)>網路 (Networks)。點選
Default (預設)網路。(重要) 我不喜歡
192.168.1.x網段。我將它重新命名為Trusted,並將 IP 網段改為192.168.10.1/24。這裡就是我的「皇室內城」(VLAN 10)。
建立 IoT 網路 (VLAN 20):
點選
Create New Network。Network Name (名稱):
IoTVLAN ID (關鍵):
20Gateway/Subnet (IP 網段):
192.168.20.1/24(Pro-Tip) 在「Advanced」中,我關閉了「IGMP Snooping」和「mDNS」,因為我不希望 IoT 設備的垃圾廣播封包污染我的網路。
這裡就是我的「隔離廣場」。
建立訪客網路 (VLAN 30):
再次點選
Create New Network。Network Name:
GuestVLAN ID:
30Gateway/Subnet:
192.168.30.1/24(關鍵) 網路類型選擇
Guest Network。UniFi 會自動幫你建立「客戶端隔離」和「禁止存取內網」的防火牆規則,省時省力。
防火牆呢? UniFi 預設的防火牆規則是「VLAN 互不相通,但全部允許存取 Internet」。這正是我要的!
但這也帶來了 Home Assistant (HA) 玩家的終極難題...
2. 靈魂拷問:HA (Trusted) 如何命令 ESPHome (IoT)?
問題來了:
我的 N100 HA 主機 在 Trusted 區 (192.168.10.x)。
我的 ESPHome 智慧插座在 IoT 區 (192.168.20.x)。
HA 的「自動探索 (Auto-Discovery)」是依賴 mDNS 廣播,而廣播無法跨越 VLAN。
結果: 我的 HA 主機,變成了一個「瞎子」,它完全看不到 IoT 區的任何設備。
網路上充斥著各種複雜的解法:安裝 mDNS 中繼器、設定 IGMP Proxy... 這些都會污染我的 Trusted 網路,違背了我「安全隔離」的初衷。
真正的答案,其實既簡單又優雅。
問題來了:
我的
N100 HA 主機在Trusted區 (192.168.10.x)。我的
ESPHome智慧插座在IoT區 (192.168.20.x)。HA 的「自動探索 (Auto-Discovery)」是依賴
mDNS廣播,而廣播無法跨越 VLAN。
結果: 我的 HA 主機,變成了一個「瞎子」,它完全看不到 IoT 區的任何設備。
網路上充斥著各種複雜的解法:安裝 mDNS 中繼器、設定 IGMP Proxy... 這些都會污染我的 Trusted 網路,違背了我「安全隔離」的初衷。
真正的答案,其實既簡單又優雅。
3. 解法:「DHCP 靜態租約」的精準打擊
我們不需要讓 HA「看見」所有 IoT 設備,我們只需要 HA「知道」它想控制的設備在哪裡。
正確的連線流程是:HA 主機 (Client) 主動去連線 ESPHome 設備 (Server)。而我們預設的防火牆規則是「Trusted -> IoT = 允許」,所以連線本身沒有被阻擋。
唯一的障礙是:HA 不知道 ESPHome 設備的 IP。
我的標準作業程序 (SOP) 如下:
我們不需要讓 HA「看見」所有 IoT 設備,我們只需要 HA「知道」它想控制的設備在哪裡。
正確的連線流程是:HA 主機 (Client) 主動去連線 ESPHome 設備 (Server)。而我們預設的防火牆規則是「Trusted -> IoT = 允許」,所以連線本身沒有被阻擋。
唯一的障礙是:HA 不知道 ESPHome 設備的 IP。
我的標準作業程序 (SOP) 如下:
步驟一:ESPHome 設備 (YAML 設定)
保持最簡潔。我的 ESPHome .yaml 檔中什麼都不用加,wifi: 區塊就只有 ssid 和 password。
它會自動使用 DHCP,這是最乾淨的管理方式。
YAML# 保持 YAML 乾淨,使用 DHCP
wifi:
ssid: "MyHome-IoT-SSID"
password: "My-IoT-Password"
# ... (api:, sensor: 等其他設定) ...
保持最簡潔。我的 ESPHome
.yaml檔中什麼都不用加,wifi:區塊就只有ssid和password。它會自動使用 DHCP,這是最乾淨的管理方式。
# 保持 YAML 乾淨,使用 DHCP
wifi:
ssid: "MyHome-IoT-SSID"
password: "My-IoT-Password"
# ... (api:, sensor: 等其他設定) ...
步驟二:UDM-SE (指派固定 IP)
這才是核心。我讓 ESPHome 設備連上 IoT Wi-Fi。
我登入 UDM-SE 控制台,在 Client Devices 列表中找到這台剛連上線的 ESPHome 設備。
點選它 > Settings (設定)。
啟用「Fixed IP (固定 IP)」。
我手動指派一個 IoT 網段的 IP 給它,例如 192.168.20.50。
UDM-SE 會將這個 IP 永久綁定在這台 ESPHome 設備的 MAC 位址上。
這才是核心。我讓 ESPHome 設備連上
IoTWi-Fi。我登入 UDM-SE 控制台,在
Client Devices列表中找到這台剛連上線的 ESPHome 設備。點選它 >
Settings (設定)。啟用「Fixed IP (固定 IP)」。
我手動指派一個
IoT網段的 IP 給它,例如192.168.20.50。UDM-SE 會將這個 IP 永久綁定在這台 ESPHome 設備的 MAC 位址上。
步驟三:Home Assistant (手動新增整合)
現在,我知道我的 ESPHome 設備「永遠」都會在 192.168.20.50 這個地址。
我回到 HA 主機 (192.168.10.x)。
進入 設定 > 裝置與服務 > 新增整合。
搜尋 ESPHome。
在跳出的「主機 (Host)」欄位中,我不再依賴自動探索,而是手動輸入:192.168.20.50
按下「提交」。
砰!連線成功!
現在,我知道我的 ESPHome 設備「永遠」都會在
192.168.20.50這個地址。我回到 HA 主機 (
192.168.10.x)。進入
設定>裝置與服務>新增整合。搜尋
ESPHome。在跳出的「主機 (Host)」欄位中,我不再依賴自動探索,而是手動輸入:
192.168.20.50按下「提交」。
砰!連線成功!
結論:安全與便利的完美平衡
這套 SOP 實現了「最佳實踐 (Best Practice)」:
HA (Trusted):192.168.10.x
ESPHome (IoT):192.168.20.x
連線:HA 主動連線 192.168.20.50,防火牆 (Trusted -> IoT) 允許。
安全:ESPHome 無法主動連線我的 NAS (192.168.10.x),防火牆 (IoT -> Trusted) 阻擋。
我不需要複雜的防火牆「開孔 (Pinhole)」或 mDNS 中繼器。我只用了最基礎的「DHCP 靜態租約」和「手動新增整合」,就完美實現了「單向控制、反向隔離」的終極安全架構。
(下一章:最終章:18U 機櫃巡禮 & 未來展望)
這套 SOP 實現了「最佳實踐 (Best Practice)」:
HA (Trusted):
192.168.10.xESPHome (IoT):
192.168.20.x連線:HA 主動連線
192.168.20.50,防火牆 (Trusted -> IoT) 允許。安全:ESPHome 無法主動連線我的 NAS (
192.168.10.x),防火牆 (IoT -> Trusted) 阻擋。
我不需要複雜的防火牆「開孔 (Pinhole)」或 mDNS 中繼器。我只用了最基礎的「DHCP 靜態租約」和「手動新增整合」,就完美實現了「單向控制、反向隔離」的終極安全架構。
(下一章:最終章:18U 機櫃巡禮 & 未來展望)
留言
張貼留言