智能家居用 VLAN 仲未夠:port isolation 點擋橫向通訊
3C 產品

智能家居用 VLAN 仲未夠:port isolation 點擋橫向通訊

圖片:via XDA Developers — https://www.xda-developers.com/stopped-isolating-smart-home-devices-and-started-isolating-their-ports-instead/
TechLab 編輯部(譯)·

隔開有線裝置幾實用,但設錯 uplink 隨時令 Matter、HomeKit 同 Chromecast 失聯

XDA 作者 Joe Rice-Jones 最近改咗屋企網絡設定:智能家居裝置繼續放喺獨立 VLAN,再喺 managed switch 開 port isolation,限制接駁唔同實體 port 嘅裝置互相通訊。個方向有保安價值,尤其係駁住 IP Cam、門鐘、舊款家居 hub 呢類長期唔知仲有冇更新嘅硬件。不過呢招食拓撲多過食設定,撳低一個 isolation 開關,未必真係隔到你心目中嗰批裝置。

VLAN 管網段,port isolation 管同一部 switch

VLAN 會拆開 Layer 2 broadcast domain,再由 router 或 Layer 3 switch 處理跨網段流量。只要 firewall 規則寫得啱,IoT VLAN 就掂唔到主網嘅 NAS、電腦同工作文件。不過十幾件 IoT 裝置若果全部放喺同一個 VLAN,佢哋通常仍可直接交換 unicast、broadcast 同 multicast 流量;其中一件失守,惡意程式仍有機會掃描或攻擊同網段其他裝置。

Port isolation 就喺同一部 switch 入面再落閘。以 Cisco protected port 嘅做法為例,受保護 port 之間唔會互相轉發 Layer 2 unicast、multicast 同 broadcast,但仍可同普通 port 通訊;TP-Link 部分型號就要逐個 isolated port 指定 forwarding port list。兩間廠個概念相近,實際選項同方向規則未必一樣,所以唔可以照搬其他型號教學。

Firewalla Switch SE managed switch 機身同前置網絡接口

圖片:Firewalla

uplink 揀錯,隔離效果即刻穿窿

最常見拓撲係 router 或 firewall 接去一個普通 uplink port,IP Cam、家居 hub同其他有線 IoT 就各自接 isolated port。咁樣各部裝置仍可搵 gateway、DHCP、DNS 同上網,但唔可以直接撞入隔籬 port。若果 NAS 或電腦都插喺獲准轉發嘅普通 port,isolated 裝置亦可能照樣接觸到佢;跨 VLAN 保護仍然要靠 router、firewall 或 ACL,port isolation 本身做唔到。

另一個容易誤會嘅位係,擋咗同網段直接通訊,唔代表 switch 會自動叫 router 幫手轉送。裝置見到目標 IP 屬於自己 subnet,正常會先用 ARP 或 IPv6 Neighbor Discovery 直接搵對方;呢批封包俾 isolation 擋住之後,連線多數就此失敗。要保留指定本地功能,得靠廠商支援嘅 ACL、proxy、gateway 設計或服務中介,唔係加一條普通 firewall allow rule 就一定救得返。

一個 AP port 入面有三十件裝置,switch 分唔開

呢招最啱逐件插線嘅 IP Cam、門禁、printer 或獨立 hub。大量智能燈膽、插蘇同喇叭都經同一個 Wi‑Fi AP 上網,switch 只可以對成個 AP 所接嘅實體 port落規則,管唔到 AP 內部每個無線 client;同一 AP 嘅裝置仲可能直接喺無線層交換流量,封包根本未行到 switch。將 AP 當 uplink 可以保住日常連接,但同時代表呢批 Wi‑Fi IoT 冇食到 switch port isolation 嘅橫向保護。

想隔開無線裝置,就要睇 AP 有冇 client isolation/AP isolation。呢類功能會擋同一 AP 或 SSID 嘅 client 互相通訊;guest Wi‑Fi 通常仲會配合 VLAN 同 firewall,限制訪客掂到其他網段。三者處理嘅位置唔同:port isolation 管實體 switch port,client isolation 管無線 client,VLAN 加 firewall 就管網段之間可以行咩流量。屋企同時有有線 IP Cam 同 Wi‑Fi 插蘇,往往要幾層一齊設。

Matter、HomeKit 同 Chromecast 最易先出事

隔得太盡,最先消失通常係裝置探索。Apple Bonjour 用 mDNS 喺本地 link 搵服務;Matter commissioning 同日常 operational discovery 同樣會用 mDNS,Matter 本身亦會用 IPv6 multicast。Chromecast 更直接:Google 官方叫用家關掉 AP/client isolation,否則設定、搵機同投放都有可能失敗。HomeKit、AirPlay、printer、Sonos 或其他靠 mDNS/multicast 嘅功能,都可能出現 app 睇唔到裝置、手機分享掣冇目標,但裝置本身仍然上到網嘅古怪情況。

Home Assistant、Matter controller、Thread border router 或 mDNS reflector 要擺喺邊個 port,亦要跟實際設計決定。佢哋通常要接觸多個受管裝置,放入完全 isolated port 好易自斷手腳;放去 forwarding/promiscuous 類 port 又要另外限制佢可以接觸咩資源。mDNS reflector 可以幫部分跨 VLAN 探索,但對同一 subnet 入面俾 port isolation 擋住嘅流量,效果要睇產品點實作,唔應該當萬用補丁。

呢招值得開,但先畫清楚線路圖

Port isolation 對逐件插線嘅 IoT 好實際,設定量亦少過為每部裝置開獨立 VLAN。不過 XDA 作者呢套係單一家庭網絡經驗,唔代表所有 managed switch 都有相同行為。開之前最好列低每個 port 接咩、邊個係 gateway uplink、邊部機要主動搵 IoT,再逐項測試 DHCP、DNS、HomeKit、Matter、Chromecast 同本地錄影。若果大部分裝置都藏喺同一個 AP 後面,優先研究 AP client isolation、VLAN 同 firewall,會貼近實際威脅過淨係改 switch port。


參考來源

本文根據原文及公開資料整理;資料有出入時,以原文及官方資料為準。

分享:WhatsAppThreadsTelegramFacebook