共用方式為


停用邊界閘道通訊協定鄰居

本文提供範例示範使用者如何實作讀取寫入 (RW) 命令,以停用邊界網關通訊協定 (BGP) 鄰居。

關閉虛擬路由和轉送層級的特定對等 (VRF) 層級

下列顯示網路網狀架構裝置的快照集,再使用 RW API 對組態進行變更:

sh ip bgp  summary vrf gfab1-isd
BGP summary information for VRF gfab1-isd
Router identifier 10.XXX.14.34, local AS number 650XX
Neighbor Status Codes: m - Under maintenance
  Neighbor            V AS           MsgRcvd   MsgSent  InQ OutQ  Up/Down State   PfxRcd PfxAcc
  10.XXX.13.15        4 650XX         129458    168981    0    0 00:06:50 Estab   189    189
  **10.XXX.30.18        4 650XX          42220     42522    0    0 00:00:44 Estab   154    154**
  10.XXX.157.8        4 645XX          69211     74503    0    0   21d20h Estab   4      4
  fda0:XXXX:XXXX:d::f 4 650XX         132192    171982    0    0   28d18h Estab   0      0

執行下列命令以停用 BGP 芳鄰:

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command "router bgp 65055\n vrf gfab1-isd\n neighbor 10.100.30.18 shutdown"  

預期輸出:

{}
sh ip bgp summary vrf gfab1-isd
BGP summary information for VRF gfab1-isd
Router identifier 10.XXX.14.34, local AS number 650XX
Neighbor Status Codes: m - Under maintenance
  Neighbor            V AS           MsgRcvd   MsgSent  InQ OutQ  Up/Down State   PfxRcd PfxAcc
  10.XXX.13.15        4 650XX         129456    168975    0    0 00:04:31 Estab   189    189
  **10.XXX.30.18        4 650XX          42210     42505    0    0 00:01:50 Idle(Admin)**
  10.XXX.157.8        4 645XX          69206     74494    0    0   21d20h Estab   4      4
  fda0:d59c:df06:d::f 4 65055         132189    171976    0    0   28d18h Estab   0      0
Apr  XX XXX:54 AR Bgp: %BGP-3-NOTIFICATION: sent to neighbor 10.XXX.30.18 (VRF gfab1-isd AS 650XX) 6/2 (Cease/administrative shutdown <Hard Reset>) reason:
Apr  XX XXX:54 AR Bgp: %BGP-3-NOTIFICATION: sent to neighbor 10.XXX.30.18 (VRF gfab1-isd AS 650XX) 6/5 (Cease/connection rejected) 0 bytes 

使用 --no-wait 命令 --debug

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command "router bgp 65055\n vrf gfab1-isd\n neighbor 10.100.30.18 shutdown" --no-wait –debug
參數 描述
az networkfabric device run-rw 在 Azure Network Fabric 內的網路裝置上執行讀寫作業的 Azure CLI 命令。
--resource-name 指定將執行 RW 作業的資源名稱(網路裝置)。
--resource-group 指定包含網路裝置的資源群組名稱。
--rw-command "router bgp 65055\n vrf gfab1-isd\n neighbor 10.100.30.18 shutdown" 指定要在網路裝置上執行的 RW 命令。 這些命令會設定 BGP 設定,並關閉特定鄰居。
--no-wait 表示應該以異步方式執行命令,而不需要等待作業完成。
--debug 啟用偵錯模式的旗標,提供命令執行的其他資訊以供疑難解答之用。

預期輸出:

cli.knack.cli: Command arguments: \['networkfabric', 'device', 'run-rw', '--resource-name', <ResourceName>, '--resource-group', <ResourceGroupName>, '--rw-command', 'router bgp 65055\\\\n vrf gfab1-isd\\\\n neighbor 10.100.30.18 shutdown', '--debug'\]
cli.knack.cli: \_\_init\_\_ debug log:
Enable color in terminal.
cli.knack.cli: Event: Cli.PreExecute \[\]
cli.knack.cli: Event: CommandParser.OnGlobalArgumentsCreate \[<function CLILogging.on\_global\_arguments at 0x01F1A610>;, <function OutputProducer.on\_global\_arguments at 0x0211B850>, <function CLIQuery.on\_global\_arguments at 0x021314A8>\]
cli.azure.cli.core.sdk.policies: 'Azure-AsyncOperation': 'https://eastus.management.azure.com/subscriptionsXXXXXXXXXXXXXXXXXX/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/e239299a-8c71-426e-8460-58d4c0b470e2\*850DA565ABE0036AB?api-version=2022-01-15-privatepreview&t=638479088323069839&c=

