中國區(qū) Azure 與 Palo Alto 之間的網(wǎng)絡(luò)方案

來源: Microsoft
作者:Microsoft
時間:2021-07-16
16826
隨著 Azure 平臺用戶越來越多,同時需求也越來越廣泛,其中之一就是網(wǎng)絡(luò)架構(gòu)上的需求,比如需要強大的應(yīng)用層防火墻,網(wǎng)絡(luò)訪問控制管理,網(wǎng)絡(luò)安全認證,出口網(wǎng)關(guān)統(tǒng)一等,而用戶為了滿足架構(gòu)需求,希望借助第三方網(wǎng)絡(luò)設(shè)備廠商來兼容 Azure 的網(wǎng)絡(luò)服務(wù)來實現(xiàn)。雖然看起來是一個很好的方式,但是其中存在著很多兼容問題以及需要通過實踐來測試架構(gòu)上的可行性。

隨著 Azure 平臺用戶越來越多,同時需求也越來越廣泛,其中之一就是網(wǎng)絡(luò)架構(gòu)上的需求,比如需要強大的應(yīng)用層防火墻,網(wǎng)絡(luò)訪問控制管理,網(wǎng)絡(luò)安全認證,出口網(wǎng)關(guān)統(tǒng)一等,而用戶為了滿足架構(gòu)需求,希望借助第三方網(wǎng)絡(luò)設(shè)備廠商來兼容 Azure 的網(wǎng)絡(luò)服務(wù)來實現(xiàn)。雖然看起來是一個很好的方式,但是其中存在著很多兼容問題以及需要通過實踐來測試架構(gòu)上的可行性。

本文旨在將經(jīng)驗總結(jié)分享給大家,希望對大家以后的工作和項目有所幫助。

內(nèi)容說明

  1. 以下內(nèi)容不涉及太多技術(shù)分析,以結(jié)果為主。

  2. 如今 Cloud 產(chǎn)業(yè)更新快速,因此不排除 Azure 與廠商之間兼容性會存在變化。

  3. 不涉及太多的 Palo Alto 的產(chǎn)品介紹,如果你選擇的廠商技術(shù)特點與之類似,可以借鑒。

  4. 以下內(nèi)容涉及到部分 Azure 基本知識,如果對某些服務(wù)不了解請查詢官方文檔。

環(huán)境介紹

  1. 由廠商 Palo Alto 提供如下資源:

    • Azure 的 VHD 鏡像文件:軟件版本號為 7.1.10。

    • 提供在 Azure 上部署的 Template 配置文件:多網(wǎng)卡并屬于不同的子網(wǎng)。

    • 產(chǎn)品 License 用于激活。

  2. 用提供的 VHD 創(chuàng)建 Azure 的 VM:

    • 使用 azcopy 將 VHD 鏡像上傳到 Storage Account。

    • 通過 Powershell/Portal/CLI 使用 Template 配置文件部署 VM。

    • 保證內(nèi)網(wǎng)地址可以 ICMP 可達。

    • 保證從外網(wǎng)通過 Azure VM 的VIP地址訪問到 Palos Alto 的 Web 管理界面。

  3. 注意點:

    • Palo Alto 提供的配置文件并不一定是一站式部署,很多資源可能需要自己去創(chuàng)建,比如存儲賬號,虛擬網(wǎng)絡(luò),子網(wǎng),資源組等。

    • 注意配置文件中的一些資源的參數(shù)可能會和你創(chuàng)建的資源有沖突,請仔細核對,比如存儲賬號里面的 SKU。

