情節:使用自訂設定以透過 NVA 來路由傳送流量
使用 Azure 虛擬 WAN 虛擬中樞路由時,有許多選項可供您使用。 本文的重點在於您想要透過網路虛擬裝置 (NVA) 來路由傳送流量,以便於虛擬網路與分支之間通訊,並針對網際網路繫結流量,使用不同的 NVA。 如需詳細資訊,請參閱關於虛擬中樞路由。
注意
請注意,針對下列路由案例,包含 NVA 的虛擬 WAN 中樞和輪輻 虛擬網絡 必須位於相同的 Azure 區域中。
設計
- 輪輻代表連線至虛擬中樞的虛擬網路。 (例如,本文稍後圖表中的 VNet 1、VNet 2 和 VNet 3。)
- 服務 VNet 代表使用者已部署 NVA 來檢查非網際網路流量的虛擬網路,還可能有輪輻經常存取的服務。 (例如,本文稍後圖表中的 VNet 4。)
- 周邊 VNet代表使用者已部署 NVA 來檢查網際網路繫結流量的虛擬網路。 (例如,本文稍後圖表中的 VNet 5。)
- 中樞代表由 Microsoft 管理的虛擬 WAN 中樞。
下表概述此情節支援的連線:
從 | 至 | 輪輻 | 服務 VNet | 分支 | 網際網路 |
---|---|---|---|---|---|
輪輻 | -> | 直接 | 直接 | 透過服務 VNet | 透過周邊 VNet |
服務 VNet | -> | 直接 | n/a | 直接 | |
分支 | -> | 透過服務 VNet | 直接 | 直接 |
連線矩陣中的每個資料格描述連線是否直接流過虛擬 WAN,或流過其中一個含有 NVA 的虛擬網路。
請注意下列詳細資料:
- 輪輻:
- 輪輻直接透過虛擬 WAN 中樞到達其他輪輻。
- 輪輻透過指向服務 VNet 的靜態路由來連線至分支。 輪輻不從分支得知特定的前置詞,因為這些前置詞很特別,還會覆寫摘要。
- 輪輻透過直接 VNet 對等互連,將網際網路流量傳送至周邊 VNet。
- 分支透過指向服務 VNet 的靜態路由到達輪輻。 輪輻不從虛擬網路得知會覆寫概括靜態路由的特定前置詞。
- 服務 VNet 類似於必須可從每個虛擬網路和每個分支到達的共用服務 VNet。
- 周邊 VNet 僅支援透過直接虛擬網路對等互連送來的流量,所以不需要透過虛擬 WAN 來連線。 但為了簡化設定,請使用與周邊 VNet 相同的連線模型。
有三種不同的連線模式,轉譯為三個路由表。 與各種虛擬網路的關聯如下:
- 輪輻:
- 相關聯的路由表:RT_V2B
- 傳播至路由表:RT_V2B 和 RT_SHARED
- NVA VNet (服務 VNet 和 DMZ VNet):
- 相關聯的路由表:RT_SHARED
- 傳播至路由表:RT_SHARED
- 分支:
- 相關聯的路由表:預設
- 傳播至路由表:RT_SHARED 和 Default
注意
請確定輪輻 VNet 不傳播至 Default 標籤。 這可確保從分支到輪輻 VNet 的流量轉送至 NVA。
這些靜態路由可確保往返於虛擬網路和分支的流量通過服務 VNet (VNet 4) 中的 NVA:
描述 | 路由表 | 靜態路由 |
---|---|---|
分支 | RT_V2B | 10.2.0.0/16 -> vnet4conn |
NVA 輪輻 | 預設 | 10.1.0.0/16 -> vnet4conn |
現在您可以使用虛擬 WAN 來選取封包送往的正確連線。 您也需要使用虛擬 WAN 來選取收到這些封包時要採取的正確動作。 您為此使用連線路由表,如下所示:
描述 | [連接] | 靜態路由 |
---|---|---|
VNet2Branch | vnet4conn | 10.2.0.0/16 -> 10.4.0.5 |
Branch2VNet | vnet4conn | 10.1.0.0/16 -> 10.4.0.5 |
如需詳細資訊,請參閱關於虛擬中樞路由。
架構
下圖顯示本文稍早所述的架構。
圖中有一個中樞:Hub 1。
Hub 1 直接連線至 NVA VNet VNet 4 和 VNet 5。
VNet 1、2、3 和分支之間的流量預期會通過 VNet 4 NVA 10.4.0.5。
來自 VNet 1、2 和 3 的所有網際網路繫結流量預期會通過 VNet 5 NVA 10.5.0.5。
工作流程
若要設定透過 NVA 來路由傳送,請考慮下列步驟:
若要讓網際網路繫結流量通過 VNet 5,VNet 1、2 和 3 需要透過虛擬網路對等互連來直接連線至 VNet 5。 在 0.0.0.0/0 的虛擬網路和下一個躍點 10.5.0.5 中,您也需要設定使用者定義的路由。
如果您不想要將 VNet 1、2 和 3 連線至 VNet 5,而改用 VNet 4 中的 NVA 路由 0.0.0.0.0/0 流量(內部部署 VPN 或 ExpressRoute 連線),請移至 替代工作流程。
不過,如果要透過 NVA 來傳輸 VNet 對 VNet 流量,則必須中斷 VNet 1、2、3 與虛擬中樞的連線,然後連線或堆疊在 NVA 輪輻 VNet4 上方。 在虛擬 WAN 中,VNet 對 VNet 流量透過虛擬 WAN 中樞或虛擬 WAN 中樞的 Azure 防火牆 (安全中樞) 來傳輸。 如果 VNet 使用 VNet 對等互連來直接對等互連,則可以避開透過虛擬中樞傳輸而直接通訊。
在 Azure 入口網站中,移至您的虛擬中樞,並建立名為 RT_Shared 的自訂路由表。 下表從所有虛擬網路和分支連線透過傳播而得知路由。 您可以在下圖中看到此空白資料表。
路由:您不需要新增任何靜態路由。
關聯:選取 VNet 4 和 5,這表示這些虛擬網路的連線與路由表 RT_Shared 相關聯。
傳播:因為您希望所有分支和虛擬網路連線將路由動態傳播至此路由表,請選取分支和所有虛擬網路。
建立名為 RT_V2B 的自訂路由表,將來自 VNet 1、2 和 3 的流量導向分支。
路由:針對分支新增彙總靜態路由項目,並以 VNet 4 連線為下一個躍點。 在 VNet 4 的連線中設定靜態路由以取得分支前置詞。 指出下一個躍點為 VNet 4 中 NVA 的特定 IP。
關聯:選取所有 VNet 1、2 和 3。 這表示 VNet 連線 1、2 和 3 會與此路由表產生關聯,還能夠在此路由表中得知路由 (透過傳播,靜態和動態)。
傳播:連線將路由傳播至路由表。 選取 VNet 1、2 和 3 可將路由從 VNet 1、2 和 3 傳播至此路由表。 因為分支虛擬網路流量會通過 VNet 4 中的 NVA,不需要將路由從分支連線傳播至 RT_V2B。
編輯預設路由表 DefaultRouteTable。
所有 VPN、Azure ExpressRoute 和使用者 VPN 連線都與預設路由表相關聯。 所有 VPN、ExpressRoute 和使用者 VPN 連線都將路由傳播至同一組路由表。
路由:針對 VNet 1、2 和 3 新增彙總靜態路由項目,且下一個躍點為 VNet 4 連線。 在 VNet 4 的連線中設定靜態路由,以取得 VNet 1、2 和 3 的彙總前置詞。 指出下一個躍點為 VNet 4 中 NVA 的特定 IP。
關聯:務必選取分支 (VPN/ER/P2S) 的選項,確保內部部署分支連線與預設路由表相關聯。
傳播來源:務必選取分支 (VPN/ER/P2S) 的選項,確保內部部署連線將路由傳播至預設路由表。
替代工作流程
在此工作流程中,您不將 VNet 1、2 和 3 連線至 VNet 5。 相反地,您使用 VNet 4 中的 NVA,從分支路由傳送 0.0.0.0/0 流量 (內部部署 VPN 或 ExpressRoute 連線)。
若要設定透過 NVA 來路由傳送,請考慮下列步驟:
在 Azure 入口網站中,移至您的虛擬中樞,並建立名為 RT_NVA 的自訂路由表,以透過 NVA 10.4.0.5 來引導流量
路由:不需要任何動作。
關聯:選取 VNet4。 這表示 VNet 連線 4 會與此路由表產生關聯,還能夠在此路由表中得知路由 (透過傳播,靜態和動態)。
傳播:連線將路由傳播至路由表。 選取 VNet 1、2 和 3 可將路由從 VNet 1、2 和 3 傳播至此路由表。 選取分支 (VPN/ER/P2S) 可將路由從分支/內部部署連線傳播至此路由表。 所有 VPN、ExpressRoute 和使用者 VPN 連線都將路由傳播至同一組路由表。
建立名為 RT_VNET 的自訂路由表,以透過 VNet4 NVA 將來自 VNet 1、2 和 3 的流量導向分支或網際網路 (0.0.0.0/0)。 VNet 對 VNet 流量是直接,而不透過 VNet 4 的 NVA。 如果要讓流量通過 NVA,請中斷 VNet 1、2 和 3 的連線,並使用 VNet 對等互連來連線至 VNet4。
路由:
新增彙總路由 '10.2.0.0/16',且下一個躍點為 VNet 4 連線,讓流量從 VNet 1、2 和 3 流向分支。 在 VNet4 連線中,設定 '10.2.0.0/16' 的路由,並指出下一個躍點為 VNet 4 中 NVA 的特定 IP。
新增路由 '0.0.0.0/0',且下一個躍點為 VNet 4 連線。 新增 '0.0.0.0/0' 表示將流量傳送至網際網路。 它並不表示與 VNet 或分支相關的特定位址前置詞。 在 VNet4 連線中,設定 '0.0.0.0/0' 的路由,並指出下一個躍點為 VNet 4 中 NVA 的特定 IP。
關聯:選取所有 VNet 1、2 和 3。 這表示 VNet 連線 1、2 和 3 會與此路由表產生關聯,還能夠在此路由表中得知路由 (透過傳播,靜態和動態)。
傳播:連線將路由傳播至路由表。 選取 VNet 1、2 和 3 可將路由從 VNet 1、2 和 3 傳播至此路由表。 確定未選取分支 (VPN/ER/P2S) 的選項。 這可確保內部部署連線無法直接連線到 VNet 1、2 和 3。
編輯預設路由表 DefaultRouteTable。
所有 VPN、Azure ExpressRoute 和使用者 VPN 連線都與預設路由表相關聯。 所有 VPN、ExpressRoute 和使用者 VPN 連線都將路由傳播至同一組路由表。
路由:
針對 VNet 1、2 和 3 新增彙總路由 '10.1.0.0/16',且下一個躍點為 VNet 4 連線。
新增路由 '0.0.0.0/0',且下一個躍點為 VNet 4 連線。 新增 '0.0.0.0/0' 表示將流量傳送至網際網路。 它並不表示與 VNet 或分支相關的特定位址前置詞。 在 VNet4 連線的上一個步驟中,您已設定 '0.0.0.0/0' 的路由,且下一個躍點為 VNet 4 中 NVA 的特定 IP。
關聯:務必選取分支 (VPN/ER/P2S) 的選項。 這可確保內部部署分支連線與預設路由表相關聯。 所有 VPN、Azure ExpressRoute 和使用者 VPN 連線只與預設路由表相關聯。
傳播來源:務必選取分支 (VPN/ER/P2S) 的選項。 這可確保內部部署連線將路由傳播至預設路由表。 所有 VPN、ExpressRoute 和使用者 VPN 連線都將路由傳播至「同一組路由表」。
考量
入口網站使用者必須在連線 (VPN/ER/P2S/VNet) 上啟用「傳播至預設路由」,0.0.0.0/0 路由才會生效。
PS/CLI/REST 使用者必須將旗標 'enableinternetsecurity' 設定為 true,0.0.0.0/0 路由才會生效。
虛擬網路連線不支援輪輻 VNet 中「相同」網路虛擬設備的「多重/唯一」下一個躍點 IP,「如果」其中一個具有下一個躍點 IP 的路由表示為公用 IP 位址或 0.0.0.0.0/0(因特網)。
當 0.0.0.0/0 設定為虛擬網路連線上的靜態路由時,該路由會套用至所有流量,包括輪輻本身內的資源。 這表示所有流量都轉送至靜態路由的下一個躍點 IP 位址 (NVA 私人 IP)。 因此,在具有 0.0.0.0/0 路由的部署中,在輪輻虛擬網路連線上設定下一個躍點 NVA IP 位址的部署中,若要直接存取與 NVA 相同的虛擬網路中的工作負載(也就是讓流量不會通過 NVA),請在輪輻虛擬網路連線上指定 /32 路由。 例如,假設您要直接存取 10.1.3.1,請在輪輻虛擬網路連線上指定 10.1.3.1/32 下一個躍點 10.1.3.1。
為了簡化路由,並盡量不變更虛擬 WAN 中樞路由表,建議使用新的「與虛擬 WAN 中樞建立 BGP 對等互連」選項。