Share via


針對 Microsoft 對等互連設定路由篩選:Azure CLI

路由篩選是一種透過 Microsoft 對等互連使用某些支援服務的方式。 這篇文章中的步驟可協助您設定和管理 ExpressRoute 線路的路由篩選。

Microsoft 365 服務,例如:Exchange Online、SharePoint Online 和商務用 Skype,可透過 Microsoft 對等互連來存取。 在 ExpressRoute 線路中設定 Microsoft 對等互連時,與這些服務相關的所有前置詞都會透過建立的 BGP 工作階段來進行公告。 BGP 社群值附加至每個前置詞,來識別透過前置詞提供的服務。 如需 BGP 社群值及其對應服務的清單,請參閱 BGP 社群

與所有 Azure 和 Microsoft 365 服務的連線會導致大量的前置詞透過 BGP 進行公告。 大量前置詞會大幅增加網路內路由器所維護的路由表大小。 如果您打算只取用透過 Microsoft 對等互連所提供的一組服務,您可以透過兩種方式降低路由表的大小。 您可以:

  • 在 BGP 社群上套用路由篩選器,以篩選掉不必要的前置詞。 路由篩選是標準的網路作法,經常在許多網路中使用。

  • 定義路由篩選器,並將其套用至您的 ExpressRoute 線路。 路由篩選器是新的資源,可讓您選取您計畫透過 Microsoft 對等互連取用的服務清單。 ExpressRoute 路由器只會傳送屬於路由篩選器中識別之服務的前置詞清單。

Diagram of a route filter applied to the ExpressRoute circuit to allow only certain prefixes to be broadcast to the on-premises network.

關於路由篩選器

在 ExpressRoute 線路上設定 Microsoft 對等互連後,Microsoft Edge 路由器會透過您的連線提供者,建立一組搭配 Edge 路由器使用的 BGP 工作階段。 沒有路由會公告至您的網路。 若要讓路由公告至您的網路,您必須建立與路由篩選的關聯。

路由篩選可讓您識別想要透過 ExpressRoute 線路的 Microsoft 對等互連使用的服務。 這基本上是所有 BGP 社群值的允許清單。 一旦定義路由篩選資源,並且連結至 ExpressRoute 線路,對應到 BGP 社群值的所有前置詞都會公告至您的網路。

若要使用 Microsoft 365 服務連結路由篩選條件,您必須具有透過 ExpressRoute 取用 Microsoft 365 服務的授權。 如果您未獲授權透過 ExpressRoute 取用 Microsoft 365 服務,連結路由篩選器的作業會失敗。 如需授權程序的詳細資訊,請參閱 Microsoft 365 的 Azure ExpressRoute

重要

在 2017 年 8 月 1 日以前設定之 ExpressRoute 線路的 Microsoft 對等互連,會透過 Microsoft 對等互連公告所有 Microsoft Office 服務首碼,即使未定義路由篩選也一樣。 在 2017 年 8 月 1 日當日或之後設定之 ExpressRoute 線路的 Microsoft 對等互連,不會公告任何前置詞,直到路由篩選連結至線路為止。

必要條件

若要成功透過 Microsoft 對等互連連線到服務,您必須完成下列設定步驟:

  • 您必須具有已佈建 Microsoft 對等互連的使用中 ExpressRoute 線路。 您可以使用下列指示來完成這些工作:
    • 繼續之前,請建立 ExpressRoute 線路,並由您的連線提供者來啟用該線路。 ExpressRoute 線路必須處於已佈建及已啟用的狀態。
    • 建立 Microsoft 對等互連,如果您直接管理 BGP 工作階段。 或者,讓您的連線提供者為您的線路佈建 Microsoft 對等互連。

Azure Cloud Shell

Azure Cloud Shell 是裝載於 Azure 中的互動式殼層環境,可在瀏覽器中使用。 您可以使用 Bash 或 PowerShell 搭配 Cloud Shell,與 Azure 服務共同使用。 您可以使用 Cloud Shell 預先安裝的命令,執行本文提到的程式碼,而不必在本機環境上安裝任何工具。

要啟動 Azure Cloud Shell:

