共用方式為


使用受控網路網狀架構服務來設定 L2 和 L3 隔離網域

隔離網域可讓裝載於相同機架 (機架內部通訊) 或不同機架 (機架間通訊) 的工作負載進行通訊。 本操作說明描述如何使用 Azure 命令列介面 (AzureCLI) 來管理第 2 層和第 3 層隔離網域。 您可以建立、更新、刪除和檢查第 2 層和第 3 層隔離網域的狀態。

必要條件

  1. 確定已建立網路網狀架構控制器 (NFC) 和網路網狀架構。

  2. 安裝最新版的必要 CLI 延伸模組

  3. 使用下列命令登入 Azure 帳戶,並將訂用帳戶設定為 Azure 訂用帳戶識別碼。 這應該與您用於 Azure 運算子連接點執行個體中所有資源的訂用帳戶識別碼相同。

    az login
    az account set --subscription ********-****-****-****-*********
  1. 註冊受控網路網狀架構的提供者:
    1. 在 Azure CLI 中,輸入命令 az provider register --namespace Microsoft.ManagedNetworkFabric

    2. 使用命令 az provider show -n Microsoft.ManagedNetworkFabric -o table 監視註冊程序。

      註冊最多可能需要 10 分鐘的時間。 完成時,輸出中的 RegistrationState 會變更為 Registered

隔離網域可用來在裝載於 Azure 運算子連接點執行個體和外部網路的工作負載之間啟用第 2 層或第 3 層連線。

注意

運算子連接點會保留 VLAN <=500 供平台使用,因此這個範圍內的 VLAN 無法用於 (租用戶) 工作負載網路。 請使用 501 到 4095 之間的 VLAN 值。

用於管理隔離網域的參數

參數 描述 範例 必要
resource-group 使用特別適用於所選 ISD 的資源群組名稱 resourceGroupName True
resource-name l2isolationDomain 的資源名稱 example-l2domain True
location 操作員 Nexus 在 NFC 建立期間所使用的 Azure 區域 eastus True
nf-Id 網路網狀架構識別碼 「/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFresourcegroupname/providers/Microsoft.ManagedNetworkFabric/NetworkFabrics/NFname」 True
Vlan-id VLAN 識別碼值。 VLAN 1-500 已保留,無法使用。 VLAN 識別碼值一經指定就無法加以變更。 如果需要修改 VLAN 識別碼值,則必須先刪除隔離網域再重新建立。 範圍是 501-4095 之間 501 True
mtu 如果未指定,最大傳輸單位會預設為 1500 1500
administrativeState 啟用/停用可指出 isolationDomain 的系統管理狀態 啟用
subscriptionId 運算子連接點執行個體的 Azure subscriptionId。
provisioningState 指出佈建狀態

L2 隔離網域

您可以使用 L2 隔離網域,在執行於運算子連接點計算節點上的工作負載之間建立第 2 層連線能力。

建立 L2 隔離網域

建立 L2 隔離網域:

az networkfabric l2domain create \
--resource-group "ResourceGroupName" \
--resource-name "example-l2domain" \
--location "eastus" \
--nf-id "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/NetworkFabrics/NFname" \
--vlan-id  750\
--mtu 1501

預期輸出:

{
  "administrativeState": "Disabled",		 
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/example-l2domain",
  "location": "eastus",
  "mtu": 1501,
  "name": "example-l2domain",
  "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFresourcegroupname/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2023-XX-XXT14:57:59.167177+00:00",
    "createdBy": "email@address.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT14:57:59.167177+00:00",
    "lastModifiedBy": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx",
    "lastModifiedByType": "Application"
  },			   
  "type": "microsoft.managednetworkfabric/l2isolationdomains",
  "vlanId": 750
}

顯示 L2 隔離網域

此命令會顯示 L2 隔離網域的詳細資料,包括其系統管理狀態:

az networkfabric l2domain show --resource-group "ResourceGroupName" --resource-name "example-l2domain"

預期輸出

