ネットワークにおける「NAT(Network Address Translation)」と「PAT(Port Address Translation)」は、プライベートネットワーク内の端末がインターネットにアクセスする際に欠かせない技術です。この記事では、NATとPATの基本的な仕組み、種類、設定方法、そしてトラブル時の確認ポイントまで解説します。
■ NATとは
NAT(Network Address Translation)は、内部ネットワークのプライベートIPアドレスを、外部ネットワーク(インターネット)に出る際にグローバルIPアドレスに変換する仕組みです。これにより、社内の複数の端末がインターネットアクセスを共有できるようになります。
● NATが必要な理由
- プライベートIPアドレスはインターネット上で直接通信できない
- グローバルIPアドレスの節約(IPv4枯渇対策)
- 内部ネットワークのセキュリティ向上
■ NATの種類
| 種類 | 概要 | 用途 |
|---|---|---|
| Static NAT(静的NAT) | 1つのプライベートIPを固定的に1つのグローバルIPに変換する | サーバ公開(Webサーバ・メールサーバ)など |
| Dynamic NAT(動的NAT) | 複数のプライベートIPをプールされたグローバルIPに動的に割り当てる | 外部アクセスのある中規模ネットワーク |
| PAT(Port Address Translation) | 複数のプライベートIPを1つのグローバルIPに変換し、ポート番号で識別する | 一般的な家庭・企業LANでのインターネットアクセス |
■ NAT / PAT の動作イメージ
# 内部から外部への通信時の流れ
192.168.1.10:12345 → (変換) → 203.0.113.5:50001
192.168.1.11:12346 → (変換) → 203.0.113.5:50002
# 外部からの応答時
203.0.113.5:50001 → (逆変換) → 192.168.1.10:12345
203.0.113.5:50002 → (逆変換) → 192.168.1.11:12346
このように、PATではポート番号を使ってどの内部ホストからの通信かを区別します。
■ Ciscoルータでの設定例
! 内部と外部のインターフェースを定義
Router(config)# interface gigabitEthernet0/0
Router(config-if)# ip address 192.168.1.1 255.255.255.0
Router(config-if)# ip nat inside
Router(config-if)# exit
Router(config)# interface gigabitEthernet0/1
Router(config-if)# ip address 203.0.113.5 255.255.255.0
Router(config-if)# ip nat outside
Router(config-if)# exit
! PATの設定(動的NAT)
Router(config)# access-list 1 permit 192.168.1.0 0.0.0.255
Router(config)# ip nat inside source list 1 interface gigabitEthernet0/1 overload
上記の設定により、192.168.1.0/24 の端末が外部へ出る際、203.0.113.5 に変換されます。「overload」はPATを有効化するためのキーワードです。
■ LinuxでのNAT設定例(iptables使用)
# IPフォワーディング有効化
echo 1 > /proc/sys/net/ipv4/ip_forward
# NATマスカレード設定
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
上記は、LinuxでPAT(マスカレード)を行う最も基本的な設定例です。
■ トラブルシューティングのポイント
- 変換テーブルの確認: Ciscoでは
show ip nat translations - 統計情報の確認:
show ip nat statistics - ACL設定ミス: 内部アドレス範囲が誤っていないか確認
- インターフェース指定: inside / outside の設定ミスがないか確認
- Linuxの場合:
iptables -t nat -L -n -vでルール確認
■ まとめ
- NATは内部プライベートアドレスをグローバルアドレスへ変換する技術
- PATは複数端末が1つのグローバルIPを共有できる仕組み
- 設定時は「インターフェース指定」「ACL範囲」「overload」の3点を必ず確認
- トラブル時は変換テーブルと統計情報を最初に確認する
これらを正しく理解しておくことで、ネットワークの設計・運用・トラブル対応すべてに役立つ知識となります。