您可以執行下列命令,以程式設計方式檢查作業的狀態:

az rest -m get -u "<Azure-AsyncOperation-endpoint url>"

從截斷輸出擷取的 Azure-AsyncOperation 端點 URL 範例。

<https://eastus.management.azure.com/subscriptions/xxxxxxxxxxx/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/xxxxxxxxxxx?api-version=20XX-0X-xx-xx>

狀態會指出 API 成功或失敗。

預期輸出:

https://eastus.management.azure.com/subscriptions/XXXXXXXX/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/e239299a-8c71-426e-8460-58d4c0b470e2AB?api-version=2022-01-15-privatepreview

{

"endTime": "2024-XX-XXT10:14:13.2334379Z",
"id": "/subscriptions/XXXXXXXXXXXXXX/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/e239299a-8c71-426e-DA565ABE0036AB",
"name": "e239299a-8c71-426e-8460-58d4c0b470e2\*E98FEC8C2D6479A6C0A450CE6E20DA4C9DDBF225A07F7F4850DA565ABE0036AB",
"properties": null,
"resourceId": "/subscriptions/XXXXXXXXXXXX/resourceGroups/ResourceGroup/providers/Microsoft.ManagedNetworkFabric/networkDevices/ResourceName",
"startTime": "2024-XX-XXT10:13:52.0438351Z",
"status": "Succeeded"
}

關閉 VRF 層級的對等群組

此範例示範 RW 設定如何關閉 VRF 層級的對等群組。

sh ip bgp  summary vrf gfab1-isd
BGP summary information for VRF gfab1-isd
Router identifier 10.XXX.14.34, local AS number 650XX
Neighbor Status Codes: m - Under maintenance
  Neighbor            V AS           MsgRcvd   MsgSent  InQ OutQ  Up/Down State   PfxRcd PfxAcc
  10.XXX.13.15        4 650XX         129458    168981    0    0 00:06:50 Estab   189    189
  10.XXX.30.18        4 650XX          42220     42522    0    0 00:00:44 Estab   154    154
**  10.XXX.157.8        4 645XX          69211     74503    0    0   21d20h Estab   4      4**
  fda0:XXXX:XXXX:d::f 4 650XX         132192    171982    0    0   28d18h Estab   0      0
az networkfabric device run-rw --resource-name <ResourceName>; --resource-group <ResourceGroupName> --rw-command "router bgp 65055\\n neighbor untrustnetwork shutdown"
參數 描述
az networkfabric device run-rw 在 Azure Network Fabric 內的網路裝置上執行讀寫作業的 Azure CLI 命令。
--resource-name 指定執行 RW 作業的資源名稱(網路裝置)。
--resource-group 指定包含網路裝置的資源群組名稱。
--rw-command "router bgp 65055\n neighbor untrustnetwork shutdown" 指定要在網路裝置上執行的 RW 命令。 這些命令會將 BGP 設定設定為關閉名為 「untrustnetwork」 的鄰近地區。

預期輸出:

{}
sh ip bgp  summary vrf gfab1-isd
BGP summary information for VRF gfab1-isd
Router identifier 10.XXX.14.34,
Neighbor            V AS           MsgRcvd   MsgSent  InQ OutQ  Up/Down State   PfxRcd PfxAcc
  10.XXX.13.15        4 65055         129462    168986    0    0 00:10:10 Estab   189    189
  10.XXX.30.18        4 65055          42224     42527    0    0 00:04:04 Estab   154    154
  fda0:XXX:XXXX:d::f 4 65055       132196    171987    0    0   28d18h Estab   0      0
AR-CE1)#Apr  X XX-XX:09 AR-CE1 Bgp: %BGP-3-NOTIFICATION: sent to neighbor **10.XXX.157.8** (VRF gfab1-isd AS 64512) 6/2 (Cease/administrative shutdown <Hard Reset>) reason: 

Apr  8 13:24:11 AR-CE1 Bgp: %BGP-3-NOTIFICATION: sent to neighbor **10.XXX.157.8** (VRF gfab1-isd AS 64512) 6/5 (Cease/connection rejected) 0 bytes 