{
  "administrativeState": "Disabled",					 
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/example-l2domain",
  "location": "eastus",
  "mtu": 1501,
  "name": "example-l2domain",
  "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2023-XX-XXT14:57:59.167177+00:00",
    "createdBy": "email@address.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT14:57:59.167177+00:00",
    "lastModifiedBy": "d1bd24c7-b27f-477e-86dd-939e1078890",
    "lastModifiedByType": "Application"
  },			   
  "type": "microsoft.managednetworkfabric/l2isolationdomains",
  "vlanId": 750
}

列出所有 L2 隔離網域

此命令會列出資源群組中所有可用的 L2 隔離網域。

az networkfabric l2domain list --resource-group "ResourceGroupName"

預期輸出

 {
    "administrativeState": "Enabled",
    "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/example-l2domain",
    "location": "eastus",
    "mtu": 1501,
    "name": "example-l2domain",
    "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxxxxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
    "provisioningState": "Succeeded",
    "resourceGroup": "ResourceGroupName",
    "systemData": {
      "createdAt": "2022-XX-XXT22:26:33.065672+00:00",
      "createdBy": "email@address.com",
      "createdByType": "User",
      "lastModifiedAt": "2022-XX-XXT14:46:45.753165+00:00",
      "lastModifiedBy": "d1bd24c7-b27f-477e-86dd-939e107873d7",
      "lastModifiedByType": "Application"
    },
    "type": "microsoft.managednetworkfabric/l2isolationdomains",
    "vlanId": 750
  }

變更 L2 隔離網域的系統管理狀態

您必須啟用隔離網域,才能將設定推送至網路網狀架構裝置。 使用下列命令來變更隔離網域的系統管理狀態:

az networkfabric l2domain update-admin-state --resource-group "ResourceGroupName" --resource-name "example-l2domain" --state Enable/Disable

預期輸出

{
  "administrativeState": "Enabled",
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/example-l2domain",
  "location": "eastus",
  "mtu": 1501,
  "name": "example-l2domain",
  "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2023-XX-XXT14:57:59.167177+00:00",
    "createdBy": "email@address.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT14:57:59.167177+00:00",
    "lastModifiedBy": "d1bd24c7-b27f-477e-86dd-939e107873d7",
    "lastModifiedByType": "Application"
  },
  "type": "microsoft.managednetworkfabric/l2isolationdomains",
  "vlanId": 501
}

刪除 L2 隔離網域

使用此命令來刪除 L2 隔離網域:

az networkfabric l2domain delete --resource-group "ResourceGroupName" --resource-name "example-l2domain"

預期輸出:

Please use show or list command to validate that isolation-domain is deleted. Deleted resources will not appear in result

設定 L3 隔離網域

第 3 層隔離網域可在執行於運算子連接點計算節點上的工作負載之間啟用第 3 層連線能力。 L3 隔離網域可讓工作負載與網路網狀架構裝置交換第 3 層資訊。

第 3 層隔離網域有兩個元件:

  • 「內部網路」會定義執行於 Azure 運算子連接點計算節點和選擇性外部網路上的網路網狀架構之間的第 3 層連線能力。 您必須建立至少一個內部網路。
  • 「外部網路」會透過 PE 提供網際網路與內部網路之間的連線能力。

L3 隔離網域可讓您部署會透過 BGP 向網狀架構公告服務 IP 的工作負載。

L3 隔離網域有兩個 ASN:

  • 「網狀架構 ASN」是指網狀架構上的網路裝置 ASN。 建立網路網狀架構時便指定了網狀架構 ASN。
  • 「對等 ASN」是指運算子連接點中的網路功能 ASN,其不能與網狀架構 ASN 相同。

成功佈建 L3 隔離網域的工作流程如下所示:

  • 建立 L3 隔離網域
  • 建立一或多個內部網路
  • 啟用 L3 隔離網域

若要變更 L3 隔離網域,請先停用 L3 隔離網域 (系統管理狀態)。 完成變更後,重新啟用 L3 隔離網域 (AdministrativeState 狀態):

  • 停用 L3 隔離網域
  • 變更 L3 隔離網域
  • 重新啟用 L3 隔離網域

顯示、啟用/停用和刪除 IPv6 型隔離網域的程序與 IPv4 所用的程序相同。 用於建立隔離網域的 VLAN 範圍是 501-4095

下列參數可用於設定 L3 隔離網域。

