「Cisco のコマンド互換性まとめ」の版間の差分

提供:hkatou_Lab
ナビゲーションに移動 検索に移動
ページの作成:「コマンドリストを作成するときに、気にしていることのまとめ。 == 基本方針 == === 各機器で使用している機能を洗い出す === v…」
 
 
(同じ利用者による、間の7版が非表示)
1行目: 1行目:
コマンドリストを作成するときに、気にしていることのまとめ。
コマンドリストを作成するときに、気にしていることのまとめ。


== 基本方針 ==
== 基本方針 ==
7行目: 8行目:


大体コンフィギュレーション ガイドに記載がある。
大体コンフィギュレーション ガイドに記載がある。
show tech-support だけ取れば良い、というのは初心者。


=== 各機能ごとに 2 つの観点からコマンドを選定する ===
=== 各機能ごとに 2 つの観点からコマンドを選定する ===
'''機能確認 : 正常に動作していること'''
'''機能確認 : 正常に動作していること'''


* トラブルシューティング時に、正常であることを確認できるコマンドをリストアップする
* 例) show interfaces trunk で Vlan が allowed されていること
* 例) show interfaces trunk で Vlan が allowed されていること
** show run で allowed が設定されていても vlan が作成されていないと、このコマンドで allowed に出て来ない = 異常と判明する
** show run で allowed が設定されていても vlan が作成されていないと、このコマンドで allowed に出て来ない = 異常と判明する
22行目: 22行目:
'''冗長確認 : 切り替え時に変化が確認できること'''
'''冗長確認 : 切り替え時に変化が確認できること'''


* 例) show etherchannel summary で 2 ポートの片方が (P) でバンドルされていて、もう片方が (D) でダウンしていること
* 冗長切替発生時、正常時と比較して切り替えが確認できるコマンドをリストアップする
* 例) LAG メンバー 2 本のうち、1 本をダウンさせた後、show etherchannel summary で 2 ポートの片方が (P) でバンドルされていて、もう片方が (D) でダウンしていること
** 障害試験の正常時と異常時に取得して、想定通り切り替えができたか確認できる
** 障害試験の正常時と異常時に取得して、想定通り切り替えができたか確認できる


=== 使用できないコマンドを選定していないか ===
=== 使用できないコマンドを選定していないか ===
例えば show interfaces status は以下のようなミスが存在する。
例えばスイッチでのみ使用可能な show interfaces status では、以下のミスが発生する。


* '''show interfaces status をルータで取得'''してしまう
* '''show interfaces status をルータで取得'''してしまう
** Vlan / access / trunk を表示するコマンドだが、ルータにこの機能は存在しない
** Vlan / access / trunk を表示するコマンドだが、ルータにこのスイッチポートは基本的に存在しない
** スイッチポート モジュールを搭載した機種には使用可能なのがまたややこしい
** スイッチポート モジュールを搭載したルータには使用可能なのがまたややこしい
*** この場合もルータポートは表示対象外
*** この場合もルーテッド ポートは表示対象外
** show ip interface brief を使用するべき
** ダウン・アップを確認したいのであれば、以下の代替コマンドを使用するべき
*** show ip interface brief
*** show ipv6 interface brief
*** show interface description
** 何々の情報を取得したいからこのコマンド、というように目的を意識しないとこのような失敗をしてしまう
** 何々の情報を取得したいからこのコマンド、というように目的を意識しないとこのような失敗をしてしまう
* '''show interfaces status を Nexus で取得'''しようとしてエラー
* '''show interfaces status を Nexus で取得'''しようとしてエラー
** NX-OS では show interface status (s が無い単数形) が正しい
** NX-OS では show interface status (s が無い単数形) が正しい
** 実機確認の重要性がわかる事例
** 実機確認の重要性がわかる事例
** マクロで取ってて障害になってから、取れてないことがわかったりすると最悪
** 普段マクロで取ってて、障害になってから取れてないことがわかったりすると悲惨


=== 仮想 OS , 実機で投入確認を行う ===
=== 仮想 OS , 実機で投入確認を行い、取得できたコマンドを資料やマクロに反映する ===
人間のレビューのように曖昧な確認よりも、実際の機械に確認したもらったほうが確実。
人間のレビューのように曖昧な確認よりも、実際の機械に確認したもらったほうが確実。


