分享方式:


使用 Azure Route Server 的多區域網路

需要高可用性或災害復原需求的應用程式通常需要部署在多個 Azure 區域中。 在這種情況下,不同區域中的輪輻虛擬網路 (VNet) 需要彼此通訊。 啟用此通訊的其中一種方式是將所有必要的輪輻 VNet 彼此對等互連。 不過,此方法會略過任何中央網路虛擬設備(NVA),例如中樞中的防火牆。 替代方法是在部署中樞 NVA 的子網中使用使用者定義路由(UDR),但維護 UDR 可能具有挑戰性。 Azure 路由伺服器提供動態替代方案,可自動適應拓撲變更,而不需要手動介入。

拓撲

下圖顯示雙區域架構,其中中樞和輪輻拓撲存在於每個區域中,而中樞 VNet 會透過 VNet 全域對等互連彼此對等互連:

Diagram showing multi-region design with Azure Route Server.

每個區域中的 NVA 會透過 Azure 路由伺服器瞭解本機中樞和輪輻 VNet 的前置詞,並使用 BGP 與其他區域中的 NVA 共用。 為了避免路由迴圈,請務必使用 IPsec 或 Virtual eXtensible LAN (VXLAN) 等封裝技術,在 NVA 之間建立此通訊。

若要讓 Azure 路由伺服器向本機 NVA 公告輪輻 VNet 的前置詞,並將學習的路由插入輪輻 VNet,請務必使用 遠端虛擬網路的網關或路由伺服器 設定,在輪輻 VNet 與中樞 VNet 之間進行對等互連。

NVA 會公告他們從遠端區域學習到其本機路由伺服器的路由,然後會在本機輪輻 VNet 中設定這些路由,並據以吸引流量。 如果相同區域中有多個 NVA 存在(路由伺服器支援最多八個 BGP 對等互連),則可以使用 AS 路徑預先加上,讓其中一個 NVA 優先於其他 NVA,有效地建立作用中/待命 NVA 拓撲。

重要

為了確保本機路由伺服器可以從遠端區域學習 NVA 所公告的路由,NVA 必須從路由的 AS 路徑中移除自發系統號碼 (ASN) 65515。 這項技術有時在某些 BGP 平臺中稱為「AS 覆寫」或「AS 路徑重寫」。 否則,BGP 迴圈防護機制會防止本機路由伺服器學習那些路由,因為它禁止學習已經包含本機 ASN 的路由。

ExpressRoute

多重區域設計可以與 ExpressRoute 或 VPN 閘道結合。 下圖顯示拓撲,包括其中一個 Azure 區域中聯機到內部部署網路的 ExpressRoute 閘道。 在此情況下,透過 ExpressRoute 線路的覆疊網路有助於簡化網路,讓內部部署前置詞只會以 NVA 公告的形式出現在 Azure 中(而不是從 ExpressRoute 閘道公告)。

Diagram showing multi-region design with Route Server and ExpressRoute.

沒有重疊的設計

NVA 之間的跨區域通道是必要的,否則會形成路由迴圈。 例如,查看區域 1 中的 NVA:

  • 區域 1 中的 NVA 會從區域 2 學習前置詞,並將其公告至區域 1 中的路由伺服器。
  • 區域 1 中的路由伺服器會在區域 1 的所有子網中插入這些前置詞的路由,並將區域 1 中的 NVA 插入為下一個躍點。
  • 對於從區域 1 到區域 2 的流量,當區域 1 中的 NVA 將流量傳送至其他 NVA 時,它自己的子網會繼承路由伺服器所設定的路由,而路由伺服器會指向本身 (NVA)。 因此,封包會傳回至 NVA,而且會出現路由迴圈。

如果 UDR 是選項,您可以停用 NVA 子網中的 BGP 路由傳播,並設定靜態 UDR 而不是重疊,讓 Azure 可以將流量路由傳送至遠端輪輻 VNet。