跳轉到

基於 FGSP 的 Fortinet FortiGate 防火牆高可用性設定

本主題概述佈建程序,並說明使用 FortiGate Session Life Support Protocol (FGSP) 結合以路由為基礎的備援來實作 Fortinet FortiGate 高可用性 (HA) 的部署考量。

如需 Fortinet FortiGate 的詳細資訊,請參閱 FortiGate / FortiOS documentation

HA 概觀

在地端、資料中心,或在 Megaport Virtual Edge (MVE) 部署 Fortinet FortiGate 防火牆時,使用 FGSP 是提供工作階段備援的常見方式。FGSP 可確保作用中的工作階段在 FortiGate 對等端之間同步,於防火牆或連結發生故障時,將流量中斷降至最低。

過去在雲端或虛擬化環境中要達成類 HA 的工作階段延續性相當具挑戰,因為需要在防火牆對等端之間具備直接的網路路徑與可靠的工作階段同步機制。Megaport 對 MVE 上 FortiGate 防火牆與多 vNIC 功能的支援,使得 FGSP 部署成為可能,甚至可在虛擬化的網路核心與多雲連線之間維持工作階段延續性。

部署在 MVE 上的 FortiGate 防火牆可設定使用 FGSP,結合隨選即用的服務化部署、到雲端與資料中心的直接私有連線、工作階段同步,以及協調式故障移轉等優點。

FGSP 模式

Fortinet FGSP 與傳統的 Fortinet HA 通訊協定 FortiGate Clustering Protocol (FGCP) 不同,FGSP 著重於工作階段同步,而非提供統一的、以叢集為基礎的主動-主動負載平衡機制。雖然 FGCP 具有 Active/Active 與 Active/Passive 模式,FGSP 通常用於:

  • 兩個或多個作用中的 FortiGate 對等端,由網路層決定哪些裝置可接收流量。例如,路由器、SD-WAN,或外部負載平衡器。

  • 跨對等端的工作階段同步,確保當某個對等端發生故障時,作用中的工作階段可在存活的裝置上繼續。 FGSP 不會原生執行流量故障移轉。上游網路(例如路由器、SD-WAN 覆疊網路,或負載平衡器)必須偵測故障,並將流量重新導向至存活的 FortiGate 執行個體。

FGSP 運作方式

FGSP 透過專用 vNIC 或 VXC 在 FortiGate 對等端之間同步作用中的工作階段。每台 FortiGate 各自維護其介面,上游網路(例如路由器或負載平衡器)則決定流量分配。

發生故障時(例如某個 FortiGate 節點關閉或網路路徑失效),存活的 FortiGate 會接手作用中的工作階段。網路必須將新的流量路由至存活的對等端。FGSP 可確保既有的工作階段狀態被保留,因而維持流量連續性。

FGSP 特別適用於虛擬化或多雲部署,在這些情況下,防火牆作為覆疊 SD-WAN 中的主動閘道部署,且高可用性無法僅仰賴傳統的實體 HA 連結。

架構概觀

本主題所示的架構為在 MVE 上的 FortiGate,並使用 FGSP 進行工作階段同步。 有兩個執行 FortiGate OS 的 MVE,每個的管理介面皆連上網際網路。於兩個 MVE 之間建立一條專用的 VXC 以承載 FGSP 工作階段同步流量,而資料平面 VXC 則連接到一個或多個雲端環境或其他網路。

備註

在正式環境中,可能會有額外的 VXC 用於連接其他網路、網際網路連結或 VPN。管理介面也可以位於私有網路而非公用網際網路,具體取決於您的設計。

下圖顯示在 MVE 上部署 Fortinet FGSP 的高層架構,展示兩個 FortiGate 對等端之間的工作階段同步,以及與多個雲端環境、網際網路和 Megaport Marketplace 的連線

FSGP 部署架構

介面詳細資料

下圖顯示 FortiGate FGSP 部署的介面對應。圖中示範將 vNIC 0 作為管理、vNIC 1 作為資料平面、vNIC 2 作為 FGSP 工作階段同步,且資料平面 VXC 連接至雲端或覆疊網路

