Cisco ASA 5500 シリーズ コンフィギュレーション ガイド(CLI8.2 を使用)
NAT に関する情報
NAT に関する情報
発行日;2012/02/05 | 英語版ドキュメント(2011/09/19 版) | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 21MB) | フィードバック

目次

NAT に関する情報

NAT の概要

NAT のタイプ

ルーテッド モードの NAT

トランスペアレント モードの NAT

ポリシー NAT

NAT および同じセキュリティ レベルのインターフェイス

実際のアドレスとの照合に使用される NAT コマンドの順序

マッピング アドレスのガイドライン

DNS および NAT

関連情報

NAT に関する情報

この章では、Network Address Translation(NAT; ネットワーク アドレス変換)が適応型セキュリティ アプライアンスでどのように機能するかについて説明します。この章は、次の項で構成されています。

「NAT の概要」

「NAT のタイプ」

「ルーテッド モードの NAT」

「トランスペアレント モードの NAT」

「ポリシー NAT」

「NAT および同じセキュリティ レベルのインターフェイス」

「実際のアドレスとの照合に使用される NAT コマンドの順序」

「マッピング アドレスのガイドライン」

「DNS および NAT」

「関連情報」

NAT の概要

アドレス変換では、パケット内の実際のアドレスが、宛先ネットワークでルーティング可能なマッピング アドレスに置き換えられます。NAT は 2 つのステップで構成されます。実際のアドレスをマッピング アドレスに変換するプロセスと、リターン トラフィック用に変換を元に戻すプロセスです。

適応型セキュリティ アプライアンスは、NAT 規則とトラフィックが一致したときにアドレスを変換します。一致する NAT 規則がない場合、そのパケットの処理は続行されます。例外は、NAT 制御をイネーブルにした場合です。NAT 制御では、セキュリティの高いインターフェイス(内部)からセキュリティの低いインターフェイス(外部)に移動するパケットが NAT 規則と一致することが要求されます。一致しない場合、パケットの処理は停止されます。セキュリティ レベルの詳細については、「セキュリティ レベル」を参照してください。NAT 制御の詳細については、「NAT 制御の設定」を参照してください。


) このマニュアルでは、すべてのタイプの変換を一般に NAT と呼びます。NAT の説明では、内部および外部という用語は任意の 2 つのインターフェイス間のセキュリティ関係を表しています。セキュリティ レベルの高い方が内部、セキュリティ レベルの低い方が外部です。たとえば、インターフェイス 1 が 60 でインターフェイス 2 が 50 の場合、インターフェイス 1 が「内部」、インターフェイス 2 が「外部」です。


NAT の利点のいくつかを次に示します。

内部ネットワークでプライベート アドレスを使用できます。プライベート アドレスは、インターネットにルーティングできません。詳細については、「プライベート ネットワーク」を参照してください。

NAT は実際のアドレスを他のネットワークから隠蔽するため、攻撃者はホストの実際のアドレスを取得できません。

重複アドレスなど、IP ルーティングの問題を解決できます。

NAT をサポートしないプロトコルについては、表 40-1 を参照してください。

NAT のタイプ

アドレス変換は、ダイナミック NAT、Port Address Translation(PAT; ポート アドレス変換)、スタティック NAT、スタティック PAT、またはこれらのタイプの組み合せとして実装できます。NAT をバイパスする規則を設定することもできます。たとえば、NAT を実行しない場合に、NAT 制御をイネーブルにします。次の変換タイプが使用可能です。

ダイナミック NAT:ダイナミック NAT では、実際のアドレスのグループは、宛先ネットワーク上でルーティング可能なマッピング アドレスのプールに変換されます。ダイナミック NAT の詳細については、「ダイナミック NAT および PAT の設定」を参照してください。

PAT:PAT では、複数の実際のアドレスが 1 つのマッピング IP アドレスに変換されます。PAT の詳細については、「ダイナミック NAT および PAT の設定」を参照してください。