建立 IPsec 隧道場景介紹

  1. 不同 VNet 的 NVA 之間建立 IPsec 隧道:

    1-1

    部署步驟:

    • pavm1 :通過 Palo Alto 的 VHD 鏡像創(chuàng)建出來的 Azure VM1,并屬于 VNet1。

    • pavm2 :通過 Palo Alto 的 VHD 鏡像創(chuàng)建出來的 Azure VM2,并屬于 VNet2。

    • VNet Gateway 之間建立 VNetToVNet 連接。

    • 基于 VNetToVNet 連接,pavm1 與 pavm2 建立 IPsec 隧道。

    • 在 IPsec 隧道的基礎(chǔ)上實現(xiàn)路由傳遞。

  2. Azure NVA 與本地 Palo Alto 設(shè)備建立 IPsec 隧道:

    1-2

    部署步驟:

    • pavm1 :通過 Palo Alto 的 VHD 鏡像創(chuàng)建出來的 Azure VM1,并屬于 VNet1。

    • Local-PA :擁有獨立公網(wǎng)地址的 Palo Alto 硬件設(shè)備,目前沒有發(fā)現(xiàn)版本兼容性問題。

    • pavm1 的網(wǎng)卡綁定 PIP 地址。

    • Local-PA 通過 Internet 與 pavm1 的 PIP 建立 IPsec 隧道。

    • 在 IPsec 隧道的基礎(chǔ)上實現(xiàn)路由傳遞:BGP或者靜態(tài)。

  3. 通過 VPN Gateway 來實現(xiàn)本地 Palo Alto 設(shè)備與 Azure NVA 之間建立 IPsec 隧道:

    1-3

    部署步驟:

    • pavm1:通過 Palo Alto 的 VHD 鏡像創(chuàng)建出來的 Azure VM1,并屬于 VNet1。

    • Local-PA:擁有獨立公網(wǎng)地址的 Palo Alto 硬件設(shè)備,目前沒有發(fā)現(xiàn)版本兼容性問題。

    • Local-PA 通過 Internet 與 VPN Gateway 建立基于路由的 IPsec 隧道并傳遞內(nèi)網(wǎng)路由。

    • 基于此 IPsec 隧道,Local-PA 的私有地址與 pavm1 的私有地址建立 IPsec 隧道。

    • 在 IPsec 隧道的基礎(chǔ)上實現(xiàn)路由傳遞。

  4. 通過 Azure 出口轉(zhuǎn)發(fā)本地到 Internet 的流量:

    從以上介紹可以看出,基于 NVA 來建立 IPsec 隧道方式有多種,需要根據(jù)自身的網(wǎng)絡(luò)架構(gòu)需求來選擇最適合的方式,以下介紹一個較復(fù)雜的需求供各位參考:讓本地網(wǎng)絡(luò)去往 Internet 的流量通過 Azure 出口進行轉(zhuǎn)發(fā)。

    1-4

    部署步驟:

    • pavm2:通過 Palo Alto 的 VHD 鏡像創(chuàng)建出來的 Azure VM2,并屬于 VNet2。

    • Local-PA:擁有獨立公網(wǎng)地址的 Palo Alto 硬件設(shè)備,目前沒有發(fā)現(xiàn)版本兼容性問題。

    • Local-PA 通過 Internet 與 VNet1 中的 VPN Gateway 建立基于路由的 IPsec 隧道并建立 EBGP 鄰居。

    • VNet1 中的 VPN Gateway 與 pavm2 的 PIP 建立 IPsec 隧道并建立 EBGP 鄰居。

    • pavm2 在 BGP 路由協(xié)議中通告默認路由。

    • pavm2 配置 NIC 的默認路由。

    • pavm2 配置 NAT 條目,封裝來自本地網(wǎng)段的源地址為 NIC 的地址。

      本地網(wǎng)絡(luò) Internet 流量走向(綠色箭頭):

    • 本地網(wǎng)絡(luò)通過內(nèi)部路由轉(zhuǎn)發(fā)到 Local-PA。

    • Local-PA 根據(jù)從 BGP 學(xué)到的默認路由轉(zhuǎn)發(fā)到 VPN Gateway。

    • VPN Gateway 根據(jù)從 BGP 學(xué)到的默認路由轉(zhuǎn)發(fā)到 pavm2。

    • pavm2 根據(jù)配置的 NIC 的默認路由丟給 PIP,并將源地址封裝成 NIC 地址。

    • 將源地址轉(zhuǎn)化成 PIP 地址丟到公網(wǎng)。

      分析:

    • 為了網(wǎng)絡(luò)的擴展性,讓其中一個 VNet 中的 VPN Gateway 作為網(wǎng)絡(luò) Hub 是一個比較可行的方式。

    • BGP 路由協(xié)議是目前 VPN Gateway 唯一支持的動態(tài)路由協(xié)議。

    • 由于 Azure VM 的公網(wǎng)地址并不是直接綁定到 VM 上,而是對 VM 的 NIC 地址進行 NAT 的地址轉(zhuǎn)化,因此如果將 VM 作為路由器,還需要對轉(zhuǎn)發(fā)的流量進行 NAT 轉(zhuǎn)化。

    • 實現(xiàn)的方式有多種,各自都有利弊。

      目前以下方式無法實現(xiàn):

    • 由于 Azure VM 網(wǎng)絡(luò)禁用 GRE 協(xié)議,因此任何基于 GRE 的隧道技術(shù)都無法實現(xiàn)。

    • 避免在 VNet 中的 VPN Gateway 與同一個 VNet 中的 pavm 建立 BGP 鄰居并傳遞路由,可能會造成環(huán)路。

小結(jié)

如果您的網(wǎng)絡(luò)架構(gòu)會參考到部分文章內(nèi)容,請進行測試評估后再考慮部署,在部署過程中可能會遇到一些小問題,請咨詢相關(guān)廠商和 Azure 技術(shù)支持。

立即登錄,閱讀全文
版權(quán)說明:
本文內(nèi)容來自于Microsoft,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
優(yōu)質(zhì)服務(wù)商推薦
更多