FSGP 介面詳細資料

在 MVE 上部署 FGSP

在 MVE 上部署 FGSP,需要在 Megaport Portal 與 FortiGate OS 中完成以下設定步驟:

  1. 部署第一個 FortiGate MVE 執行個體

  2. 部署第二個 FortiGate MVE 執行個體

  3. 在 FortiGate OS 中設定 FGSP

部署考量

在部署支援 FGSP 的 FortiGate MVE 的每個步驟,都有一些特別的考量。

部署第一個 FortiGate MVE 執行個體

建議您指派一個專用 vNIC 作為對等端之間的 FGSP 工作階段同步。也建議分別指派一個 vNIC 作為管理與資料平面介面。典型部署需要三個介面:管理、資料與 FGSP 同步,但若有需要,您最多可部署 5 個 vNIC。

備註

Fortinet 建議使用未與管理或資料流量共用的專用網路區段或介面來承載 FGSP 工作階段同步流量。這可確保工作階段同步的可靠性、降低壅塞,並避免因共用連結上的 NAT網路位址轉換(NAT)是在封包送往外部網路之前,將組織的內部私有網路所使用的未註冊的私有 IP 位址轉換為單一已註冊的公用 IP 位址的過程。 NAT 允許私有 IP 網路使用網際網路與雲端。
或過濾所造成的問題。詳情請參閱 Fortinet FGSP documentation

部署第二個 FortiGate MVE 執行個體

在相同或不同的都會區建立第二個相同型號與相同韌體版本的 FortiGate MVE。對於對效能敏感的部署,建議兩個 MVE 執行個體之間的網路路徑具備低延遲,但不需要低於 1 毫秒的延遲。兩個 FortiGate 執行個體在型號與韌體上必須一致,才能支援 FGSP。

為 FGSP 流量建立 VXC

若 vNIC 0 用於管理、vNIC 1 用於資料平面,則可將 vNIC 2 指派給 FGSP 工作階段同步。在每個 MVE 的 vNIC 2 之間建立一條 VXC。兩端皆應設定為未標記(no VLAN)。此連結將承載 FGSP 工作階段同步流量。

備註

請確保 FGSP VXC 具備足夠的頻寬以因應尖峰的工作階段表同步流量。典型部署從 1 Gbps 起,但請依預期的作用中工作階段數量進行調整。

在 FortiGate OS 中設定 FGSP

在每個 FortiGate MVE 上,透過 VXC 使用適當的對等端 IP 位址設定 FGSP。啟用 session pickup 選項,以視需要同步 TCP、UDP、ICMP、NAT 與 expectation 工作階段。驗證對等端之間的連通性,並確保工作階段表已正確同步。詳情請參閱 FortiGate FGSP basic peer setup documentation

在 Megaport Portal 建立 FortiGate MVE

第一步是在 Megaport Portal 中建立並部署兩個 FortiGate MVE。不同於傳統的 HA 叢集(FGCP),Fortinet FGSP 不需要多個專用 HA 介面,而是需要一條可靠的網路路徑,讓 FortiGate 對等端之間可進行工作階段同步。

典型的 FortiGate FGSP 部署在 MVE 上包含:

  • 一個管理介面

  • 一個資料平面介面

  • 建議配置一個專用介面(或 VNIC)用於 FGSP 工作階段同步。

建立並部署 FortiGate MVE

  1. Megaport Portal 中,前往 Services (服務) 頁面。
  2. 依照建立與 Fortinet 整合的 MVE 的說明,建立 Fortinet FortiGate MVE。

  3. 在 MVE 的詳細資料頁面上,設定所需的虛擬介面 (vNIC):

FSGP 介面詳細資料