スタティック NAT:スタティック NAT では、実際のアドレスからマッピング アドレスへの固定変換が作成されます。ダイナミック NAT および PAT では、各ホストは後続する変換ごとに異なるアドレスまたはポートを使用します。スタティック NAT の詳細については、「スタティック NAT の設定」を参照してください。

スタティック PAT:スタティック PAT は、プロトコルおよび実際のアドレスとマッピング アドレスのポートを指定できる点を除くと、スタティック NAT と同じです。スタティック PAT の詳細については、「スタティック PAT の設定」を参照してください。

NAT 制御をイネーブルにすると、外部ホストにアクセスする際に、内部ホストは NAT 規則と一致する必要があります。一部のホストに対して NAT が実行されないようにするには、それらのホストに対する NAT をバイパスするか、または、NAT 制御をディセーブルにする方法もあります。NAT のバイパスの詳細については、「NAT のバイパス」を参照してください。

ルーテッド モードの NAT

図 26-1 は、内部にプライベート ネットワークを持つ、ルーテッド モードの一般的な NAT の例を示しています。内部ホスト 10.1.2.27 が Web サーバにパケットを送信すると、パケットの実際の送信元アドレス 10.1.2.27 はマッピング アドレス 209.165.201.10 に変更されます。サーバが応答すると、応答がマッピング アドレス 209.165.201.10 に送信されます。そのパケットをセキュリティ アプライアンスが受信します。セキュリティ アプライアンスはその後、パケットをホストに送信する前に、マッピング アドレス 209.165.201.10 を変換し、実際のアドレス 10.1.2.27 に戻します。

図 26-1 NAT の例:ルーテッド モード

 

この例について、次のコマンドを参照してください。

hostname(config)# nat (inside) 1 10.1.2.0 255.255.255.0
hostname(config)# global (outside) 1 209.165.201.1-209.165.201.15
 

トランスペアレント モードの NAT

NAT をトランスペアレント モードで使用すると、ネットワークで NAT を実行するためのアップストリーム ルータまたはダウンストリーム ルータが必要なくなります。たとえば、透過ファイアウォールの適応型セキュリティ アプライアンスは、2 つの VRF の間で効果的なため、VRF とグローバル テーブルの間に BGP ネイバー関係を確立することができます。ただし、VRF ごとの NAT はサポートされていないことがあります。この場合、必ず NAT をトランスペアレント モードで使用する必要があります。

トランスペアレント モードの NAT には、次の要件および制限があります。

マッピング アドレスが透過ファイアウォールと同じネットワーク上にない場合、アップストリーム ルータで、(適応型セキュリティ アプライアンスから)ダウンストリーム ルータを指しているマッピング アドレスにスタティック ルートを追加する必要があります。

実際の宛先アドレスが適応型セキュリティ アプライアンスに直接接続されていない場合、適応型セキュリティ アプライアンスで、ダウンストリーム ルータを指している実際の宛先にもスタティック ルートを追加する必要があります。NAT を使用しない場合、アップストリーム ルータからダウンストリーム ルータへのトラフィックは MAC アドレス テーブルを使用するため、適応型セキュリティ アプライアンスでルートを何も必要としません。ただし、NAT を使用する場合、適応型セキュリティ アプライアンスは MAC アドレス ルックアップの代わりにルート ルックアップを使用するため、ダウンストリーム ルータへのスタティック ルートが必要になります。

alias コマンドはサポートされていません。

透過ファイアウォールにはインターフェイス IP アドレスがないため、インターフェイス PAT を使用できません。

ARP 検査はサポートされていません。また、何らかの理由で、一方のファイアウォールのホストがもう一方のファイアウォールのホストに ARP 要求を送信し、開始ホストの実際のアドレスが同じサブネットの別のアドレスにマッピングされる場合、実際のアドレスは ARP 要求で可視のままになります。