現地で試験表を書き換えるのは避けたいところ。
現地で試験表のコマンドを書き換えるのは避けたい。




確認できる仮想 OS としては、以下の例が挙げられる。
確認できる仮想 OS としては、以下の例が挙げられる。


* ルータ : IOSv , XRv
* ルータ : IOSv , CSR1000V , XRv
* スイッチ : IOSv-L2 , NX-OS 9000v
* スイッチ : IOSv-L2 , NX-OS 9000v
* ファイアウォール : ASAv
* ファイアウォール : ASAv


== ルータ IOS / IOS-XE ==
== ルータ IOS / IOS-XE ==
IP ルーティング、IP アプリケーションなど、ハードウェアに依存しない機能は他の IOS と共通のコマンドが使用可能。
IP ルーティング、IP アプリケーションなど、ハードウェアに依存しない機能は、他の IOS と共通のコマンドが使用可能。
 
ルータの機能が動作するため、スイッチのコマンドは基本的に使用できない。
 
* 例外としてスイッチ ポート / モジュールでは使用可能
 
=== 主に該当する機種 ===
IOS
 
* C891FJ , C892J
* C921J


ルータの機能が動作するため、スイッチのコマンドは使用できない。
IOS-XE
 
* C1111
* ISR4000
* ASR900 , ASR1000


=== 使用不可コマンドの例 ===
=== 使用不可コマンドの例 ===
60行目: 79行目:


* ルータは通常、送信先の決定に MAC アドレステーブルを使用しない
* ルータは通常、送信先の決定に MAC アドレステーブルを使用しない
* L2VPN , bridge などの L2 機能の動作時を除く
* スイッチ ポート / モジュールや L2VPN , bridge などの L2 機能の動作時を除く




'''show interfaces status'''
'''show interfaces status'''


* Vlan / access / trunk を表示する、スイッチのコマンドは使用できない
* Vlan / access / trunk を表示する、スイッチポートのコマンドは基本的に使用できない
* C892 など、スイッチ ポートを持つ機種は表示できる
 


== ルータ IOS-XR ==
== ルータ IOS-XR ==
show ip route -> show route など Juniper っぽいコマンド体系になっている。
show ip route -> show route など Juniper の Junos っぽいコマンド体系になっている。
 
基本的に IOS / IOS-XE とは別物としてコマンドを調査する必要あり。
 
64 bit カーネルの eXR (Eveolved XR) になってからは、ハードウェア管理 VM と IOS-XR VM に分離 <ref>ASR9K - eXR 'show memory summary' not showing all physical memory
 
https://www.cisco.com/c/en/us/support/docs/routers/asr-9000-series-aggregation-services-routers/213904-asr9k-exr-show-memory-summary-not-sh.html
 
Analysis
 
From release 6.2.1 onwards, eXR on ASR9K will use the Virtual Machine (VM) virtualisation model, switching from using Linux Container (LXC) model which was used in releases 6.1.2 and 6.1.3.</ref> <ref>ASR9000 64-bit IOS XR: Increase RAM available to XR VM by disabling ISSU
 
https://community.cisco.com/t5/service-providers-knowledge-base/asr9000-64-bit-ios-xr-increase-ram-available-to-xr-vm-by/ta-p/3845978
 
host OS
 
Admin VM
 
XR VM
 
XR VM v2</ref>しており、メモリ確認など複雑になっている。
 
* メモリ取得コマンドをアレンジする必要あり
 
=== 主に該当する機種 ===
ASR9000
 
NCS5000


基本的に別物としてコマンドを調査する必要あり。
Cisco8000


== スイッチ IOS / IOS-XE ==
== スイッチ IOS / IOS-XE ==
EVC などのルータ系 Bridge 系機能など、ルータ特有の機能のコマンドは使用できない。
IOS と IOS-XE で違いを意識してコマンドを変える必要はほとんど無い。
 
強いて言えば IOS-XE だとハードウェア確認のコマンドが、ある程度 show platform 系にまとめられている。
 