重複相同步驟以建立第二個 FortiGate MVE,並確保:

  • 相同的 FortiGate 型號

  • 相同的 FortiOS 版本

  • 依據延遲與設計需求,在合適的都會區部署

  • 為每個 FortiGate MVE 的管理介面建立一條 Megaport Internet 連線。
    這可讓您初步存取 FortiGate 的 GUI 與 CLI,以進行設定與驗證。 這是在初始部署期間最常見的方式。不過,一旦建置了替代的管理路徑(例如 bastion host、虛擬私人網路 (VPN),或私有管理網路),管理介面也可以改接到私有 VXC。

    備註

    請確保透過適當的防火牆策略、信任的來源 IP 與驗證機制來保護管理存取。

現在將會部署兩個 MVE。

建立用於 FGSP 工作階段同步的 VXC

既然已建立 FortiGate MVE,下一步是為兩台裝置之間的 FGSP 工作階段同步建立一條私有 VXC。

不同於傳統 HA 的實作,Fortinet FGSP 需要一條可靠的對等端間單一路徑以同步工作階段狀態。此路徑必須是直接、可路由,且無 NAT。

在每個 MVE 上使用專用的 FGSP 介面(此範例為 vNIC 2),並將其連接到對等 MVE 的相同介面:

  • 在 MVE 1 的 vNIC 2 與 MVE 2 的 vNIC 2 之間建立一條私有 VXC。

  • 將 VXC 的兩端都設定為未標記(no VLAN)。

在 MVE 之間建立 VXC

  1. Megaport Portal 中,前往 Services (服務) 頁面。
  2. 依照連接與 Fortinet Secure SD-WAN 整合的 MVE 的說明,在兩個 FortiGate MVE 之間建立 VXC

VXC 連線

在 FortiGate OS 中設定 FGSP

既然基礎架構已在 Megaport Portal 中建立並設定,接下來需要在 FortiGate 防火牆上設定 FGSP 的工作階段同步。

每台防火牆的管理網頁介面可透過連接至管理 vNIC(vNIC 0)的 VXC 的 IP 進行存取。您可以在 Megaport Portal 中該 VXC 的詳細資料分頁上找到該 IP 位址。

本節說明在 FortiGate OS 上設定 FGSP 的方法。此範例以 FortiOS 7.6.x 為基礎,僅供參考之用。視您的環境、網路設計或 Fortinet 未來發佈的更新,可能需要進行調整。

如需關於設定選項、支援的工作階段類型與建議做法的詳細資訊,請參閱 Fortinet FGSP documentation

允許存取每個 FortiGate MVE

依照建立與 Fortinet 整合的 MVE 中的 FortiGate 設定與配置步驟進行。
現在您可以使用連接到 vNIC 0(Management)的 VXC 的 IP 來連線到每個 MVE 的管理介面。

設定 FGSP 介面

若要設定 FGSP 工作階段同步,請選取專用於 FGSP 流量的介面,例如 vNIC 2(或 FortiOS 中的連接埠 3),實際情況依 MVE 的介面對應而定。此介面必須設定為具有靜態 IP 位址,且可被對等 FortiGate 直接到達。

FGSP 介面必須可端對端路由、不得使用 NAT,且需在兩個 FortiGate 對等端之間提供直接的 IP 連通性。此介面僅用於 FGSP 的工作階段同步流量,且不應與管理或資料平面流量共用,以符合 Fortinet 的最佳實務。

如需設定 FGSP 介面的詳細資訊,請參閱 FortiGate FGSP documentation

啟用 FGSP 並設定對等端

若要啟用 FGSP 並定義同步對等端,請透過 GUI 主控台或 SSH 連線在 FortiGate 上開啟 CLI 工作階段。透過在專用的 FGSP 介面上指定對等 FortiGate 的 IP 位址來設定 FGSP。此設定會在兩台 FortiGate 裝置之間建立工作階段同步關係,並允許透過 FGSP 連結交換工作階段狀態資訊。

如需更詳細的資訊,請參閱 FGSP basic peer setup

例如:

config system standalone-cluster
    set standalone-group-id 1
    set group-member-id 1
    set session-sync-dev "port3" 
    config cluster-peer
        edit 1
            set peerip 10.0.0.2
            set syncvd "root"
        next
    end
end

設定 session pickup 選項

在設定 FGSP 並指定對等端之後,請全域啟用 session pickup,以確保作用中的 TCP 工作階段可在 FortiGate 對等端之間同步。

如有需要,也可同步其他工作階段類型,包括 UDP 與 ICMP 等無連線流量、已進行 NAT 的工作階段,以及由 SIP、H.323 或其他 VoIP 應用程式等通訊協定所使用的 expectation 工作階段。啟用這些選項可確保在發生故障移轉時,存活的 FortiGate 能夠無縫延續既有的工作階段。

如需更多資訊,請參閱 FGSP basic peer setup 的 Session pickup 章節。

例如:

config system ha
    set session-pickup enable
    set session-pickup-connectionless enable
    set session-pickup-expectation enable
    set session-pickup-nat enable
    set standalone-config-sync enable
end

驗證 FGSP 連線能力

設定 FGSP 後,請確保每台 FortiGate 上專用的 FGSP 介面可直接到達其對等端。使用 CLI 檢查 FGSP 狀態並確認工作階段已正確同步。

能夠判定 FGSP 正常運作的常見指標包括以下度量:

  • sync_started=1 – 表示工作階段同步機制已啟動。

  • standalone_sesync=1 – 表示 FortiGate 以獨立叢集模式運作

  • send=770recv=764 – 封包計數器,確認兩個 FortiGate 對等端之間正在通訊。

透過驗證這些度量,您可確認 FGSP 已啟動,並能在故障移轉期間維持工作階段的連續性。

例如:

#diagnose sys session sync 
sync_ctx: sync_started=1, sync_tcp=1, sync_others=1,
sync_expectation=1, sync_nat=1, stdalone_sesync=1, asymmetric_traffic_control=0.
help_traffic_bounce=1, utm_traffic_bounce=1
sync: create=4:0, update=8, keepalive=0, delete=0:0, query=2, keepalive_query=0
recv: create=7:0, update=20, keepalive=1, delete=0:0, query=1
ses pkts: send=3675, alloc_fail=0, recv=3163, recv_err=0, sz_err=0, 
sync_filter:
        1: vd=0, szone=0, dzone=0, saddr=0.0.0.0:0.0.0.0, daddr=0.0.0.0:0.0.0.0, sport=0-65535, dport=0:65535, peerid=2, peervd=0, peerip=10.0.0.2

您也可以透過執行以下指令來驗證工作階段同步:

  • diagnose sys session list – 檢視作用中的工作階段

  • diagnose sys session stat – 檢視工作階段統計與計數器,進一步確認工作階段正在對等端之間複寫。

建立資料平面連線

既然已部署 FortiGate MVE,且已設定 FGSP 的工作階段同步,下一步是建立資料平面 VXC,以連接您要進行路由的各網路。

這些資料平面 VXC 將以標記的 VLAN 子介面的形式,附加在資料平面介面(例如 vNIC 1 / Port 2)下。相關子介面與 BGP 對等端(或路由設定)將在 FortiGate 防火牆中完成設定。

此範例我們將連接 AWS 與 GCP,但相同流程亦可套用到任何可透過 VXC 到達的網路。有些工作在 Megaport Portal 中執行,另外一些則在 FortiGate OS 中完成。

建立 VXC

在 Megaport Portal 中,依連線總覽 所述的標準流程建立 VXC,並在 A 端 vNIC 指定 vNIC-1/Port 2,且將 VXC 設定為以標記的 VLAN 方式交付。

通往相同目的地的連線應在兩個 MVE 上皆建立,且可選擇是否使用相同的 VLAN 交付。在此範例中,Cloud1 VXC(至 GCP)將在 MVE1 設為 VLAN 10、在 MVE2 設為 VLAN 11;而 Cloud2 VXC(至 AWS)將在 MVE1 設為 VLAN 20、在 MVE2 設為 VLAN 21。

建立 VXC 之後,兩個 MVE 應會如下面的圖片所示

MVE 範例

設定介面

