本文へ移動

インフラ転職コンパス難しいインフラ技術を動画と図解で解説

メニュー

Cisco IOSのNAT・ACL・Routing処理順をパケットフローで解説

Cisco IOSのNAT・ACL・ルーティング処理順は、inside-to-outsideかoutside-to-insideか、input ACLかoutput ACLか、NVI/VRF/platform機能を使うかで見方が変わります。暗記表だけでルールを設計せず、対象バージョンのパケット processing資料とdebug以外の状態情報で確認します。

この記事でわかること

  • Cisco IOSのNAT・ACL・ルーティングはどの順で処理される?
  • insideからoutsideでは何を見る?
  • outsideからinsideでは何を見る?
  • input・output ACLはどのアドレスを参照する?

この記事はネットワークエンジニア転職完全ガイドの関連テーマです。工程の全体像から確認したい場合はそちらへ。

Xの元ポスト

Cisco IOSのinside→outside通信でinput ACL、Routing、NAT、output ACLの順を整理したポスト。

けんと@設計構築チャンネル
けんと@設計構築チャンネル
NATのACL・ルーティングは、機能名だけでなく処理される順番で追います。変換前後のIPアドレスとポート、ACLが参照する値、経路選択を通信方向ごとに表へ分けてください。

Cisco IOSのNAT・ACL・ルーティングはどの順で処理される?

従来型のinside/outside NATを使うCisco IOSでは、通信方向によってNATと経路検索の順序が入れ替わります。Ciscoの解説(検証環境:IOS 12.2(27))では、inside→outsideは入力ACL→経路検索→NAT→出力ACL、outside→insideは入力ACL→NAT→経路検索→出力ACLです。

方向 主要な処理順(簡略) 設計で見る点
inside → outside input ACL → routing → NAT → output ACL 入力側は変換前の送信元、出力側は変換後の送信元
outside → inside input ACL → NAT → routing → output ACL 入力側は公開宛先、出力側は変換後の内部宛先

これは掲載資料の構成とIOS版に限った主要段階の説明です。NVI、VRF、Zone-Based Firewall、ハードウェア転送、IOS XEの機種差へ無条件に一般化できません。対象製品と版の資料、ACLカウンター、変換表、実パケットで照合します。

根拠:Cisco:Understand the NAT Order of Operation

insideからoutsideでは何を見る?

例:社内PC 10.0.0.10が外部サーバー 203.0.113.20へ接続し、送信元が 198.51.100.10に変換される場合です。

観測点 送信元IP 宛先IP
inside入力ACL 10.0.0.10(変換前) 203.0.113.20
経路検索 10.0.0.10 203.0.113.20宛の出力先を選ぶ
NAT後/outside出力ACL 198.51.100.10(変換後) 203.0.113.20

ip access-groupで適用するインターフェースACLと、NAT対象を選ぶためのACLは用途が違います。両方を単に「NATのACL」と呼ばず、設定箇所と評価されるアドレスを分けて記録します。

outsideからinsideでは何を見る?

返信パケットが外部サーバー 203.0.113.20から公開アドレス 198.51.100.10へ戻る場合です。従来型のinside NATでは、outside入力ACLを通った後に宛先が内部PC 10.0.0.10へ逆変換され、その宛先で経路検索されます。

観測点 送信元IP 宛先IP
outside入力ACL 203.0.113.20 198.51.100.10(公開側)
NAT後の経路検索 203.0.113.20 10.0.0.10(内部側)
inside出力ACL 203.0.113.20 10.0.0.10

変換エントリがない、復路が別のNAT装置へ流れる、経路やACLが合わない場合は戻り通信が成立しません。変換表だけで成功判定せず、両側でパケットとカウンターを確認します。

input・output ACLはどのアドレスを参照する?

症状ごとの原因候補と、次に確認することを次の表にまとめます。正常時の出力と並べて差を見ます。

正常時と異常時の切り分け
症状・誤り 主な原因候補 次に確認すること
図とカウンターが不一致 別ルール/経路/参照範囲 matched sequenceとVRF
変換なし NAT ACL不一致・inside/outside誤り statisticsと設定
変換あり通信なし 戻り経路・outside ポリシー reverse direction
debugで高負荷 無条件debug カウンター/ログ/キャプチャを先に使う
けんと@設計構築チャンネル
けんと@設計構築チャンネル
障害時は往路だけで判断せず、変換テーブル、ACLのヒットカウント、戻り経路、サーバーログの時刻をそろえると、どの処理で止まったかを切り分けやすくなります。

設計と実機をどう照合する?

Ciscoのdebug ip パケットやdebug ip natは本番負荷と大量出力を招く可能性があります。maintenance条件とフィルターを設計し、まずshow command、ACL カウンター、フロー record、パケットキャプチャで絞ります。

  • 対象機器・インターフェース・VRF/VLAN
  • 取得日時・タイムゾーン・ソフトウェアバージョン
  • 変更前後の同一コマンド出力
  • 期待値・実測値・判定者
  • 異常時の停止条件と切り戻し結果

関連する記事

まとめ:暗記した順序ではなく、対象方向のカウンターと変換で検証する

要点は、暗記した順序ではなく、対象方向のカウンターと変換で検証することです。NAT前後どちらのアドレスで一致したかを、ACLのヒットカウンタで確認します。

最近の記事
ピックアップ