參數 描述 範例 必要
resource-group 使用特別適用於所選 ISD 的資源群組名稱 resourceGroupName True
resource-name l3isolationDomain 的資源名稱 example-l3domain True
location 操作員 Nexus 在 NFC 建立期間所使用的 Azure 區域 eastus True
nf-Id 在建立 NFC 時所使用的 Azure subscriptionId 「/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/NetworkFabrics/NFName」 True

以下是選擇性的隔離網域參數。

參數 描述 範例 必要
redistributeConnectedSubnet 公告連線的子網路預設值為 True True
redistributeStaticRoutes 公告靜態路由的值可以是 true/False。 預設值為 False False
aggregateRouteConfiguration Ipv4 和 Ipv6 路由設定的清單
connectedSubnetRoutePolicy IPv4 或 Ipv6 L3 ISD 連線子網路的路由原則設定。 請參閱說明檔案,以使用正確的語法

建立 L3 隔離網域

使用此命令來建立 L3 隔離網域:

az networkfabric l3domain create 
--resource-group "ResourceGroupName" 
--resource-name "example-l3domain"
--location "eastus" 
--nf-id "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/NetworkFabrics/NFName"

注意

如需透過 PE 裝置對外部網路進行 MPLS 選項 10 (B) 連線,您可以在建立隔離網域時指定選項 (B) 參數。

預期輸出

{
  "administrativeState": "Disabled",
  "configurationState": "Succeeded",								 
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain",
  "location": "eastus",
  "name": "example-l3domain",
  "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
  "provisioningState": "Succeeded",
  "redistributeConnectedSubnets": "True",
  "redistributeStaticRoutes": "False",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2022-XX-XXT06:23:43.372461+00:00",
    "createdBy": "email@example.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT09:40:38.815959+00:00",
    "lastModifiedBy": "d1bd24c7-b27f-477e-86dd-939e10787367",
    "lastModifiedByType": "Application"
  },			   
  "type": "microsoft.managednetworkfabric/l3isolationdomains"
}

建立不受信任的 L3 隔離網域

az networkfabric l3domain create --resource-group "ResourceGroupName" --resource-name "l3untrust" --location "eastus" --nf-id "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName" 

建立受信任的 L3 隔離網域

az networkfabric l3domain create --resource-group "ResourceGroupName" --resource-name "l3trust" --location "eastus" --nf-id "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName"

建立管理 L3 隔離網域

az networkfabric l3domain create --resource-group "ResourceGroupName" --resource-name "l3mgmt" --location "eastus" --nf-id "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName"

顯示 L3 隔離網域

您可以取得 L3 隔離網域詳細資料和系統管理狀態。

az networkfabric l3domain show --resource-group "ResourceGroupName" --resource-name "example-l3domain"

預期輸出

{
  "administrativeState": "Disabled",
  "configurationState": "Succeeded",				 								 
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain",
  "location": "eastus",
  "name": "example-l3domain",
  "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
  "provisioningState": "Succeeded",
  "redistributeConnectedSubnets": "True",
  "redistributeStaticRoutes": "False",
  "resourceGroup": "2023-XX-XXT09:40:38.815959+00:00",
  "systemData": {
    "createdAt": "2023-XX-XXT09:40:38.815959+00:00",
    "createdBy": "email@example.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT09:40:46.923037+00:00",
    "lastModifiedBy": "d1bd24c7-b27f-477e-86dd-939e10787456",
    "lastModifiedByType": "Application"
  },			   
  "type": "microsoft.managednetworkfabric/l3isolationdomains"
}

列出所有 L3 隔離網域

使用此命令來取得資源群組中所有可用的 L3 隔離網域清單:

az networkfabric l3domain list --resource-group "ResourceGroupName"

預期輸出

{
    "administrativeState": "Disabled",
    "configurationState": "Succeeded",					 							 
    "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain",
    "location": "eastus",
    "name": "example-l3domain",
    "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
    "provisioningState": "Succeeded",
    "redistributeConnectedSubnets": "True",
    "redistributeStaticRoutes": "False",
    "resourceGroup": "ResourceGroupName",
    "systemData": {
      "createdAt": "2023-XX-XXT09:40:38.815959+00:00",
      "createdBy": "email@example.com",
      "createdByType": "User",
      "lastModifiedAt": "2023-XX-XXT09:40:46.923037+00:00",
      "lastModifiedBy": "d1bd24c7-b27f-477e-86dd-939e10787890",
      "lastModifiedByType": "Application"
    },			   
    "type": "microsoft.managednetworkfabric/l3isolationdomains"
  }

