FortiGate 架構大師課程

Level 3: Architect & Troubleshooting - 13. 虛擬網域 (VDOM)

一、核心概念 (Concept)

什麼是 VDOM?

一句話定義: VDOM (Virtual Domain) 是一種虛擬化技術,能將一台實體 FortiGate 防火牆切割成多個獨立運作的「邏輯防火牆」,彼此擁有獨立的路由表、策略與管理員權限。

生活化比喻:商務大樓與辦公室

想像一台實體 FortiGate 是一棟「商務大樓」 (Hardware)。

  • VDOM (虛擬網域):就是大樓裡分租給不同公司的「獨立辦公室」
  • 資源共享:大家共用大樓的水電、警衛與地基 (CPU, RAM, 硬碟)。
  • 獨立管理:A 公司 (財務部 VDOM) 的門禁卡不能開 B 公司 (訪客 VDOM) 的門;A 公司內部的裝潢與規定 (Policy & Routing) 完全由 A 公司老闆決定,B 公司無權干涉。
  • Root VDOM:就像是「大樓管委會」,負責管理公共區域與對外的主幹道。
二、運作原理 (Mechanism)

技術細節與運作模式

VDOM 的兩大模式

  • 1. Split-Task VDOM (任務分離模式)

    用於簡化管理。通常只分兩個 VDOM:一個專門管管理流量 (Management VDOM),另一個管數據流量 (Traffic VDOM)。這在電信商或高安全環境常見,確保管理通道不被DDoS影響。

  • 2. Multi-VDOM (多重虛擬網域模式)

    最常用的模式。將防火牆切分成多個獨立單位 (如:Root, Sales, HR, Guest)。每個 VDOM 就像一台獨立設備。

資源分配 (Global Resources)

由於所有 VDOM 共用硬體,必須設定資源配額 (Resource Quotas) 避免「鄰居吵雜效應 (Noisy Neighbor Effect)」。

關鍵設定參數:
  • Session Limit:最大連線數限制。
  • Policy Limit:防火牆策略數量限制。
  • CPU/Memory Use:通常是全域共用,但可透過設定保證特定 VDOM 的優先權。

封包處理流向

當封包進入 FortiGate 介面 (Interface) 時,系統會先檢查該介面屬於哪個 VDOM。封包隨後的路由查表 (Route Lookup)、策略匹配 (Policy Check) 與 UTM 掃描,都僅限於該 VDOM 範圍內進行,完全不會看到其他 VDOM 的資訊。

三、架構視覺化 (Visuals)

VDOM 邏輯拓撲與連線

圖一:實體 vs. 邏輯視角

flowchart TD subgraph Physical_View ["實體視角 (Physical HW)"] FG_Box["FortiGate Hardware"] Port1["Wan1"] Port2["Lan1"] Port3["Lan2"] Port4["DMZ"] FG_Box --- Port1 FG_Box --- Port2 FG_Box --- Port3 FG_Box --- Port4 end subgraph Logical_View ["邏輯視角 (VDOM Configuration)"] direction TB subgraph Root_VDOM ["Root VDOM (Management/Shared)"] v_wan1["Wan1"] end subgraph Office_VDOM ["Office VDOM"] v_lan1["Lan1 - Finance"] v_lan2["Lan2 - RD"] end subgraph Guest_VDOM ["Guest VDOM"] v_dmz["DMZ - Guest Wi-Fi"] end end Physical_View -.-> Logical_View Port1 -.-> v_wan1 Port2 -.-> v_lan1 Port3 -.-> v_lan2 Port4 -.-> v_dmz style FG_Box fill:#c02428,color:white,stroke:#333 style Root_VDOM fill:#ffe4e6,stroke:#c02428 style Office_VDOM fill:#dbeafe,stroke:#1e40af style Guest_VDOM fill:#d1fae5,stroke:#047857

圖二:跨 VDOM 通訊 (Inter-VDOM Link)

VDOM 之間預設是隔離的,若要通訊 (例如 Guest 借用 Root 的 WAN 上網),需要建立虛擬連線 (Virtual Link)。

