Cisco IOS パターン
このスキルは、Cisco IOS または IOS-XE のスニペットをレビューしたり、変更ウィンドウのチェックリストを作成したり、インシデントを悪化させずにルーターやスイッチから証拠を収集する方法を説明する場合に使用します。
使用するタイミング
- 計画された変更前に IOS または IOS-XE 設定をレビューする場合。
- トラブルシューティングのために読み取り専用の
showコマンドを選択する場合。 - ACL のワイルドカードマスクとインターフェース方向を確認する場合。
- グローバル、インターフェース、ルーティングプロセス、ライン設定モードについて説明する場合。
- 変更がランニングコンフィグに適用され、意図的に保存されたことを確認する場合。
運用ルール
IOS の例はパターンとして扱い、そのまま本番環境に適用できる変更としては扱わないでください。実際のデバイスで変更を行う前に、プラットフォーム、インターフェース名、現在の設定、ロールバックパス、アウトオブバンドアクセスを確認してください。
以下のワークフローを推奨します:
- 読み取り専用コマンドで現在の状態を取得する。
- 正確な変更候補設定をレビューする。
- 管理アクセスがロックアウトされないことを確認する。
- メンテナンスウィンドウ内で最小限の変更を適用する。
- 状態を再読み取りし、ベースラインと比較し、検証後にのみ保存する。
モードリファレンス
Router> enable
Router# show running-config
Router# configure terminal
Router(config)# interface GigabitEthernet0/1
Router(config-if)# description UPLINK-TO-CORE
Router(config-if)# no shutdown
Router(config-if)# exit
Router(config)# end
Router# show running-config interface GigabitEthernet0/1
running-config はアクティブメモリです。startup-config は再起動後も保持される設定です。コマンドが受け入れられたからといって変更を保存しないでください。まず動作を検証し、変更が承認された場合のみ copy running-config startup-config を使用してください。
読み取り専用収集
show version
show inventory
show processes cpu sorted
show memory statistics
show logging
show running-config | section line vty
show running-config | section interface
show running-config | section router bgp
show ip interface brief
show interfaces
show interfaces status
show vlan brief
show mac address-table
show spanning-tree
show ip route
show ip protocols
show ip access-lists
show route-map
show ip prefix-list
設定にシークレット、顧客名、プライベートトポロジが含まれている可能性がある場合、チケットに全設定をダンプするのではなく、必要な特定のセクションのみを収集してください。
ワイルドカードマスク
IOS の ACL および多くのルーティングステートメントは、サブネットマスクではなくワイルドカードマスクを使用します。
サブネットマスク ワイルドカードマスク
255.255.255.255 0.0.0.0
255.255.255.252 0.0.0.3
255.255.255.0 0.0.0.255
255.255.0.0 0.0.255.255
展開前にワイルドカードマスクをレビューしてください。サブネットマスクを誤ってワイルドカードとして使用すると、意図したよりもはるかに多くのトラフィックに一致する可能性があります。
ip access-list extended WEB-IN
10 permit tcp 192.0.2.0 0.0.0.255 any eq 443
999 deny ip any any log
すべての ACL の最後には暗黙の deny があります。運用目標にミスの監視が含まれる場合は、明示的なログ付き deny を追加し、ログ量が安全であることを確認してください。
ACL 配置レビュー
ACL をインターフェースに適用する前に、以下の質問に答えてください:
- フィルタリングされるトラフィックの方向は、
inですか、それともoutですか? - 管理トラフィックは、既知のジャンプホストまたは管理サブネットから発信されていますか?
- 必要なルーティング、DNS、NTP、監視、アプリケーショントラフィックに対する明示的な permit がありますか?
- 安全なテストソースからのヒットカウンターは利用可能ですか?
- ロールバックコマンドとアクティブなコンソールまたはアウトオブバンドパスはありますか?
ファイアウォールや ACL の保護を削除して到達可能性をテストしないでください。最初にカウンター、ログ、ルート状態を読み取ってください。
インターフェース管理
interface GigabitEthernet0/1
description UPLINK-TO-CORE
switchport mode trunk
switchport trunk allowed vlan 10,20,30
switchport trunk native vlan 999
no shutdown
明確な説明、明示的な switchport モード、文書化されたネイティブ VLAN を使用してください。ルーテッドインターフェースでは、リンク状態が転送の正しさを意味すると想定する前に、マスク、ピアアドレス、ルーティングプロセスを確認してください。
変更ウィンドウ検証
実際の変更に一致する before/after チェックを使用してください。
show running-config | section interface GigabitEthernet0/1
show interfaces GigabitEthernet0/1
show logging | include GigabitEthernet0/1|changed state|line protocol
show ip route <prefix>
show ip access-lists <name>
ルーティング変更の場合は、変更の前後でネイバー状態とルートテーブルも取得してください。ACL 変更の場合は、汎用的な ping に頼るのではなく、計画されたテストソースからのヒットカウンターを比較してください。
アンチパターン
- デバイス固有の差分を取らずに生成された設定を適用する。
- 変更後のチェックが合格する前に設定を保存する。
- IOS がワイルドカードマスクを期待する場所でサブネットマスクを使用する。
- ACL を間違ったインターフェース方向に適用する。
- ACL、ルートポリシー、認証を無効にしてトラブルシューティングを行う。
- シークレットやトポロジをサニタイズせずに、完全な設定を公開ツールに貼り付ける。
関連情報
- エージェント:
network-config-reviewer - エージェント:
network-troubleshooter - スキル:
network-config-validation - スキル:
network-interface-health