図 26-2 に、インターフェイス内部と外部に同じネットワークを持つ、トランスペアレント モードの一般的な NAT のシナリオを示します。このシナリオの透過ファイアウォールは NAT サービスを実行しているため、アップストリーム ルータは NAT を実行する必要がありません。内部ホスト 10.1.1.27 が Web サーバにパケットを送信すると、パケットの実際の送信元アドレス 10.1.1.27 はマッピング アドレス 209.165.201.10 に変更されます。サーバが応答すると、マッピング アドレス 209.165.201.10 に応答を送信し、適応型セキュリティ アプライアンスがそのパケットを受信します。これは、アップストリーム ルータには、適応型セキュリティ アプライアンスを経由するスタティック ルートのこのマッピング ネットワークが含まれるためです。その後、適応型セキュリティ アプライアンスはマッピング アドレス 209.165.201.10 を変換して実際のアドレス 10.1.1.1.27 に戻します。実際のアドレスは直接接続されているため、適応型セキュリティ アプライアンスはそのアドレスを直接ホストに送信します。ホスト 192.168.1.2 でも同じプロセスが発生します。ただし、適応型セキュリティ アプライアンスがルート テーブルでルートをルックアップし、スタティック ルートに基づいて 10.1.1.3 でダウンストリーム ルータにパケットを送信する点は異なります。

図 26-2 NAT の例:トランスペアレント モード

 

この例について、次のコマンドを参照してください。

hostname(config)# route inside 192.168.1.0 255.255.255.0 10.1.1.3 1
hostname(config)# nat (inside) 1 10.1.1.0 255.255.255.0
hostname(config)# nat (inside) 1 192.168.1.0 255.255.255.0
hostname(config)# global (outside) 1 209.165.201.1-209.165.201.15
 

ポリシー NAT

ポリシー NAT では、拡張アクセスリストで送信元アドレスおよび宛先アドレスを指定することにより、アドレス変換対象の実際のアドレスを指定できます。オプションで、送信元ポートおよび宛先ポートを指定することもできます。標準 NAT で考慮されるのは送信元アドレスだけで、宛先アドレスは考慮されません。たとえば、ポリシー NAT を使用して、サーバ A にアクセスするときは実際のアドレスをマッピング アドレス A に変換し、サーバ B にアクセスするときは実際のアドレスをマッピング アドレス B に変換できます。


) ポリシー NAT では時間ベースの ACL をサポートしていません。


セカンダリ チャネルのアプリケーション検査を必要とするアプリケーション(FTP、VoIP など)に対して、ポリシー NAT 文に指定されたポリシーには、セカンダリ ポートを含む必要があります。ポートを予測できない場合、ポリシーはセカンダリ チャネルの IP アドレスだけを指定する必要があります。このコンフィギュレーションを使用して、セキュリティ アプライアンスはセカンダリ ポートを変換します。


) NAT 免除を除くすべてのタイプの NAT は、ポリシー NAT をサポートします。NAT 免除では、アクセスリストを使用して実際のアドレスを指定しますが、ポートが考慮されない点でポリシー NAT とは異なります。その他の相違点については、「NAT 制御がイネーブルな状態での NAT のバイパス」を参照してください。ポリシー NAT をサポートするスタティック アイデンティティ NAT を使用することでも、NAT 免除と同じ結果が得られます。


図 26-3 に、2 台の異なるサーバにアクセスしている 10.1.2.0/24 ネットワークのホストを示します。ホストがサーバ 209.165.201.11 にアクセスすると、実際のアドレスは 209.165.202.129 に変換されます。ホストがサーバ 209.165.200.225 にアクセスすると、実際のアドレスは 209.165.202.130 に変換されます。その結果、ホストはサーバと同じネットワークにあるように見え、ルーティングに役立ちます。

図 26-3 異なる宛先アドレスを使用するポリシー NAT

 

この例について、次のコマンドを参照してください。