Ethernet Virtual Circuit (EVC) など、ルータ系特有な機能のコマンドは使用できない。
 
=== 主に該当する機種 ===
IOS
 
* Catalyst 1000
* Catalyst 2960
* Catalyst 3560 , 3750
 
IOS-XE
 
* Catalyst 3650 , 3850
* Catalyst 4500-X
* Catalyst 9000


=== 使用不可コマンドの例 ===
=== 使用不可コマンドの例 ===
show bridge (実行できても何も取得できない)
show bridge (実行できても何も取得できない)


== スイッチ NX-OS ==
== スイッチ NX-OS ==
83行目: 149行目:
一方で show etherchannel -> show port-channel など変更になっているコマンドもある。
一方で show etherchannel -> show port-channel など変更になっているコマンドもある。


feature コマンドで有効にしないと、show コマンドも無いように見えてしまうので注意が必要。
feature コマンドで有効にしないと、show コマンドが存在しないかのように見えてしまうので注意が必要。<syntaxhighlight lang="diff">
switch# conf t
Enter configuration commands, one per line. End with CNTL/Z.
switch(config)# feature bgp
show ip bgp su
2022 Sep 28 23:46:33 switch %$ VDC-1 %$ %LICMGR-2-LOG_LIC_MISSING_WARNING: A feature that requires LAN_ENTERPRISE_SERVICES_PKG license is not installed. System supports honor based licensing so feature will continue to be fully functional. Use 'show license usage <package-name>' to find features using missing license.
switch(config)# show ip bgp summary
Note:  process currently not running
</syntaxhighlight>
 
== リファレンス ==
[[カテゴリ:その他]]
[[カテゴリ:Cisco]]

2023年11月13日 (月) 08:59時点における最新版

コマンドリストを作成するときに、気にしていることのまとめ。


基本方針

各機器で使用している機能を洗い出す

vlan / EtherChannel / OSPF など、使用する機能別に show コマンドを調査する。

大体コンフィギュレーション ガイドに記載がある。

各機能ごとに 2 つの観点からコマンドを選定する

機能確認 : 正常に動作していること

  • トラブルシューティング時に、正常であることを確認できるコマンドをリストアップする
  • 例) show interfaces trunk で Vlan が allowed されていること
    • show run で allowed が設定されていても vlan が作成されていないと、このコマンドで allowed に出て来ない = 異常と判明する
  • 例) show mac address-table でトラフィックを送受信する端末の MAC アドレスが学習されていること
    • ソフトウェア不具合に該当した場合、MAC アドレステーブルの正常性を証明する必要があるため、予め取得しておく
    • ルーティング テーブルなどのエントリも同様に取得する


冗長確認 : 切り替え時に変化が確認できること

  • 冗長切替発生時、正常時と比較して切り替えが確認できるコマンドをリストアップする
  • 例) LAG メンバー 2 本のうち、1 本をダウンさせた後、show etherchannel summary で 2 ポートの片方が (P) でバンドルされていて、もう片方が (D) でダウンしていること
    • 障害試験の正常時と異常時に取得して、想定通り切り替えができたか確認できる

使用できないコマンドを選定していないか

例えばスイッチでのみ使用可能な show interfaces status では、以下のミスが発生する。

  • show interfaces status をルータで取得してしまう
    • Vlan / access / trunk を表示するコマンドだが、ルータにこのスイッチポートは基本的に存在しない
    • スイッチポート モジュールを搭載したルータには使用可能なのがまたややこしい
      • この場合もルーテッド ポートは表示対象外
    • ダウン・アップを確認したいのであれば、以下の代替コマンドを使用するべき
      • show ip interface brief
      • show ipv6 interface brief
      • show interface description
    • 何々の情報を取得したいからこのコマンド、というように目的を意識しないとこのような失敗をしてしまう
  • show interfaces status を Nexus で取得しようとしてエラー
    • NX-OS では show interface status (s が無い単数形) が正しい
    • 実機確認の重要性がわかる事例
    • 普段マクロで取ってて、障害になってから取れてないことがわかったりすると悲惨