變更 L3 隔離網域的系統管理狀態

使用下列命令將 L3 隔離網域的系統管理狀態變更為已啟用或已停用:

##Note:至少應該有一個內部網络可用來變更 L3 隔離網域的系統管理狀態。

az networkfabric l3domain update-admin-state --resource-group "ResourceGroupName" --resource-name "example-l3domain" --state Enable/Disable

預期輸出

{
  "administrativeState": "Enabled",
  "configurationState": "Succeeded",		
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain",				 
  "location": "eastus",
  "name": "example-l3domain",
  "networkFabricId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/NFresourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/NFName",
  "provisioningState": "Succeeded",
  "redistributeConnectedSubnets": "True",
  "redistributeStaticRoutes": "False",
  "resourceGroup": "NFResourceGroupName",
  "systemData": {
    "createdAt": "2023-XX-XXT06:23:43.372461+00:00",
    "createdBy": "email@address.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT06:25:53.240975+00:00",
    "lastModifiedBy": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx",
    "lastModifiedByType": "Application"
  },				 
  "type": "microsoft.managednetworkfabric/l3isolationdomains"
}

使用 az show 命令來確認系統管理狀態是否已變更為 Enabled

刪除 L3 隔離網域

使用此命令來刪除 L3 隔離網域:

 az networkfabric l3domain delete --resource-group "ResourceGroupName" --resource-name "example-l3domain"

使用 showlist 命令來驗證是否已刪除隔離網域。

建立內部網路

成功建立 L3 隔離網域後,下一個步驟是建立內部網路。 內部網路可藉由與網狀架構交換路由,在工作負載之間啟用第 3 層的機架間和機架內部通訊。 L3 隔離網域可以支援多個內部網路,且每個網路位於不同 VLAN 上。

下圖展現具有三個內部網路的範例網路功能:受信任、不受信任和管理。 每個內部網路都建立在自己的 L3 隔離網域中。

圖表:具有三個內部網路的網路函數。

這些網路的 IPv4 前置詞如下:

  • 受信任的網路:10.151.1.11/24
  • 管理網路:10.151.2.11/24
  • 不受信任的網路:10.151.3.11/24

以下是可用於建立內部網路的參數。

參數 描述 範例 必要
vlan-Id 範圍從 501 到 4095 的 VLAN 識別碼 1001 True
resource-group 使用對應的 NFC 資源群組名稱 NFCresourcegroupname True
l3-isolation-domain-name l3isolationDomain 的資源名稱 example-l3domain True
location 操作員 Nexus 在 NFC 建立期間所使用的 Azure 區域 eastus True

以下是可用於建立內部網路的選擇性參數。

參數 描述 範例 必要
connectedIPv4Subnets HAKS 叢集的工作負載所使用的 IPv4 子網路 10.0.0.0/24
connectedIPv6Subnets HAKS 叢集的工作負載所使用的 IPv6 子網路 10:101:1::1/64
staticRouteConfiguration 靜態路由的 IPv4/IPv6 前置詞 IPv4 10.0.0.0/24 和 Ipv6 10:101:1::1/64
staticRouteConfiguration->extension 內部網路靜態路由的擴充旗標 NoExtension/NPB
bgpConfiguration IPv4 nexthop 位址 10.0.0.0/24
defaultRouteOriginate True/False「允許在透過 BGP 公告路由時以預設路由作為來源」 True
peerASN 網路功能的對等 ASN 65047
allowAS 即使路由器在 AS-Path 中偵測到自己的 ASN,仍允許接收和處理路由。 輸入為 0 是停用,可能的值為 1-10,預設值為 2。 2
allowASOverride 啟用或停用 allowAS 啟用
extension 內部網路的擴充旗標 NoExtension/NPB
ipv4ListenRangePrefixes BGP IPv4 接聽範圍,允許的最大範圍在 /28 10.1.0.0/26
ipv6ListenRangePrefixes BGP IPv6 接聽範圍,允許的最大範圍在 /127 3FFE:FFFF:0:CD30::/127
ipv4ListenRangePrefixes BGP IPv4 接聽範圍,允許的最大範圍在 /28 10.1.0.0/26
ipv4NeighborAddress IPv4 芳鄰位址 10.0.0.11
ipv6NeighborAddress IPv6 芳鄰位址 10:101:1::11
isMonitoringEnabled 在內部網路上啟用或停用監視 False

