NATとは?現役が教える仕組みと、CCNAで混乱する4つのアドレス

CCNAと実務

NATは、ネットワークの学習で必ず出てくる技術です。「プライベートIPアドレスをグローバルIPアドレスに変換する仕組み」——この説明自体は、どこを調べても書いてあります。

ただ、CCNAの学習者がつまずくのはその先です。inside local、inside global、outside local、outside global——この4つのアドレスが出てきた瞬間、多くの人が混乱します。

そして現場でも、この「方向」の理解があやふやなまま設定して、通信が通らずに悩む人がとても多い。

この記事では、現役10年のネットワークエンジニアとして、NATの基本から、CCNAで問われる4つのアドレスの整理、そして現場で本当にやらかすミスまで解説します。

NATとは:アドレスを「翻訳」して外に出す仕組み

NAT(Network Address Translation)は、IPアドレスを別のIPアドレスに変換する技術です。

なぜ必要かというと、IPv4のグローバルIPアドレスには数の限りがあるからです。社内のPC・サーバー・プリンタすべてにグローバルIPを割り当てるのは現実的ではありません。

そこで、社内ではプライベートIPアドレス(192.168.x.xなど)を使い、インターネットに出る境界(ルータやファイアウォール)でグローバルIPに変換する——これがNATの役割です。

社内のネットワークとインターネットの境界に立つ「翻訳係」だとイメージするとわかりやすいと思います。

NAT・NAPT・PAT——言葉が3つ出てくる理由

ここで最初の混乱ポイントです。現場でも試験でも、似たような言葉が3つ出てきます。

用語変換するもの対応
NAT(狭義)IPアドレスのみ1対1
NAPTIPアドレス+ポート番号1対多
PATIPアドレス+ポート番号1対多

NAPTとPATは、実質的にほぼ同じものを指していると考えて差し支えありません(Ciscoの世界ではPAT、一般的な文脈ではNAPT、Linux系ではIPマスカレードと呼ばれることが多い、という程度の違いです)。

そして重要なのは、1対1のNATだけでは、複数の端末が同時にインターネットに出られないという点です。グローバルIPが1つしかなければ、1台しか外に出られません。

そこでポート番号も一緒に変換することで、1つのグローバルIPを複数の端末で共有できるようにしたのがNAPT(PAT)です。家庭用ルータも企業の出口も、実際に動いているのはほぼこれです。

現場では「NAT」と口にしていても、実際に設定しているのはNAPT(PAT)であることがほとんどです。ただし言葉としてはNAT・NAPT・PATが混在して飛び交うので、話の文脈でどれを指しているのか読み取る必要があります。

CCNA最大の関門:inside/outside × local/global の4アドレス

サイト主
サイト主

inside/outside × local/global の4つ、ここがNATの山場です。丸暗記より“どこから見た、どの状態のアドレスか”という方向で捉えると、混乱がほどけます。

ここがCCNA学習者が最も混乱する部分であり、同時に現場の設計でも本当に効いてくるところです。

Ciscoの世界では、NATに関わるアドレスを4種類に分けて呼びます。整理のコツは、2つの軸を分けて考えることです。

  • inside / outside=そのアドレスが「どちら側の機器のものか」(社内側か、インターネット側か)
  • local / global=そのアドレスが「どちら側から見た表記か」(社内から見た姿か、インターネットから見た姿か)
名称意味
inside local社内の機器の、社内から見たアドレス(=実際のプライベートIP)
inside global社内の機器が、インターネット側から見えるアドレス(=変換後のグローバルIP)
outside localインターネット側の機器が、社内から見えるアドレス
outside globalインターネット側の機器の、実際のアドレス

まず押さえるべきは、inside local と inside global の関係です。

社内PC(192.168.1.10=inside local)がインターネットに出るとき、グローバルIP(203.0.113.1=inside global)に変換される。この「名札の付け替え」がNATの本体です。

正直に言うと、outside local と outside global の区別は、通常のインターネット接続では意識しない場面も多いです。ただ設計するときは、この方向の概念を必ず意識する必要があります。ここを取り違えると、設定が正しく動きません。

【現場の落とし穴①】inside と outside が逆

現場で本当によくあるミスが、これです。inside と outside を逆に設定してしまう

Ciscoのルータでは、各インターフェースに「こちらが内側(ip nat inside)」「こちらが外側(ip nat outside)」を宣言します。この向きを取り違えると、NATは期待どおりに動きません。

設定コマンド自体は打てているので、一見すると正しく設定できているように見えるのが厄介なところです。

NATは「どちら側からどちら側へ向かう通信を変換するのか」という方向が命です。通信が期待どおりに変換されないときは、まずインターフェースのinside/outside指定を疑ってみてください。

【現場の落とし穴②】NATに紐づくACLの書き方

もう一つ、新人が最も悩むのがここです。NATの設定では、「どの通信をNATの対象にするか」をACL(アクセスリスト)で指定します

ここで混乱が起きやすいのは、ACLには本来「通信を許可・拒否するフィルタ」という役割があるからです。NATで使うACLは、通信を遮断するために書くのではなく、「この範囲の送信元アドレスを変換対象にする」という”対象の指定”として書きます

同じACLという道具が、文脈によって違う目的で使われるわけです。ここを理解していないと、「permitって書いたら通信が許可されるんじゃないの?」と頭が混乱します。

実際、後輩を見ていても「ACLをどう書けばいいかわからない」という悩みは非常に多いです。NATを学ぶときは、ACLの役割(対象の指定)とセットで理解しておくと、つまずきにくくなります。ACLそのものの仕組みについてはACLの記事で詳しく解説しています。

NATはセキュリティ機能ではない

サイト主
サイト主

ここ、勘違いしている人が多いです。NATに守られていると思い込むのは危険。通信を守るのはファイアウォールのポリシーやACLの仕事です。

よくある誤解として、「NATがあるから外部から攻撃されない」というものがあります。

確かにNAPT環境では、外部から社内の端末に直接アクセスするのは難しくなります。しかしこれはあくまで副次的な効果であって、NATはセキュリティのための仕組みではありません。

通信を制御して守るのは、ファイアウォールのポリシーやACLの役割です。NATに守ってもらっている気になるのは危険なので、この点は正確に理解しておいてください。

まとめ

  • NATはIPアドレスを変換する技術。IPv4枯渇対策として、社内のプライベートIPを境界でグローバルIPに変換する。
  • NAT(1対1)だけでは複数端末が同時に外に出られない。ポート番号も変換するNAPT(=PAT)が実際にはほぼ全ての現場で使われている。
  • CCNAの関門はinside/outside × local/global の4アドレス。まずは inside local(実際のプライベートIP)と inside global(変換後のグローバルIP)の関係から押さえる。
  • 現場の落とし穴:inside と outside を逆に設定するNATに紐づくACLの書き方で悩む。方向の概念は設計で必ず効く。
  • NATはセキュリティ機能ではない。守るのはFWポリシーとACLの役割。

ネットワークを分割するVLANについてはVLANの記事、IPアドレスの構造を理解するにはサブネット計算の記事もあわせてどうぞ。CCNAの知識が現場でどう活きるかはCCNAと実務の記事で書いています。

コメント

タイトルとURLをコピーしました