sequenceDiagram participant User as User (Office) participant O_VDOM as Office VDOM participant V_Link as Inter-VDOM Link
(Virtual Cable) participant R_VDOM as Root VDOM participant Internet as Internet Note over User, Internet: 場景:Office VDOM 的用戶透過 Root VDOM 上網 User->>O_VDOM: 1. 發送上網請求 Note right of O_VDOM: 查表:預設路由指向 V-Link O_VDOM->>V_Link: 2. 轉送封包 (FW Policy 1 Allow) V_Link->>R_VDOM: 3. 封包進入 Root VDOM Note right of R_VDOM: 查表:預設路由指向 WAN1 R_VDOM->>Internet: 4. SNAT 出去 (FW Policy 2 Allow) Internet-->>R_VDOM: 5. 回應封包 R_VDOM-->>V_Link: 6. 轉回 V-Link V_Link-->>O_VDOM: 7. 回到 Office VDOM O_VDOM-->>User: 8. 回應用戶
四、實務應用場景 (Use Case)

企業內網隔離與 MSSP 應用

案例:大型企業部門與訪客完全隔離

某科技公司希望將「研發部門 (RD)」與「訪客 Wi-Fi」的網路環境完全切開。訪客網路即使中毒,也絕對不能橫向移動到研發網路。同時,網管人員希望研發部門擁有獨立的路由表,避免路由衝突。

優點 (Pros)

  • 安全性極高:邏輯層面完全斷開,ARP/Broadcast 不互通。
  • 管理彈性:可授權不同管理員分別管理 Guest 與 RD VDOM。
  • 路由獨立:兩個 VDOM 可以使用相同的 IP 網段 (Overlapping Subnets) 也不會衝突。

缺點 (Cons)

  • 配置複雜度:需要維護多套 Policy 與 Routing。
  • Troubleshooting 難度:跨 VDOM 問題需要分段除錯 (Debug)。
  • 效能耗損:跨 VDOM 通訊需要經過兩次防火牆檢查。

設定範例 (CLI Configuration)

以下示範啟用 VDOM,並建立 "RD-Project" VDOM,分配 Port2 給它。

# 1. 啟用 Multi-VDOM 模式 (需重新登入) config system global set vdom-mode multi-vdom end # 2. 建立新的 VDOM:RD-Project config vdom edit RD-Project next end # 3. 將實體介面指派給 VDOM (必須在 Global 下設定) config global config system interface edit "port2" set vdom "RD-Project" # 將 port2 劃給 RD 部門 set ip 192.168.10.254 255.255.255.0 set allowaccess ping https ssh next edit "wan1" set vdom "root" # wan1 留在 root 做出口 next end end # 4. 進入 RD-Project VDOM 設定防火牆策略 config vdom edit RD-Project # 設定路由 (指向上網的 Gateway 或 Inter-VDOM link) config router static edit 1 set dst 0.0.0.0 0.0.0.0 set gateway 192.168.10.1 set device "port2" next end # 設定 Policy (允許內部互通) config firewall policy edit 1 set name "RD-Local-Access" set srcintf "port2" set dstintf "port2" set srcaddr "all" set dstaddr "all" set action accept set schedule "always" set service "ALL" next end end
五、隨堂測驗 (Quiz)

VDOM 架構師檢定

1. 在 FortiGate 的 VDOM 概念中,最適合的「生活化比喻」是什麼?

A. 一個備份的發電機
B. 一棟商務大樓分割成多個獨立辦公室
C. 多條水管合併成一條大水管
D. 一個能夠自動切換路線的導航系統

2. 關於 Split-Task VDOM 模式,下列敘述何者正確?

A. 用來將不同部門 (HR, Sales, IT) 分割開來
B. 主要將「管理流量 (Management)」與「數據流量 (Traffic)」分開
C. 預設會建立 Root 和 10 個 VDOM
D. 是一種 Layer 2 的 Switch 模式

3. 當封包需要在兩個 VDOM 之間傳輸時 (例如從 VDOM-A 到 VDOM-B),需要配置什麼?

A. 必須使用實體網路線將 Port1 連接 Port2
B. 必須建立 IPsec VPN
C. 必須建立 Inter-VDOM Link (虛擬連結) 並設定對應的防火牆策略
D. 不需要設定,預設所有 VDOM 都是互通的

4. 下列哪一項設定必須在 "Global" 層級下執行,而不能在特定 VDOM 內執行?

A. 建立 Firewall Policy
B. 設定 Static Route
C. 將實體 Interface (如 Port2) 指派給特定 VDOM
D. 設定 Address Object

5. 使用 VDOM 的主要缺點或限制是什麼?

A. 安全性較低,因為大家共用 OS
B. 硬體資源 (CPU/RAM) 是共享的,若無設定配額,單一 VDOM 可能耗盡資源
C. 無法支援 VPN 功能
D. 不能使用 HA 高可用性架構