您必須先建立內部網路,才能啟用 L3 隔離網域。 此命令會建立具有 BGP 設定和指定對等互連位址的內部網路:

az networkfabric internalnetwork create 
--resource-group "ResourceGroupName" 
--l3-isolation-domain-name "example-l3domain" 
--resource-name "example-internalnetwork" 
--vlan-id 805 
--connected-ipv4-subnets '[{"prefix":"10.1.2.0/24"}]' 
--mtu 1500 
--bgp-configuration  '{"defaultRouteOriginate": "True", "allowAS": 2, "allowASOverride": "Enable", "PeerASN": 65535, "ipv4ListenRangePrefixes": ["10.1.2.0/28"]}'

預期輸出

{
  "administrativeState": "Enabled",
  "bgpConfiguration": {
    "allowAS": 2,
    "allowASOverride": "Enable",
    "defaultRouteOriginate": "True",
    "fabricASN": 65050,
    "ipv4ListenRangePrefixes": [
      "10.1.2.0/28"
    ],
    "peerASN": 65535
  },
  "configurationState": "Succeeded",
  "connectedIPv4Subnets": [
    {
      "prefix": "10.1.2.0/24"
    }
  ],
  "extension": "NoExtension",
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain/internalNetworks/example-internalnetwork",
  "isMonitoringEnabled": "True",
  "mtu": 1500,
  "name": "example-internalnetwork",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2023-XX-XXT04:32:00.8159767Z",
    "createdBy": "email@example.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT04:32:00.8159767Z",
    "lastModifiedBy": "email@example.com",
    "lastModifiedByType": "User"
  },
  "type": "microsoft.managednetworkfabric/l3isolationdomains/internalnetworks",
  "vlanId": 805
}

為 L3 隔離網域建立不受信任的內部網路

az networkfabric internalnetwork create --resource-group "ResourceGroupName" --l3-isolation-domain-name l3untrust --resource-name untrustnetwork --location "eastus" --vlan-id 502 --fabric-asn 65048 --peer-asn 65047--connected-i-pv4-subnets prefix="10.151.3.11/24" --mtu 1500

為 L3 隔離網域建立受信任的內部網路

az networkfabric internalnetwork create --resource-group "ResourceGroupName" --l3-isolation-domain-name l3trust --resource-name trustnetwork --location "eastus" --vlan-id 503 --fabric-asn 65048 --peer-asn 65047--connected-i-pv4-subnets prefix="10.151.1.11/24" --mtu 1500

為 L3 隔離網域建立內部管理網路

az networkfabric internalnetwork create --resource-group "ResourceGroupName" --l3-isolation-domain-name l3mgmt --resource-name mgmtnetwork --location "eastus" --vlan-id 504 --fabric-asn 65048 --peer-asn 65047--connected-i-pv4-subnets prefix="10.151.2.11/24" --mtu 1500

使用單一的下一個躍點來建立多個靜態路由

az networkfabric internalnetwork create --resource-group "fab2nfrg180723" --l3-isolation-domain-name "example-l3domain" --resource-name "example-internalNetwork" --vlan-id 2600 --mtu 1500 --connected-ipv4-subnets "[{prefix:'10.2.0.0/24'}]" --static-route-configuration '{extension:NPB,bfdConfiguration:{multiplier:5,intervalInMilliSeconds:300},ipv4Routes:[{prefix:'10.3.0.0/24',nextHop:['10.5.0.1']},{prefix:'10.4.0.0/24',nextHop:['10.6.0.1']}]}'

預期輸出