使用 --no-wait 命令 --debug

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command "router bgp 65055\n neighbor untrustnetwork shutdown" --no-wait --debug
參數 描述
az networkfabric device run-rw 在 Azure Network Fabric 內的網路裝置上執行讀寫作業的 Azure CLI 命令。
--resource-name 指定執行 RW 作業的資源名稱(網路裝置)。
--resource-group 指定包含網路裝置的資源群組名稱。
--rw-command "router bgp 65055\n neighbor untrustnetwork shutdown" 指定要在網路裝置上執行的 RW 命令。 這些命令會將 BGP 設定設定為關閉名為 「untrustnetwork」 的鄰近地區。
--no-wait 表示應該以異步方式執行命令,而不需要等待作業完成。
--debug 啟用偵錯模式的旗標,提供命令執行的其他資訊以供疑難解答之用。

預期的截斷輸出:

cli.knack.cli: Command arguments: ['networkfabric', 'device', 'run-rw', '--resource-name', <ResourceName>, '--resource-group', <ResourceGroup>, '--rw-command', 'router bgp 65055\\n neighbor untrustnetwork shutdown', '--debug'] 
cli.knack.cli: __init__ debug log: 
Enable color in terminal. 
cli.knack.cli: Event: Cli.PreExecute [] 
cli.azure.cli.core.sdk.policies:     'Expires': '-1' 
cli.azure.cli.core.sdk.policies:     'Location': 'https://eastus2euap.management.azure.com/subscriptions/XXXXXXXXXX/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/4659700f-0280-491d-b478-491c6a88628c*F348648BDC06F42B2EDBC6E58?api-version=2022-01-15-privatepreview&t=638481804853087320 
telemetry.process: Return from creating process 
telemetry.main: Finish creating telemetry upload process. 

您可以執行下列命令,以程式設計方式檢查作業的狀態:

az rest -m get -u "<Azure-AsyncOperation-endpoint url>"

從截斷輸出擷取的 Azure-AsyncOperation 端點 URL 範例。

<https://eastus.management.azure.com/subscriptions/xxxxxxxxxxx/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/xxxxxxxxxxx?api-version=20XX-0X-xx-xx>

狀態會指出 API 成功或失敗。

預期輸出:

https://eastus.management.azure.com/subscriptions/XXXXXXXX/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/e239299a-8c71-426e-8460-58d4c0b470e2AB?api-version=2022-01-15-privatepreview

{

"endTime": "2024-XX-XXT10:14:13.2334379Z",
"id": "/subscriptions/XXXXXXXXXXXXXX/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/e239299a-8c71-426e-DA565ABE0036AB",
"name": "e239299a-8c71-426e-8460-58d4c0b470e2\*E98FEC8C2D6479A6C0A450CE6E20DA4C9DDBF225A07F7F4850DA565ABE0036AB",
"properties": null,
"resourceId": "/subscriptions/XXXXXXXXXXXX/resourceGroups/ResourceGroup/providers/Microsoft.ManagedNetworkFabric/networkDevices/ResourceName",
"startTime": "2024-XX-XXT10:13:52.0438351Z",
"status": "Succeeded"
}

設定作業不正確

如果您嘗試在裝置上實作組態命令,且設定不正確,則不會在裝置上強制執行設定。 提示會產生一般錯誤回應,指出 gNMI SET 失敗。 若要修正此錯誤,請重新套用正確的設定。 裝置的狀態不會有任何變更。

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command "router bgp 4444\n vrf gfab1-isd\n niehgbor 10.100.30.18 shudown"
參數 描述
az networkfabric device run-rw 在 Azure Network Fabric 內的網路裝置上執行讀寫作業的 Azure CLI 命令。
--resource-name 指定執行 RW 作業的資源名稱(網路裝置)。
--resource-group 指定包含網路裝置的資源群組名稱。
--rw-command "router bgp 4444\n vrf gfab1-isd\n niehgbor 10.100.30.18 shudown" 指定要在網路裝置上執行的 RW 命令。 這些命令會將 BGP 設定設定設定為關閉名為 「gfab1-isd」 的 VRF 內 IP 位址為 10.100.30.18 的鄰居。

預期輸出:

Error: Message: \[GNMI SET failed. Error: GNMI SET failed: rpc error: code = config failed to apply.