選項 範例/連結
選取程式碼或命令區塊右上角的 [試試看]。 選取 [試試看] 並不會自動將程式碼或命令複製到 Cloud Shell 中。 Screenshot that shows an example of Try It for Azure Cloud Shell.
請前往 https://shell.azure.com,或選取 [啟動 Cloud Shell] 按鈕,在瀏覽器中開啟 Cloud Shell。 Button to launch Azure Cloud Shell.
選取 Azure 入口網站右上方功能表列上的 [Cloud Shell] 按鈕。 Screenshot that shows the Cloud Shell button in the Azure portal

若要使用 Azure Cloud Shell:

  1. 啟動 Cloud Shell。

  2. 選取程式碼區塊 (或命令區塊) 上的 [複製] 按鈕以複製程式碼或命令。

  3. 透過在 Windows 和 Linux 上選取 Ctrl+Shift+V;或在 macOS 上選取 Cmd+Shift+V,將程式碼或命令貼到 Cloud Shell 工作階段中。

  4. 選取 Enter 鍵執行程式碼或命令。

如果您選擇在本機安裝和使用 CLI,本教學課程需要 Azure CLI 2.0.28 版或更新版本。 若要尋找版本,請執行 az --version。 如果您需要安裝或升級,請參閱安裝 Azure CLI 模組

登入您的 Azure 帳戶並且選取您的訂用帳戶

若要開始您的組態,請登入您的 Azure 帳戶。 如果您使用「試用」,則會自動登入,可略過登入步驟。 使用下列範例來協助您連接:

az login

檢查帳戶的訂用帳戶。

az account list

選取您想要建立 ExpressRoute 線路的訂用帳戶。

az account set --subscription "<subscription ID>"

取得前置詞和 BGP 社群值的清單

  1. 使用下列 Cmdlet 來取得與可透過 Microsoft 對等互連存取的服務相關聯 BGP 社群值和前置詞清單:

    az network route-filter rule list-service-communities
    
  2. 製作您想要在路由篩選中使用的 BGP 社群值清單。

建立路由篩選器和篩選規則

路由篩選器只能有一個規則,且規則的類型必須是 'Allow'。 此規則可以擁有與其相關聯的 BGP 社群值清單。 az network route-filter create 命令只會建立路由篩選資源。 建立資源之後,您必須建立規則,然後將它附加到路由篩選物件。

  1. 若要建立路由篩選資源,請執行下列命令:

    az network route-filter create -n MyRouteFilter -g MyResourceGroup
    
  2. 若要建立路由篩選規則,請執行下列命令:

    az network route-filter rule create --filter-name MyRouteFilter -n CRM --communities 12076:5040 --access Allow -g MyResourceGroup
    

將路由篩選器連結至 ExpressRoute 線路

執行下列命令以將路由篩選連結至 ExpressRoute 線路:

az network express-route peering update --circuit-name MyCircuit -g ExpressRouteResourceGroupName --name MicrosoftPeering --route-filter MyRouteFilter

常見工作

取得路由篩選器的屬性

若要取得路由篩選的屬性,請使用下列命令:

az network route-filter show -g ExpressRouteResourceGroupName --name MyRouteFilter 

更新路由篩選器的屬性

如果路由篩選已連接到線路,BGP 社群清單更新會自動透過已建立的 BGP 工作階段傳播前置詞公告變更。 您可以使用下列命令來更新路由篩選的 BGP 社群清單:

az network route-filter rule update --filter-name MyRouteFilter -n CRM -g ExpressRouteResourceGroupName --add communities '12076:5040' --add communities '12076:5010'

中斷路由篩選器和 ExpressRoute 線路的連結

一旦從 ExpressRoute 線路取消連結路由篩選,就不會透過 BGP 工作階段公告任何前置詞。 您可以使用下列命令以從 ExpressRoute 線路取消連結路由篩選:

az network express-route peering update --circuit-name MyCircuit -g ExpressRouteResourceGroupName --name MicrosoftPeering --remove routeFilter

清除資源

您只能在路由篩選尚未連結至任何線路時刪除路由篩選。 請在嘗試刪除之前,確認路由篩選尚未連結至任何線路。 您可以使用下列命令來刪除路由篩選:

az network route-filter delete -n MyRouteFilter -g MyResourceGroup

後續步驟

如需路由器設定範例的相關資訊,請參閱: