NAT/NAPT

グローバルアドレス空間とプライベートアドレス空間の間で、アドレス変換やポート番号変換によって相互の通信を可能にする機能です。

LAN内プライベートアドレスのホストからインターネットへアクセスしたり、特定のホストのみをインターネットに公開したりすることができます。

1. 仕様概要
項目
NATセッションの上限 65536
静的NATの設定上限 256
静的NAPTの設定上限 256
NAPTの設定上限 16
リフレクションNATの設定上限 8
2. IPv4/IPv6対応状況
機能 IPv4 IPv6 備考
NAT/NAPT ×
3. デフォルトの動作状態
機能 状態 備考
NAT/NAPT 無効

NAT/NAPTの適用優先順位

適用優先順位は次の通りです。
  1. 静的NAT
  2. 静的NAPT
  3. NAPT
注:
  • 静的NATが使用するグローバルアドレスとNAPTが使用するグローバルアドレスが同一であると、静的NATが適用されNAPTは適用されません。

フィルタ処理順序

入力方向
  1. NAT/NAPT
  2. IPパケットフィルタ
  3. ポリシールーティング
出力方向
  1. ポリシールーティング
  2. IPパケットフィルタ
  3. NAT/NAPT

NAPT

NAPT機能を使用すると、一つのグローバルアドレスに対してTCP/UDPのポート単位でのセッション管理を行い、プライベートネットワークの複数の端末から同時にパブリックネットワークと通信することができます。

一般的に、接続時にグローバルアドレスを1個払い出すPPPoE接続サービスやダイアルアップIP接続サービスなどで利用されます。

NAPTは原理上TCP/UDP通信に対してのみ有効ですが、本装置はICMPv4についても独自にセッション管理を行っており、プライベートネットワーク内の複数のホストからパブリックネットワーク側へのpingコマンド等の利用が可能です。

NAPT対象のグローバルアドレスの任意設定

NAPT適用時のグローバルアドレスは、通常はNAPTを適用するインタフェースのグローバルアドレスとなります。

NAPT適用時のグローバルアドレスは任意に設定でき、設定した場合、設定したアドレス宛への外部からのTCP/UDP接続は、すべてそのアドレス宛へと変換されます。(設定しない場合、NATセッションが無い状態での外部からの接続は本装置自身が受信します)

NATセッションの作成・検索

NAPTが適用される通信が発生すると、パケット内の特定の値を検索キーとして既存のNATセッションとの一致の有無を検索し、一致しない場合にNATセッションを追加します。

検索キーとなる値は下表のとおりです。

4. NATセッションの検索キー
パケットの種類 検索キーとなる値(AND検索)
tcp protocol, source address, destination address, source port, destination port
udp protocol, source address, destination address, source port, destination port
icmp-error icmpパケットに含まれるエラー元パケットの内容に準ずる
icmp-echo/reply protocol, source address, destination address, icmp id
icmp-timestamp/reply protocol, source address, destination address, icmp id
icmp-ireq/reply protocol, source address, destination address, icmp id
icmp-maskreq/reply protocol, source address, destination address, icmp id
icmp-その他 protocol, source address, destination address
gre(gre flagsのKbit=0) protocol, source address, destination address, gre callid=0
gre(gre flagsのKbit=1) protocol, source address, destination address, gre callid
その他 protocol, source address, destination address

NAPT適用時の送信元ポート番号割り当て方法

NAPTを使用すると、一つのIPアドレスを複数の端末が共有するためにパケットの送信元ポート番号が変更されます。このポート番号の割り当て方法によって何らかの不都合が生じる場合に、割り当て方法を変更することができます。
自動割り当て(デフォルト)
元パケットの送信元ポート番号と同じポートが未使用であれば、同じ番号を送信元ポートとして割り当てます。同じポートが使用中であれば、近い番号のポートを送信元ポートとして割り当てます。
ランダムに割り当てる
未使用のポート番号からランダムに割り当てます。
同一の送信元ポート番号を使用する多数の通信があるとき、近い番号から空ポートを探索すると非効率であるため、ランダムに割り当てることが効率的である場合があります。
非特権ポートに限定する
未使用の非特権ポート(1024 - 65535)から割り当てます。
特権ポートからの接続を受け付けないサービスとの通信に対応できますが、非特権ポートからの接続を受け付けないサービスとの通信に影響する可能性がありますのでご注意ください。
注: 割り当てポート番号を固定するには静的NAPTを使用してください。

予約ポート番号

下表のポート番号は本装置の機能が使用する場合があるため予約されます。
  • 予約ポートは、通信にNAPTを適用する時に割り当てません。
  • 予約ポートは、UPnPのポートマップ要求でマッピングできません。
  • 静的NAPTによるポート割当は、予約より優先されます。ただし、静的NAPTで予約ポートを他のホストに差し向けると、本装置の機能が当該ポートを使用できず通信できなくなります。
5. 予約ポート番号一覧
プロトコル ポート番号 使用する機能
TCP 22 Secure Shell
TCP 23 Telnet
TCP/UDP 53 DNS中継
UDP 67 DHCP
TCP 80 Webインタフェース
UDP 123 NTP
UDP 161 SNMP
TCP 179 BGP
TCP 443 SSTP
UDP 500 IKE
UDP 520 RIP
UDP 521 RIPng
UDP 1701 L2TP
TCP 1723 PPTP
UDP 1900 UPnP
TCP 3000 UPnP
UDP 4500 IKE(NAT-T)
UDP 5001 スループット測定(iperf)
TCP 10443 SMFv2

静的NAPT

静的NAPT機能を使用すると、TCP/UDPの特定ポート宛ての通信、及び任意のプロトコルの通信を、指定したホストへ転送することができます。

プライベートネットワーク内のホストに対して、特定ポートに限りグローバルネットワークからのアクセスを可能にする場合等に使用します。

静的NAT

静的NATは、グローバルアドレスとプライベートアドレスを1対1の固定ペアとして関連付け、アドレスを変換します。

動的NATと異なり変換されるグローバルアドレスとプライベートアドレスのペアは常に固定であるため、静的NATの対象となるホストはプライベートアドレスでありながら常にパブリックネットワークから通信可能になります。

動的NAT

動的NATは、1つまたは複数のグローバルアドレスをプールとして用意し、プライベートネットワークからパブリックネットワーク側へ通信しようとするホストへ先着順で1対1のペアとして一時的に関連付け、アドレスを変換します。

プライベートネットワークは任意の範囲を指定可能ですが、同時に通信可能なホスト数はプールに割り当てたグローバルアドレスの数が上限になります。

グローバルアドレスがすべて使用されているときは新たな関連付けができず通信できません。既存のセッションが終了すると、また先着順で通信可能になります。

リフレクションNAT

リフレクションNATを使用すると、プライベート側ネットワークから、NAT/NAPT機能で設定したグローバル側アドレスへのアクセスが可能になります。

静的NATや静的NAPTを使用してプライベートネットワーク内のサーバをパブリックネットワークに公開した場合、プライベートネットワーク内のホスト(公開サーバと同一セグメントのホスト)からこの公開サーバのグローバルアドレスに対する通信が成立しません。サーバへ向かうパケットの送信元を変換しないため、リプライパケットが本装置を経由せずに送信元に届きます。クライアントはアクセスしたサーバとは異なるアドレスからパケットを受けとるため、通信を成立できません。

リフレクションNATを使用すると、静的NATや静的NAPTを適用する際に送信元アドレスも書き換えます。これによりリプライパケットが本装置を経由するため、送受信パケットのアドレス食い違いを防ぐことができます。

ヒント:
  • 公開サーバと同一セグメント内のホストから公開サーバのホスト名でアクセスするために、外部公開用に設置されたDNSで名前解決を行う環境等で有効です。
  • NATを適用する通信が増加するため、リフレクションNATを使用しない場合に比べてNATセッション数が増加します。

NATのオプション機能