{
  "administrativeState": "Enabled",
  "configurationState": "Succeeded",
  "connectedIPv4Subnets": [
    {
      "prefix": "10.2.0.0/24"
    }
  ],
  "extension": "NoExtension",
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain/internalNetworks/example-internalnetwork",
  "isMonitoringEnabled": "True",
  "mtu": 1500,
  "name": "example-internalNetwork",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "staticRouteConfiguration": {
    "bfdConfiguration": {
      "administrativeState": "Disabled",
      "intervalInMilliSeconds": 300,
      "multiplier": 5
    },
    "extension": "NoExtension",
    "ipv4Routes": [
      {
        "nextHop": [
          "10.5.0.1"
        ],
        "prefix": "10.3.0.0/24"
      },
      {
        "nextHop": [
          "10.6.0.1"
        ],
        "prefix": "10.4.0.0/24"
      }
    ]
  },
  "systemData": {
    "createdAt": "2023-XX-XXT13:46:26.394343+00:00",
    "createdBy": "email@example.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT13:46:26.394343+00:00",
    "lastModifiedBy": "email@example.com",
    "lastModifiedByType": "User"
  },
  "type": "microsoft.managednetworkfabric/l3isolationdomains/internalnetworks",
  "vlanId": 2600
}

使用 IPv6 來建立內部網路

az networkfabric internalnetwork create --resource-group "fab2nfrg180723" --l3-isolation-domain-name "example-l3domain" --resource-name "example-internalnetwork" --vlan-id 2800 --connected-ipv6-subnets '[{"prefix":"10:101:1::0/64"}]' --mtu 1500

預期輸出

{
  "administrativeState": "Enabled",
  "configurationState": "Succeeded",
  "connectedIPv6Subnets": [
    {
      "prefix": "10:101:1::0/64"
    }
  ],
  "extension": "NoExtension",
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3domain2/internalNetworks/example-internalnetwork",
  "isMonitoringEnabled": "True",
  "mtu": 1500,
  "name": "example-internalnetwork",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2023-XX-XXT10:34:33.933814+00:00",
    "createdBy": "email@example.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT10:34:33.933814+00:00",
    "lastModifiedBy": "email@example.com",
    "lastModifiedByType": "User"
  },
  "type": "microsoft.managednetworkfabric/l3isolationdomains/internalnetworks",
  "vlanId": 2800
}

建立外部網路

外部網路可讓工作負載與提供者邊緣具有第 3 層連線能力。 其也可讓工作負載與防火牆和 DNS 等外部服務互動。 您需要網狀架構 ASN (在建立網路網狀架構時所建立) 才能建立外部網路。

使用 Azure CLI 來建立外部網路的命令包含下列參數。

參數 描述 範例 必要
peeringOption 使用 optionA 或 optionB 進行對等互連。 可能的值為 OptionA 和 OptionB OptionB True
optionBProperties OptionB 屬性設定。 若要指定,請使用 exportIPv4/IPv6RouteTargets 或 importIpv4/Ipv6RouteTargets "exportIpv4/Ipv6RouteTargets": ["1234:1234"]}}
optionAProperties OptionA 屬性的設定。 請參閱下一節的 OptionA 範例
external 這是可輸入的選擇性參數,可透過提供者邊緣裝置對外部網路進行 MPLS 選項 10 (B) 連線。 使用此選項時,使用者可以輸入匯入和匯出路由目標,如範例所示

若為選項 A,您必須先建立外部網路,才能啟用 L3 隔離網域。 外部網路相依於內部網路,因此若沒有內部網路,就無法啟用外部網路。 vlan-id 值應在 501 到 4095 之間。

使用選項 B 建立外部網路

az networkfabric externalnetwork create --resource-group "ResourceGroupName" --l3domain "examplel3-externalnetwork" --resource-name "examplel3-externalnetwork" --peering-option "OptionB" --option-b-properties "{routeTargets:{exportIpv4RouteTargets:['65045:2001'],importIpv4RouteTargets:['65045:2001']}}"

預期輸出