hostname(config)# access-list NET1 permit ip 10.1.2.0 255.255.255.0 209.165.201.0 255.255.255.224
hostname(config)# access-list NET2 permit ip 10.1.2.0 255.255.255.0 209.165.200.224 255.255.255.224
hostname(config)# nat (inside) 1 access-list NET1
hostname(config)# global (outside) 1 209.165.202.129
hostname(config)# nat (inside) 2 access-list NET2
hostname(config)# global (outside) 2 209.165.202.130
 

図 26-4 に、送信元ポートおよび宛先ポートの使用例を示します。10.1.2.0/24 ネットワークのホストは Web サービスと Telnet サービスの両方を提供する 1 つのホストにアクセスします。ホストが Web サービスを求めてサーバにアクセスすると、実際のアドレスは 209.165.202.129 に変換されます。ホストが Telnet サービスを求めて同じサーバにアクセスすると、実際のアドレスは 209.165.202.130 に変換されます。

図 26-4 異なる宛先ポートを使用するポリシー NAT

 

この例について、次のコマンドを参照してください。

hostname(config)# access-list WEB permit tcp 10.1.2.0 255.255.255.0 209.165.201.11 255.255.255.255 eq 80
hostname(config)# access-list TELNET permit tcp 10.1.2.0 255.255.255.0 209.165.201.11 255.255.255.255 eq 23
hostname(config)# nat (inside) 1 access-list WEB
hostname(config)# global (outside) 1 209.165.202.129
hostname(config)# nat (inside) 2 access-list TELNET
hostname(config)# global (outside) 2 209.165.202.130
 

ポリシー スタティック NAT(および同じくアクセスリストを使用してトラフィックを指定する NAT 免除)では、変換済みのホストおよびリモート ホストの両方がトラフィックを発信できます。変換済みのネットワークで発信されたトラフィックについては、NAT アクセスリストで実際のアドレスと 宛先 アドレスが指定されますが、リモート ネットワークで発信されたトラフィックについては、この変換を使用してホストに接続することを許可されたリモート ホストの実際のアドレスと 送信元 アドレスがアクセスリストで指定されます。

図 26-5 に、変換済みのホストに接続するリモート ホストを示します。変換済みのホストには、209.165.201.0/27 ネットワークが起点または終点となるトラフィックに限り実際のアドレスを変換するポリシー スタティック NAT 変換があります。209.165.200.224/27 ネットワーク用の変換は存在しません。したがって、変換済みのホストはそのネットワークに接続できず、そのネットワークのホストも変換済みのホストに接続できません。

図 26-5 宛先アドレス変換があるポリシー スタティック NAT

 

この例について、次のコマンドを参照してください。

hostname(config)# access-list NET1 permit ip 10.1.2.0 255.255.255.224 209.165.201.0 255.255.255.224
hostname(config)# static (inside,outside) 209.165.202.128 access-list NET1
 

) ポリシー スタティック NAT では、変換を元に戻すときに、static コマンドの ACL は使用されません。パケットの宛先アドレスがスタティック規則のマッピング アドレスと一致する場合は、スタティック規則を使用してアドレスの変換を元に戻します。



) ポリシー NAT は SQL*Net をサポートしませんが、標準 NAT はサポートしています。他のプロトコルに対する NAT サポートについては、「アプリケーション プロトコル検査を使用するタイミング」を参照してください。


ポリシー スタティック NAT を使用して、異なる実際のアドレスを同じマッピング アドレスに変換することはできません。たとえば、図 26-6 は、209.165.200.225 に変換することを目的とする 10.1.1.1 と 10.1.1.2 という 2 つの内部ホストが示しています。外部ホスト 209.165.201.1 を 209.165.200.225 に接続すると、接続は 10.1.1.1 に向かいます。外部ホスト 209.165.201.2 を同じマッピング アドレス 209.165.200.225 に接続すると、接続は 10.1.1.2 に向かいます。ただし、使用可能なアクセスリストの送信元アドレスは 1 つだけです。最初の ACE が 10.1.1.1 であるため、209.165.201.1 と 209.165.201.2 から送信されて 209.165.200.255 に向かうすべての着信接続は、宛先アドレスを 10.1.1.1 に変換します。

