NAT は Firewall の中で ACL・ステートフルと同じくらい重要な要素です。
NAT は、内部ネットワークの “プライベートIP” と “グローバルIP” を変換して通信させる仕組み。
Firewall は NAT を使って:
- インターネット接続
- サーバーの公開(Port Forward)
- セキュリティ(内部IPの隠蔽)
- DMZ 構築
- 2つの内部ネットワークの仲介
などを行う。
特に ASA の NAT は強力で複雑だが、ルールを理解すれば簡単。
Contents
NAT の種類(Firewall で使うものだけ厳選)
① Static NAT(固定NAT)
「1つの内部IP ↔ 1つのグローバルIP」を紐付ける。
例:
内部サーバー 192.168.1.10 を
外部IP 203.0.113.10 と対応させる。
object network WEB
host 192.168.1.10
nat (inside,outside) static 203.0.113.10
✔ Webサーバーやメールサーバー公開に使う
✔ ポート番号は変えない(1対1対応)
② Dynamic NAT(動的NAT)
内部の複数ユーザーが、
複数のグローバルIPプールから1つずつ借りて通信する NAT。
例:
192.168.1.0/24 → 203.0.113.100〜203.0.113.110
ASA の例:
object network OUTPOOL
range 203.0.113.100 203.0.113.110
nat (inside,outside) dynamic OUTPOOL
✔ 大規模ネットワークで使う
✔ IP枯渇を避けたい場合
③ PAT(Port Address Translation)
複数の内部IP → 1つのグローバルIP を共有する最も一般的な NAT。
家庭用ルーターと同じ仕組み。
例:内部ネットワークを 203.0.113.50 に変換してインターネットへ
object network PAT
host 192.168.1.0
nat (inside,outside) dynamic interface
または:
nat (inside,outside) after-auto source dynamic any interface
✔ 最もよく使われる NAT(企業でも家庭でも標準)
✔ 数万人でも1つのグローバルIPで通信可能
✔ 戻り通信はポート番号によって識別される
④ Twice NAT(ポリシーNAT)
条件付き NAT
(送信元+宛先の組み合わせを見て NAT を変える)
非常に強力で ASA の象徴的な機能。
例:
「特定の宛先へ通信するときだけ NAT を変える」
source 192.168.1.10 が
destination 10.0.0.5 に行くときだけ
送信元アドレスを 192.168.100.10 に変換
ASA例:
nat (inside,outside) source static 192.168.1.10 192.168.100.10 \
destination static 10.0.0.5 10.0.0.5
✔ IPsec VPN でよく使う(Proxy-ID合わせ)
✔ 特定の通信だけ NAT を適用したい場合に必須
✔ 通常の NAT より優先度が高い
NAT が必要な理由(FWで重要な3つ)
① 内部IPはインターネットで使えないため
RFC1918:
- 10.0.0.0/8
- 172.16.0.0/12
- 192.168.0.0/16
これらは外に出られない → NAT 必須。
② 内部構成を隠す(セキュリティ)
外部から内部IPが見えなくなるため、攻撃の難易度が上がる。
③ 複数LANを接続するため(VPN/DMZ)
IPアドレスが重複する環境でも、Twice NAT で通信できる。
NAT と ACL の動作順序(ASAはここが難しい)
ASA は NAT 後のアドレスで ACL をチェックする
(ここがルータとの違い)
例:
192.168.1.10 → 203.0.113.50 に NAT
ACL は 203.0.113.50 として評価される。
NAT とステートフルの連携
NAT で変換された通信は、すべて 接続テーブル に記録される。
例:
192.168.1.10:54321 → 203.0.113.50:80
変換後:
203.0.113.100:54321 → 203.0.113.50:80
ステートフルは:
- NAT前IP
- NAT後IP
- ポート番号
- 接続状態
をすべて記録する。
だから戻り通信を正確に内部へ返せる。
よく使う NAT の実例 3パターン
① インターネットアクセス用 PAT
object network LAN
subnet 192.168.1.0 255.255.255.0
nat (inside,outside) dynamic interface
② Webサーバーの公開(Static NAT)
object network WEB
host 192.168.1.10
nat (dmz,outside) static 203.0.113.10
③ IPsec VPN 用の特定宛先だけ NAT (Twice NAT)
nat (inside,outside) source static 192.168.1.0 172.16.10.0 \
destination static 10.0.0.0 10.0.0.0
まとめ(短く重要部分)
| 種類 | 用途 |
|---|---|
| Static NAT | サーバー公開(1対1) |
| Dynamic NAT | IPプールで変換(複数IP必要時) |
| PAT | 最も一般的。内部多数 → 外部1IP |
| Twice NAT | 条件付き・VPN対応・最強NAT |
✔ ASA は NAT後のアドレスで ACL を評価
✔ NAT とステートフルは密接に連動
✔ Manual NAT が最優先