本文件概述了刪除在Nexus網路架構中與網路到網路互連(NNI)相關的存取控制列表(ACL)的過程。
先決條件
使用 Azure Cloud Shell 中的 Bash 環境。 如需詳細資訊,請參閱開始使用 Azure Cloud Shell。
若要在本地執行 CLI 參考命令,請安裝 Azure CLI。 若您在 Windows 或 macOS 上執行,請考慮在 Docker 容器中執行 Azure CLI。 如需詳細資訊,請參閱 如何在 Docker 容器中執行 Azure CLI。
如果您使用的是本機安裝,請使用 az login 命令,透過 Azure CLI 來登入。 請遵循您終端機上顯示的步驟,完成驗證程序。 如需其他登入選項,請參閱 使用 Azure CLI 向 Azure 進行驗證。
出現提示時,請在第一次使用時安裝 Azure CLI 延伸模組。 如需擴充功能的詳細資訊,請參閱 使用和管理 Azure CLI 的擴充功能。
執行 az version 以尋找已安裝的版本和相依程式庫。 若要升級至最新版本,請執行 az upgrade。
- 設定訂閱(如有必要):
如果您有多個訂用帳戶,而且需要將其中一個訂用帳戶設定為預設訂用帳戶,您可以使用下列專案執行此動作:
az account set --subscription <subscription-id>
- 刪除與 NNI 相關聯的 ACL:
若要刪除套用在 NNI 或外部網路資源上的 ACL,請將 Null 值傳遞至 --ingress-acl-id 和 --egress-acl-id。
az networkfabric nni update --resource-group "<resource-group-name>" --resource-name "<nni-name>" --fabric "<fabric-name>" --ingress-acl-id null --egress-acl-id null
| 參數 | Description |
|---|---|
--resource-group |
包含網路網狀架構執行個體的資源群組名稱。 |
--resource-name |
要更新的網路網狀架構 NNI (網路對網路介面) 的名稱。 |
--fabric |
配置 NNI 的網路架構名稱。 |
--ingress-acl-id |
入口流量的訪問控制清單(ACL)的資源ID(若為空值則表示沒有特定ACL)。 |
--egress-acl-id |
針對出站流量的 egress 存取控制清單 (ACL) 的資源 ID(如無特定 ACL 則為空)。 |
備註
根據需求,可以更新入口、出口或兩者。
- Fabric 提交設定變更:
執行 fabric commit-configuration 以認可組態變更。
az networkfabric fabric commit-configuration --resource-group "<resource-group>" --resource-name "<fabric-name>"
| 參數 | Description |
|---|---|
--resource-group |
包含 Nexus Network Fabric 的資源群組名稱。 |
--resource-name |
將提交組態變更的 Nexus 網路網狀架構的名稱。 |
- 驗證變更:
使用命令 resource list 驗證變更。
刪除 NNI 中的 ACL 關聯
若要僅取消輸出ACL與NNI的關聯,請使用下列命令:
az networkfabric nni update --resource-group "<resource-group-name>" --resource-name "<nni-name>" --fabric "<fabric-name>" --egress-acl-id null
若要取消輸出和輸入ACL與NNI的關聯,請使用下列命令:
az networkfabric nni update --resource-group "<resource-group-name>" --resource-name "<nni-name>" --fabric "<fabric-name>" --egress-acl-id null --ingress-acl-id null
請確保將佔位符替換為實際的資源群組和 NNI 名稱,以確保精確執行。
取消輸出ACL與NNI關聯的示例
az networkfabric nni update --resource-group "example-rg" --resource-name "example-nni" --fabric "example-fabric" --egress-acl-id null
範例輸出:
{
"administrativeState": "Enabled",
"configurationState": "Accepted",
"id": "/subscriptions/xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/examplerg/providers/microsoft.managednetworkfabric/networkfabrics/examplefabric/networkToNetworkInterconnects/example-nni",
"ingressAclId": "/subscriptions/xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/examplerg/providers/microsoft.managednetworkfabric/accessControlLists/ingress-acl-1",
"isManagementType": "True",
"layer2Configuration": {
"interfaces": [
"/subscriptions/xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/examplerg/providers/Microsoft.ManagedNetworkFabric/networkDevices/examplefabric-AggrRack-CE1/networkInterfaces/Ethernet1-1",
"/subscriptions/xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/examplerg/providers/Microsoft.ManagedNetworkFabric/networkDevices/examplefabric-AggrRack-CE1/networkInterfaces/Ethernet2-1",
"/subscriptions/xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/examplerg/providers/Microsoft.ManagedNetworkFabric/networkDevices/examplefabric-AggrRack-CE2/networkInterfaces/Ethernet1-1",
"/subscriptions/xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/examplerg/providers/Microsoft.ManagedNetworkFabric/networkDevices/examplefabric-AggrRack-CE2/networkInterfaces/Ethernet2-1"
],
"mtu": 1500
},
"name": "example-nni",
"nniType": "CE",
"optionBLayer3Configuration": {
"fabricASN": 65025,
"peerASN": 65025,
"primaryIpv4Prefix": "10.29.0.8/30",
"primaryIpv6Prefix": "fda0:d59c:df01::4/127",
"secondaryIpv4Prefix": "10.29.0.12/30",
"secondaryIpv6Prefix": "fda0:d59c:df01::6/127",
"vlanId": 501
},
"provisioningState": "Succeeded",
"resourceGroup": "examplerg",
"systemData": {
"createdAt": "2023-08-07T20:40:53.9288589Z",
"createdBy": "97fdd529-68de-4ba5-aa3c-adf86bd564bf",
"createdByType": "Application",
"lastModifiedAt": "2024-03-21T11:26:38.5785124Z",
"lastModifiedBy": "user@email.com",
"lastModifiedByType": "User"
},
"type": "microsoft.managednetworkfabric/networkfabrics/networktonetworkinterconnects",
"useOptionB": "True"
}