NATに関連するオプション機能について解説します。

透過プロキシ・パススルー

FTP透過プロキシ

NAT変換を介したFTP通信が可能です。

  • EPRT, EPSV, PORT, PASV コマンドのIPアドレス部を書き換えます。
PPTP透過プロキシ

NAT変換を介したPPTP通信が可能です。

  • プライベート側ネットワーク内のPPTPクライアントから、グローバル側ネットワークのPPTPサーバへ接続できます。
  • PPTPセッション1個につき、2個のNATセッションを使用します。
  • PPTPセッション数の制限はありません(NATセッションの最大保持数に依存)
SIPプロキシ

NAT変換を介したSIP通信が可能です。

VoIP端末が送信するSIPパケットを処理する際に、パケットのヘッダ部の送信元IPアドレスおよびポート番号と共にSIPのメッセージ部に含まれるIPアドレスも書き換えます。これによりプライベートネットワーク内に複数のVoIP端末を設置し、それぞれ独立した通話が可能です。

  • 1個のSIP端末につき、3個のNATセッションを使用します。
  • 本装置をSIP端末より後に起動した場合、もしくは本装置を再起動した場合、一定時間着信できません。
  • NAT変換で利用するグローバルIP アドレスが動的に変更された場合、一定時間着信できません。
  • SSLで暗号化されたSIPパケットは書き換えることができません。
  • VoIP端末側でUPnP機能を併用すると正常に通信できません。
  • 送信元ポート番号が5060番ではないSIPパケットにも対応します。
  • NAPT使用時は書き換え後の送信元ポート番号が不定になるため、送信元ポート番号が5060番固定である必要があるサービスは利用できません。
IPsecパススルー

NAT変換を介したIPsec通信を可能とする、IPsecパススルー機能を提供します。

  • ESPパケットをNAPTの逆変換対象とするセッションを生成することで、 プライベート側ネットワーク内のIPsecクライアントから、グローバル側ネットワークのIPsecサーバへの接続を可能とします。
  • 一つのサーバに対しては、最初に接続を試みた一つのクライアントからのみ接続が可能です。
  • プロトコルの仕様上、AH(Authentication Header)を使用している場合にはパススルーできません。
NAT連動Proxy ARP
静的NATに割り当てられたIPアドレスへのARPリクエストに対して、本装置のMACアドレスをリプライします。
6. NAT適用時のデフォルト動作
機能 状態
FTP透過プロキシ 常に有効
PPTP透過プロキシ 常に有効
SIPプロキシ 無効
IPsecパススルー 常に有効
NAT連動Proxy ARP 無効

NATバイパス

指定した条件に一致する通信についてNAT変換の適用を除外することができます。

NATを広範囲に適用する環境において一部のアドレス帯についてNAT変換の適用を除外するルールを設定することができます。

適用の除外ルールの優先度は、静的NAT、動的NAT、NAPT、及び静的NAPTより高く、UPnPにより生成された静的NAPTルールより低くなります。

NATセッションタイマー

NATセッションの有効期間は設定により変更できます。

  • NATセッションは、規定の期間使用されていないと消去されます(デフォルト:900秒)。
  • 有効期間は通信の種別により個別の値が設けられているものがあり、また、種別により任意の値を設定することができます。
    • ICMP Echo Request により生成され、ICMP Echo Reply が帰った NATセッション、及び、FIN が双方向に通過した TCP セッションについては短時間で消去されます。また、DNSリクエスト(UDP port53)によるNATセッションはタイマーが15秒となります。

NATセッション数の上限と制限

NATセッションは仕様上の最大数により制限されるほか、一部利用者による占有を防ぐために上限を制限できます。

NATセッション保持数の制限
プライベート側IPアドレス一つあたりに許可する保持数の上限を設定できます。LAN内の特定のホストがPeer to Peerアプリケーション等により多数のホストとのセッションを維持するような場合に効果があります。
注: 保持しているNATセッション数が最大値に達すると、新たなNATセッションは生成できません。