図 26-6 実際の接続は同じマッピング アドレスを共有できない

 

この例について、次のコマンドを参照してください (この例の 2 番目の ACE で、209.165.201.2 の 209.165.200.225 への接続が許可されても、209.165.200.225 は 10.1.1.1 にだけ変換されます)。

hostname(config)# static (in,out) 209.165.200.225 access-list policy-nat
hostname(config)# access-list policy-nat permit ip host 10.1.1.1 host 209.165.201.1
hostname(config)# access-list policy-nat permit ip host 10.1.1.2 host 209.165.201.2

NAT および同じセキュリティ レベルのインターフェイス

同じセキュリティ レベルのインターフェイス間では、NAT 制御をイネーブルにしている場合であっても、NAT は必要とされません。必要であれば、オプションで NAT を設定できます。ただし、NAT 制御がイネーブルの場合にダイナミック NAT を設定すると、NAT が必要になります。詳細については、「NAT 制御の設定」を参照してください。また、同じセキュリティ レベルのインターフェイスのダイナミック NAT または PAT に対して IP アドレスのグループを指定した場合は、それらのアドレスがセキュリティ レベルの低い(または同じ)インターフェイスにアクセスするときに、そのアドレス グループに対して NAT を実行する必要があります(NAT 制御がイネーブルになっていない場合も同じです)。スタティック NAT に対して指定されているトラフィックは影響を受けません。

同じセキュリティ レベルの通信をイネーブルにするには、「同じセキュリティ レベルの通信の許可」を参照してください。


) 同じセキュリティ レベルのインターフェイスに NAT を設定すると、適応型セキュリティ アプライアンスは VoIP 検査エンジンをサポートしなくなります。このような検査エンジンには、Skinny、SIP、H.323 などがあります。サポートされる検査エンジンについては、「アプリケーション プロトコル検査を使用するタイミング」を参照してください。


実際のアドレスとの照合に使用される NAT コマンドの順序

適応型セキュリティ アプライアンスは、実際のアドレスと NAT コマンドを次の順序で照合します。

1. NAT 免除( nat 0 access-list ):順序に従って、最初の一致が見つかるまで続行されます。アイデンティティ NAT はこのカテゴリではなく、標準スタティック NAT または標準 NAT のカテゴリに属します。NAT 免除文でのアドレスの重複はお勧めしません。予期しない結果が発生する可能性があります。

2. スタティック NAT およびスタティック PAT(標準およびポリシー)( static ):順序に従って、最初の一致が見つかるまで続行されます。スタティック アイデンティティ NAT は、このカテゴリに属します。

3. ポリシー ダイナミック NAT( nat access-list ):順序に従って、最初の一致が見つかるまで続行されます。アドレスの重複は許容されます。

4. 標準ダイナミック NAT( nat ):最も適合するものを検出します。標準アイデンティティ NAT は、このカテゴリに属します。NAT コマンドの順序は無関係です。実際のアドレスと最も適合する NAT 文が使用されます。たとえば、インターフェイスですべてのアドレス(0.0.0.0)を変換する汎用文を作成できます。ネットワークのサブネット(10.1.1.1)を別のアドレスに変換する場合は、10.1.1.1 だけを変換する文を作成できます。10.1.1.1 が接続を開始すると、10.1.1.1 用の特定の文が使用されます。これは、その文が実際のアドレスに最も適合するからです。重複する文を使用することはお勧めしません。重複する文により、より多くのメモリが使用され、適応型セキュリティ アプライアンスのパフォーマンスが低下する可能性があります。

マッピング アドレスのガイドライン

実際のアドレスをマッピング アドレスに変換するときは、次のマッピング アドレスを使用できます。

マッピング インターフェイスと同じネットワーク上のアドレス