仮想 OS , 実機で投入確認を行い、取得できたコマンドを資料やマクロに反映する

人間のレビューのように曖昧な確認よりも、実際の機械に確認したもらったほうが確実。

現地で試験表のコマンドを書き換えるのは避けたい。


確認できる仮想 OS としては、以下の例が挙げられる。

  • ルータ : IOSv , CSR1000V , XRv
  • スイッチ : IOSv-L2 , NX-OS 9000v
  • ファイアウォール : ASAv


ルータ IOS / IOS-XE

IP ルーティング、IP アプリケーションなど、ハードウェアに依存しない機能は、他の IOS と共通のコマンドが使用可能。

ルータの機能が動作するため、スイッチのコマンドは基本的に使用できない。

  • 例外としてスイッチ ポート / モジュールでは使用可能

主に該当する機種

IOS

  • C891FJ , C892J
  • C921J

IOS-XE

  • C1111
  • ISR4000
  • ASR900 , ASR1000

使用不可コマンドの例

show mac address-table

  • ルータは通常、送信先の決定に MAC アドレステーブルを使用しない
  • スイッチ ポート / モジュールや L2VPN , bridge などの L2 機能の動作時を除く


show interfaces status

  • Vlan / access / trunk を表示する、スイッチポートのコマンドは基本的に使用できない
  • C892 など、スイッチ ポートを持つ機種は表示できる


ルータ IOS-XR

show ip route -> show route など Juniper の Junos っぽいコマンド体系になっている。

基本的に IOS / IOS-XE とは別物としてコマンドを調査する必要あり。

64 bit カーネルの eXR (Eveolved XR) になってからは、ハードウェア管理 VM と IOS-XR VM に分離 [1] [2]しており、メモリ確認など複雑になっている。

  • メモリ取得コマンドをアレンジする必要あり

主に該当する機種

ASR9000

NCS5000

Cisco8000

スイッチ IOS / IOS-XE

IOS と IOS-XE で違いを意識してコマンドを変える必要はほとんど無い。

強いて言えば IOS-XE だとハードウェア確認のコマンドが、ある程度 show platform 系にまとめられている。

Ethernet Virtual Circuit (EVC) など、ルータ系特有な機能のコマンドは使用できない。

主に該当する機種

IOS

  • Catalyst 1000
  • Catalyst 2960
  • Catalyst 3560 , 3750

IOS-XE

  • Catalyst 3650 , 3850
  • Catalyst 4500-X
  • Catalyst 9000

使用不可コマンドの例

show bridge (実行できても何も取得できない)


スイッチ NX-OS

Catalyst の IOS-XE と共通で使えるコマンドが多い。

一方で show etherchannel -> show port-channel など変更になっているコマンドもある。

feature コマンドで有効にしないと、show コマンドが存在しないかのように見えてしまうので注意が必要。

switch# conf t
Enter configuration commands, one per line. End with CNTL/Z.
switch(config)# feature bgp
show ip bgp su
2022 Sep 28 23:46:33 switch %$ VDC-1 %$ %LICMGR-2-LOG_LIC_MISSING_WARNING: A feature that requires LAN_ENTERPRISE_SERVICES_PKG license is not installed. System supports honor based licensing so feature will continue to be fully functional. Use 'show license usage <package-name>' to find features using missing license.
switch(config)# show ip bgp summary
Note:  process currently not running

リファレンス

  1. ASR9K - eXR 'show memory summary' not showing all physical memory https://www.cisco.com/c/en/us/support/docs/routers/asr-9000-series-aggregation-services-routers/213904-asr9k-exr-show-memory-summary-not-sh.html Analysis From release 6.2.1 onwards, eXR on ASR9K will use the Virtual Machine (VM) virtualisation model, switching from using Linux Container (LXC) model which was used in releases 6.1.2 and 6.1.3.
  2. ASR9000 64-bit IOS XR: Increase RAM available to XR VM by disabling ISSU https://community.cisco.com/t5/service-providers-knowledge-base/asr9000-64-bit-ios-xr-increase-ram-available-to-xr-vm-by/ta-p/3845978 host OS Admin VM XR VM XR VM v2