{
  "administrativeState": "Enabled",
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain/externalNetworks/examplel3-externalnetwork",
  "name": "examplel3-externalnetwork",
  "optionBProperties": {
    "exportRouteTargets": [
      "65045:2001"
    ],
    "importRouteTargets": [
      "65045:2001"
    ],
    "routeTargets": {
      "exportIpv4RouteTargets": [
        "65045:2001"
      ],
      "importIpv4RouteTargets": [
        "65045:2001"
      ]
    }
  },
  "peeringOption": "OptionB",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2023-XX-XXT15:45:31.938216+00:00",
    "createdBy": "email@address.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT15:45:31.938216+00:00",
    "lastModifiedBy": "email@address.com",
    "lastModifiedByType": "User"
  },
  "type": "microsoft.managednetworkfabric/l3isolationdomains/externalnetworks"
}

使用選項 A 建立外部網路

az networkfabric externalnetwork create --resource-group "ResourceGroupName" --l3domain "example-l3domain" --resource-name "example-externalipv4network" --peering-option "OptionA" --option-a-properties '{"peerASN": 65026,"vlanId": 2423, "mtu": 1500, "primaryIpv4Prefix": "10.18.0.148/30", "secondaryIpv4Prefix": "10.18.0.152/30"}'

預期輸出

{
  "administrativeState": "Enabled",
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain/externalNetworks/example-externalipv4network",
  "name": "example-externalipv4network",
  "optionAProperties": {
    "fabricASN": 65050,
    "mtu": 1500,
    "peerASN": 65026,
    "primaryIpv4Prefix": "10.21.0.148/30",
    "secondaryIpv4Prefix": "10.21.0.152/30",
    "vlanId": 2423
  },
  "peeringOption": "OptionA",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2023-07-19T09:54:00.4244793Z",
    "createdAt": "2023-XX-XXT07:23:54.396679+00:00", 
    "createdBy": "email@address.com",
    "lastModifiedAt": "2023-XX-XX1T07:23:54.396679+00:00", 
    "lastModifiedBy": "email@address.com",
    "lastModifiedByType": "User"
  },
  "type": "microsoft.managednetworkfabric/l3isolationdomains/externalnetworks"
}

使用 Ipv6 建立外部網路

az networkfabric externalnetwork create --resource-group "ResourceGroupName" --l3domain "example-l3domain" --resource-name "example-externalipv6network" --peering-option "OptionA" --option-a-properties '{"peerASN": 65026,"vlanId": 2423, "mtu": 1500, "primaryIpv6Prefix": "fda0:d59c:da16::/127", "secondaryIpv6Prefix": "fda0:d59c:da17::/127"}'

支援的主要和次要 IPv6 前置詞大小為 /127。

預期輸出

{
  "administrativeState": "Enabled",
  "id": "/subscriptions//xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFResourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/example-l3domain/externalNetworks/example-externalipv6network",
  "name": "example-externalipv6network",
  "optionAProperties": {
    "fabricASN": 65050,
    "mtu": 1500,
    "peerASN": 65026,
    "primaryIpv6Prefix": "fda0:d59c:da16::/127",
    "secondaryIpv6Prefix": "fda0:d59c:da17::/127",
    "vlanId": 2423
  },
  "peeringOption": "OptionA",
  "provisioningState": "Succeeded",
  "resourceGroup": "ResourceGroupName",
  "systemData": {
    "createdAt": "2022-XX-XXT07:52:26.366069+00:00",
    "createdBy": "email@address.com",
    "createdByType": "User",
    "lastModifiedAt": "2022-XX-XXT07:52:26.366069+00:00",
    "lastModifiedBy": "email@address.com",
    "lastModifiedByType": "User"
  },
  "type": "microsoft.managednetworkfabric/l3isolationdomains/externalnetworks"
}

啟用 L2 隔離網域

az networkfabric l2domain update-administrative-state --resource-group "ResourceGroupName" --resource-name "l2HAnetwork" --state Enable 

啟用 L3 隔離網域

使用此命令來啟用不受信任的 L3 隔離網域:

az networkfabric l3domain update-admin-state --resource-group "ResourceGroupName" --resource-name "l3untrust" --state Enable 

使用此命令來啟用受信任的 L3 隔離網域:

az networkfabric l3domain update-admin-state --resource-group "ResourceGroupName" --resource-name "l3trust" --state Enable 

使用此命令來啟用管理 L3 隔離網域:

az networkfabric l3domain update-admin-state --resource-group "ResourceGroupName" --resource-name "l3mgmt" --state Enable