Border Gateway Protocol ネイバーを無効にする
この記事では、ユーザーが読み取り書き込み (RW) コマンドを実装して Border Gateway Protocol (BGP) ネイバーを無効にする方法の例を示します。
仮想ルーティングおよび転送 (VRF) レベルで特定のピアをシャットダウンする
RW API を使用して構成を変更する前の Network Fabric デバイスのスナップショットを次に示します。
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>
status が、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 コマンドを指定します。 これらのコマンドは、"untrustnetwork" という名前のネイバーをシャットダウンするように BGP を設定します。 |
予想される出力:
{}
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 コマンドを指定します。 これらのコマンドは、"untrustnetwork" という名前のネイバーをシャットダウンするように BGP を設定します。 |
--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>
status が、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 コマンドを指定します。 これらのコマンドは、"gfab1-isd" という名前の VRF 内の IP アドレス 10.100.30.18 でネイバーをシャットダウンするように BGP 設定を構成します。 |
予想される出力:
Error: Message: \[GNMI SET failed. Error: GNMI SET failed: rpc error: code = config failed to apply.