現在請為由 Megaport 交付的 VXC 設定資料平面介面。
針對每條 VXC,在資料平面介面(例如 vNIC 1 - Port 2)下建立一個 VLAN 子介面。指派 Megaport 提供的 VLAN ID,並依您的網路設計為子介面設定適當的 IP 位址。

如需更多資訊,請參閱 FortiGate documentation for interface settings

設定 BGP

Border Gateway Protocol (BGP)Border Gateway Protocol (BGP) 是一種標準化的路由協定,用於在網際網路上的自治系統 (AS) 之間交換路由與可達性資訊。
用於在 FortiGate MVE 與已連接的網路之間,自動散布與管理路由。每台防火牆可以有不同的 BGP 對等端位址與流量工程設定。 虛擬路由器或 BGP 執行個體的設定不會由 FGSP 同步,因此必須在兩個 FortiGate 對等端上個別設定。

如需設定 BGP 的詳細資訊,請參閱 FortiGate BGP documentation

在故障移轉時,由 BGP 管理 MVE 之間的流量切換,而 FGSP 則確保作用中的工作階段在兩個裝置之間保持同步。在大多數情況下,建議在 BGP 對等端啟用 Bidirectional Forwarding Detection (BFD),以改善故障移轉的復原時間。關於 BFD 的更多資訊,請參閱 BFD Overview

FGSP 不處理流量轉送;它僅複寫工作階段狀態,因此流量的路由與故障移轉由 BGP、SD-WAN 或其他路由策略來管理。

設定故障移轉條件

雖然已設定 FGSP 以在 FortiGate 對等端之間同步工作階段,且上游網路或 SD-WAN 會在發生中斷時將流量重新導向至存活的裝置,但每台防火牆與連接的網路端點仍需知道何時判定對等端或路徑中斷,以及如何正確重新導向流量。

可透過多種機制的組合來最佳化故障移轉。BGP 搭配 BFD 可在路由層級提供快速的路由收斂與故障移轉。連結監控與 SD-WAN 連結健康狀態監控,讓每台 FortiGate 能偵測 VXC、雲端連線或 WAN 路徑上的故障並觸發流量改道。此外,也可套用自訂指令碼或自動化,以強制執行特定策略或進行額外檢查。這些機制不僅適用於使用 FGSP 的 FortiGate 閘道,也可套用在遠端站點或端點上,以提升整體韌性並在故障移轉期間降低停機時間。

FGSP 可確保在故障移轉期間,已同步到存活對等端的作用中工作階段能夠維持,但它本身不會處理流量重新導向。不同於傳統的主動/被動 HA 叢集,在 MVE 部署中的故障移轉仰賴上游路由、BGP 路徑監控、SD-WAN 編排與選用的自動化,來在保留工作階段連續性的同時重新導向流量。於兩個閘道與遠端端點正確設定這些機制,可確保流量不中斷並最大化網路可用性。

檢閱設定狀態

既然一切皆已就緒並完成設定,您可以透過以下方式確認是否如預期運作:

  • Megaport Portal 中所有 MVE 與 VXC 均應顯示為 live 與作用中。

  • 兩台防火牆都應已建立 BGP 工作階段,並與其對等端交換路由。

  • 您的網路之路由應出現在每台防火牆的路由表與本機路由資訊庫 (RIB) 中。

  • 兩個對等端都應顯示為啟動且可到達,確認在路由層級的故障移轉偵測已可運作。

  • 兩個 FortiGate 對等端之間應持續同步工作階段狀態。每台裝置都應維持最新的作用中工作階段視圖,確保若其中一個對等端無法到達時,流量可不中斷地繼續。

  • 每台防火牆都應透過連結監控或 SD-WAN 健康檢查正確監控相關路徑。雖然 FortiGate MVE 以獨立模式運作且不會進入故障移轉狀態,但驗證流量能夠透過可用路徑正確路由,能確保網路流量的連續性。

透過驗證 MVE/VXC、BGP、路由、FGSP 工作階段同步與路徑監控,您可以確認在 FGSP 部署中,流量轉送與工作階段連續性均已正確運作。