RFC 9726 物聯網(IoT)裝置使用 DNS 的營運考量

隨著物聯網(IoT)設備的快速普及,越來越多的裝置被連接到網際網路上。這些設備常常依賴 IP 位址與網域名稱系統(DNS)進行通訊與服務存取。然而,當網路營運商部署「製造商使用描述」(MUD,RFC 8520)以控管這些裝置的網路存取行為時,DNS 的使用方式也變得愈發關鍵。RFC 9726(2025年3月發佈)正是針對這項挑戰提出實務建議與營運考量。

為何關注 IoT 裝置的 DNS 使用?

IoT 裝置多數是封閉系統,使用固定程式碼與預設通訊模式。若裝置使用 IP 位址進行通訊,一旦製造商或服務端的 IP 有變化,設備就可能無法正常運作。而使用 DNS 名稱則可提升彈性與可維護性。

然而,DNS 查詢也可能被攻擊者利用,或因查詢過度導致網路資源耗盡。因此,MUD 檔案在設計時,必須對 DNS 的使用有謹慎的考量。

MUD 與 DNS 的整合

RFC 8520 定義的 MUD 框架,讓設備能描述其需要連線的網域或伺服器。例如,一台智慧冷氣機可能只需要連線至 api.coolmaker.com。在 MUD 檔案中描述這樣的 DNS 名稱,可讓網管設備根據政策自動建立安全的流量規則。

RFC 9726 建議如下:

1. 始終使用 DNS

最重要的建議是:避免在任何協定中使用 IP 位址字串。應始終使用 DNS 名稱。


2. 使用製造商控制的 DNS 主名稱

第二個建議是:使用由製造商自己管理的 DNS 區域中的主名稱。這些名稱可以設成別名(alias,參見 [RFC9499] 第 2 節),指向實際的服務系統。

理想上,每個邏輯功能應有一個獨立的 DNS 名稱,以便在 MUD 檔案中可以開啟或關閉不同的通訊規則。

以往在憑證中使用大量別名成本高昂,但現在不再是問題。市面上也有許多通用的萬用字元憑證(wildcard certificate)可使用,可涵蓋無限多的 DNS 名稱。


3. 使用穩定 DNS 名稱的內容傳遞網路(CDN)

當 DNS 別名指向 CDN 時,應優先選擇 DNS 名稱穩定的 CDN,這些名稱會導向經過適當負載平衡的目標伺服器。

若 CDN 採用極低 TTL(存活時間)的 DNS 回應,MUD 控制器可能無法取得與 IoT 裝置相同的回應結果。但若 CDN 回傳一組固定的 A/AAAA 記錄(只是順序不同以調整效能),這樣的設計會更加穩定可靠。


4. 請勿使用針對客戶端調整的 DNS 回應

[RFC7871] 說明了 edns-client-subnet(ECS)這項 EDNS0 選項,並說明授權 DNS 伺服器可能會根據發出查詢的裝置位置,給予不同的回應(例如提供較近的伺服器 IP 位址)。

但當 MUD 控制器查詢 DNS 時,若回應與裝置實際收到的不同,將導致規則失效或誤判

雖然 MUD 控制器理論上可以使用 ECS 來模擬裝置的查詢環境,但實務上可能困難重重,例如:

  • IoT 裝置與 MUD 控制器在不同網路

  • 防火牆行為不同

  • 使用不同的 DNS 遞迴伺服器

  • DNS 基礎設施忽略 ECS

如果 DNS 回應僅是重新排列結果順序(例如把最近的 IP 放第一位),且 MUD 控制器能判定這份清單是完整的,那仍可接受。

但考量上述問題,強烈建議:不要使用根據客戶端位置調整的 DNS 回應


5. 優先使用 DHCP 或路由器廣播所提供的 DNS 伺服器

IoT 裝置在做 DNS 查詢時,應優先使用 DHCP 或 Router Advertisement(RA)中提供的 DNS 伺服器(參見 [RFC8106])。

IETF 的 Adaptive DNS Discovery(ADD)工作小組已發表 [RFC9462] 與 [RFC9463],說明裝置如何找到本地提供的安全/私有 DNS 伺服器。

不建議使用公共 DNS 解析器(不論是 Do53、DoQ、DoT 還是 DoH)。

某些製造商希望使用公共 DNS 做為備援,避免因在地設定錯誤導致查詢失敗。但如第 6.4 節所述,公共 DNS 可能回傳與本地不同的結果,這將導致 MUD 規則不正確。

因此建議:僅在當地 DNS 伺服器完全無回應,且連續多次查詢皆失敗時,才可作為例外情況使用公共解析器。且必須定期重新檢查當地 DNS 狀況。

最後,如果裝置將可能使用非本地 DNS 伺服器,那麼:

    • 這些伺服器的 IP 位址必須被列入 MUD 檔案的允許清單中

    • 也需註明使用的連接埠號(例如 53、853(DoT)、443(DoH))

安全與營運的平衡

雖然使用 DNS 提升了彈性與易管理性,但也引入潛在風險,包括中繼攻擊、DNS 遭篡改、過度查詢造成 DoS 等。因此,營運商在允許 DNS 存取時應採取多重防禦措施,如 DNS-over-TLS、查詢速率限制、黑名單比對等。

同時,IoT 裝置製造商也應遵循最佳實務,包括明確定義裝置的 DNS 使用情境,定期更新 MUD 檔案,並遵守隱私與安全原則。


結語:

RFC 9726 為 IoT 裝置與 DNS 整合提供了重要指引。透過妥善設計的 MUD 描述檔與合理的 DNS 使用策略,網路營運商不僅能提升 IoT 環境的安全性,也能更有效地管理大量裝置的網路行為。TWNIC 建議有部署 IoT 的單位,深入了解並評估 RFC 9726 所述之建議,以打造更安全、更穩定的智慧網路環境。

更多資訊:
RFC 9726 原文:https://www.rfc-editor.org/rfc/rfc9726
RFC 8520 原文:https://www.rfc-editor.org/rfc/rfc8520

Scroll to Top