マッピング インターフェイス(トラフィックが適応型セキュリティ アプライアンスから出るときに通過するインターフェイス)と同じネットワーク上のアドレスを使用した場合、適応型セキュリティ アプライアンスはプロキシ ARP を使用してすべてのマッピング アドレス要求に応答することにより、実際のアドレスに向かうトラフィックを代行受信します。この方法では、適応型セキュリティ アプライアンスがその他のネットワークのゲートウェイである必要がないため、ルーティングが簡略化されます。ただし、この方法では、変換に使用できるアドレス数に限度があります。

PAT では、マッピング インターフェイスの IP アドレスも使用できます。

固有のネットワーク上のアドレス

マッピング インターフェイスで使用可能なアドレスより多くのアドレスが必要な場合は、別のサブネット上のアドレスを指定できます。適応型セキュリティ アプライアンスはプロキシ ARP を使用してすべてのマッピング アドレス要求に応答することにより、実際のアドレスを宛先とするトラフィックを代行受信します。OSPF を使用している場合に、マッピング インターフェイス上のルートをアドバタイズすると、適応型セキュリティ アプライアンスはマッピング アドレスをアドバタイズします。マッピング インターフェイスがパッシブの場合(ルートをアドバタイズしない場合)、またはスタティック ルーティングを使用している場合、マッピング アドレスを宛先としてトラフィックを送信するアップストリーム ルータ上のスタティック ルートを適応型セキュリティ アプライアンスに追加する必要があります。

DNS および NAT

応答内のアドレスを NAT コンフィギュレーションと一致するアドレスに置き換えて、DNS 応答を修正するように適応型セキュリティ アプライアンスを設定することが必要になる場合があります。DNS 修正は、各変換を設定するときに設定できます。

たとえば、DNS サーバが外部インターフェイスからアクセス可能であるとします。ftp.cisco.com というサーバが内部インターフェイス上にあります。ftp.cisco.com の実際のアドレス(10.1.3.14)を、外部ネットワーク上で可視のマッピング アドレス(209.165.201.10)にスタティックに変換するように、適応型セキュリティ アプライアンスを設定します (図 26-7を参照)。この場合、このスタティック文で DNS 応答修正をイネーブルにする必要があります。これにより、実際のアドレスを使用して ftp.cisco.com にアクセスすることを許可されている内部ユーザは、マッピング アドレスではなく実際のアドレスを DNS サーバから受信できるようになります。

内部ホストが ftp.cisco.com のアドレスを求める DNS 要求を送信すると、DNS サーバは応答でマッピング アドレス(209.165.201.10)を示します。適応型セキュリティ アプライアンスは、内部サーバのスタティック文を参照し、DNS 応答内のアドレスを 10.1.3.14 に変換します。DNS 応答修正をイネーブルにしない場合、内部ホストは ftp.cisco.com に直接アクセスする代わりに、209.165.201.10 にトラフィックを送信することを試みます。

図 26-7 DNS 応答修正

 

この例について、次のコマンドを参照してください。

hostname(config)# static (inside,outside) 209.165.201.10 10.1.3.14 netmask 255.255.255.255 dns
 

) 他のネットワーク(DMZ など)のユーザも外部 DNS サーバから ftp.cisco.com の IP アドレスを要求している場合、そのユーザが static コマンドで参照される内部インターフェイスに存在しない場合でも、そのユーザに対して DNS 応答の IP アドレスも修正されます。


図 26-8 に、外部の Web サーバと DNS サーバを示します。適応型セキュリティ アプライアンスには、外部サーバ用のスタティック変換があります。この場合、ftp.cisco.com のアドレスを DNS サーバに要求すると、DNS サーバは応答で実際のアドレス 209.165.20.10 を示します。ftp.cisco.com のマッピング アドレス(10.1.2.56)が内部ユーザによって使用されるようにするには、スタティック変換に対して DNS 応答修正を設定する必要があります。

図 26-8 外部 NAT を使用する DNS 応答修正

 

この例について、次のコマンドを参照してください。

hostname(config)# static (outside,inside) 10.1.2.56 209.165.201.10 netmask 255.255.255.255 dns