Catalyst 目的別コマンド
Catalyst で調査するとき、役に立つコマンドをまとめました。
show running-config 整形
特定の文字列を含む行を抜き出したい
vlan を含む行を抜き出してみます。
show running-config | in vlan
no spanning-tree vlan 250
vlan 20
vlan 22
switchport access vlan 20
<omit>
物理ポートの vlan 設定も抜き出されるため、ちょっと使いにくい結果になりました。
show running-config | in ^vlan [0-9]
vlan 20
vlan 22
行頭の "^" と "[0-9]" の正規表現を追加することで、vlan 作成のコンフィグのみ抜き出すことができます。
特定の機能のコンフィグを抜き出したい
| section
| section <機能名> を使いましょう。わりと新しい機能で、15.0 くらいから対応しています。
show run 全体を呼び出してからフィルタするため、動作速度はちょっと遅いです。
show running-config | section ospf
ip ospf network point-to-point
ip ospf cost 1
router ospf 1
router-id 10.10.xx.xx
nsr
timers throttle spf 10 100 5000
<omit>
例によって interface の OSPF 設定も抜き出されてしまうため、
show running-config | section router ospf
router ospf 1
router-id 10.10.xx.xx
nsr
timers throttle spf 10 100 5000
<omit>
router ospf をキーワードにして抜き出すと便利です。
partition
show running-config partition <feature_name> で該当する機能のコンフィグを抜き出せます。
こちらは該当部分を指定して呼び出すため、動作が高速です。IOS 12.2(33) あたりから対応。
show running-config partition router ospf 1
<snip>
Current configuration : 1080 bytes
!
Configuration of Partition - router ospf 1
!
!
!
router ospf 1
<snip>
スタック 1 号機のインターフェース設定を抜き出したい
show running-config module 1
Cat3850 + IOS-XE 16.12.10 で確認。
Gi1/0/x と Gi2/0/x で diff を取りたい時に、非常に便利。
正規表現
show logging からエラー以上のログを抜き出したい
show logging | include %[A-Z]*\-[0-3]
0 = emergency , 1 = alerts , 2 = critical , 3 = errors のログを正規表現 + include で抜き出します。
レイヤ 1
リンクダウン・シャットダウンポートをリストアップ
show interfaces status | include notconnect|disabled
移行設計を行う際、空きポートを調べたいケースがあります。
| include で表示を絞ることで、未使用のリンクダウン・シャットダウンのポートをリストアップできます。
レイヤ 2
未使用 Vlan か調査し、削除できるか調べたい
show mac address-table dynamic Vlan <Vlan-ID>
show running-config Vlan<Vlan-ID>
複数のポートから受信していない + SVI が無い Vlan は、L2SW として動作していないため、
no vlan で削除できます。
ただしこの判断基準は、常時通信する機器ばかりであること or MAC エージングタイムが長い場合に限ります。
trunk ポートに大量に allowed された Vlan を少なくしたい
configure terminal
vlan <Vlan-ID>
shutdown
end
vlan は 2-1001 の範囲なら、L2 レベルでシャットダウンすることが可能です。
vlan をシャットダウンすることで、trunk ポートの allowed vlan から
削除したのと同様の効果を得られ、かつ切り戻しが簡単に行なえます。
MAC アドレスが学習されていないが、削除するのが怖い Vlan で使用します。
レイヤ 3
vrf を毎回打つのが面倒なので、ログインしているセッションの vrf 自体を切り替えたい
routing-context vrf <vrf_name>
ping vrf <vrf_name> <dest_ip> などの、vrf <vrf_name> を毎回指定したくないときに使用します。
デフォルト vrf に戻るときは exit で戻ります。
WS-C3560CX 15.2(7)E7 で動作を確認、WS-C3750G 15.0(2)SE11 で未実装を確認しました。
システム
保存されていないコンフィグを調べたい・変更したコンフィグの差分を表示したい
show archive config differences nvram:startup-config system:running-config
startup-config と running-config の差分を表示できます。
出力された場合、設定変更したが保存を忘れている可能性があります。
Cisco IOS / IOS-XE は即時反映のため、Juniper Junos の show | comapre のように
候補コンフィグとの差分表示ではありません。
コンフィグを任意のコンフィグで置換したい・特定のコンフィグに切り戻したい
copy running-config flash:<yymmdd>_<hostname>.cfg
configure replace flash:<yymmdd>_<hostname>.cfg
事前にコンフィグを copy で保存しておき、configure replace で
コンフィグを置換することができます。
Cisco IOS CLI のリストアは no コマンドで設定を削除する必要があり、切り戻しに手間がかかりますが、これを自動で行ってくれます。
CPU を使用しているプロセスを確認したい
Switch#show processes cpu sorted | exclude 0.00%
CPU utilization for five seconds: 0%/0%; one minute: 0%; five minutes: 0%
PID Runtime(ms) Invoked uSecs 5Sec 1Min 5Min TTY Process
131 218 25084 8 0.15% 0.05% 0.03% 0 SIS Punt Process
202 118 421 280 0.07% 0.03% 0.01% 0 Exec
273 139 12529 11 0.07% 0.04% 0.01% 0 IPAM Manager
exclude で 0% のプロセスを除外すると、かなり見やすいです。
vrf に関連するコマンドだけ抜き出したい
show running-config vrf で関連するコンフィグのみを抜き出して表示させることが可能です。
IOS-XE 16.12.09 で確認。
#show running-config vrf
Building configuration...
Current configuration : 415 bytes
vrf definition Mgmt-vrf
!
address-family ipv4
exit-address-family
!
address-family ipv6
exit-address-family
!
!
interface GigabitEthernet0/0
vrf forwarding Mgmt-vrf
ip address 10.10.252.16 255.255.255.0
negotiation auto
!
ip route vrf Mgmt-vrf 0.0.0.0 0.0.0.0 GigabitEthernet0/0 10.10.252.254 name OutOfBand_Management_GW
ip route vrf Mgmt-vrf 10.10.0.0 255.255.0.0 GigabitEthernet0/0 10.10.252.253
!
end
show running-config vlan などもありますが、対応している機能は少ないです。
リファレンス
コンフィギュレーション ファイルの管理コンフィギュレー ション ガイド(Cisco IOS XE Gibraltar 16.10.x 向け)