今日は、NATの設定でよく出てくる inside / outside の考え方と、確認用の show コマンド について整理しました。
NATは「変換ルール」だけ見ていると分かった気になりますが、実際には どのインターフェースが内側で、どのインターフェースが外側なのか をきちんと決めないと動きません。今回はその基本と、確認コマンドの見方を軽く復習しておこうと思います。
inside / outside はどこに設定するのか
最初に整理しておきたいのは、inside / outside はACLのように通信そのものへ直接付けるものではない という点です。NATでは、ルータのインターフェースに ip nat inside と ip nat outside を設定して、「どちらが内部側で、どちらが外部側か」という変換の境界を決めます。

つまり、考え方としてはかなりシンプルです。
内部ネットワークにつながるインターフェースには ip nat inside、外部ネットワークにつながるインターフェースには ip nat outside を付けます。inside / outside は、NATが「どちらからどちらへ変換を見るか」を決めるためのラベルだと考えると分かりやすいです。
たとえば、社内LAN側のインターフェースが GigabitEthernet0/0、インターネット側のインターフェースが GigabitEthernet0/1 なら、イメージはこんな感じです。
Copyinterface GigabitEthernet0/0
ip address 192.168.1.1 255.255.255.0
ip nat inside
interface GigabitEthernet0/1
ip address 203.0.113.1 255.255.255.0
ip nat outside
実機でもシミュレータでも、まずは「どっちが inside で、どっちが outside か」を落ち着いて確認するのが大事だと感じました。
NAT 用語の復習
ここで、NAT用語ももう一度だけ整理しておきます。
Inside local は、内部ホストがもともと使っているアドレスです。たとえば、PCに設定されている 192.168.1.10 のようなアドレスがこれにあたります。
一方で Inside global は、外部から見える変換後のアドレスです。
NATされたあと、インターネット側からは内部ホストがこのアドレスで見える、というイメージです。
このあたりは最初少し混乱しやすいですが、
inside local = 内部で使っている元のアドレス
inside global = 外部から見える変換後アドレス
と覚えておくと、show コマンドの表も読みやすくなります。
show ip nat translations で何を見るか
show ip nat translations は、今どんなNAT変換が発生しているかを変換テーブルで確認するコマンド です。Ciscoのトラブルシューティング資料でも、このコマンドは「その変換が translation table に存在しているか確認する」ために使うと説明されています。
このコマンドで見るポイントは、
「ちゃんと変換が作られているか」
「inside local と inside global の対応が想定どおりか」
の2つです。
設定を入れたのに通信できないときは、まずこの表にエントリが出ているかを見るだけでもかなり状況が整理しやすいです。
show ip nat statistics で何を見るか
show ip nat statistics は、NAT の統計情報や全体の動作状況を見るためのコマンド です。Ciscoの説明では、NAT統計を監視して、トラフィックを受けたときにカウンタが増えているかを確認できるとされています。つまり、変換テーブルが実際に使われているかを見るためのコマンドです。
個人的には、show ip nat translations が 「変換の中身を見る」 コマンドで、show ip nat statistics は 「NAT全体が動いているかを見る」 コマンド、と分けて考えると理解しやすいと感じました。
通信が流れているはずなのにカウンタが増えていない場合は、ACL、プール不足、ルーティング、inside / outside の設定ミスなども疑うきっかけになります。
まとめ
今回は、NATの細かい設定そのものというより、inside / outside はインターフェースに設定する ことと、show コマンドでどこを確認するか を整理しました。NATは設定文だけ追っていると分かりにくいですが、境界の考え方と確認コマンドの役割が分かると、少しずつ見え方が変わってくる気がします。
次に設定を触るときは、
- inside / outside の付け忘れがないか
- translation table に変換が出ているか
- statistics のカウンタが動いているか
この3点を先に見る癖をつけたいです。

コメント