Destination NAT(DNAT)は、着信パケットの宛先IPアドレス(および必要に応じて宛先ポート)を書き換え、返信時にはその変換を元に戻します。これは、DMZ内のWebサーバーなど、プライベートネットワーク上のサーバーが、実際の内部アドレスを公開することなく、パブリックIPアドレスを通じてアクセスできるようにする仕組みです。
主なポイント
- DNATは、着信パケットの宛先IPアドレスとポート番号を上書きします。
- これにより、プライベートアドレスで設定されたサーバーが、パブリックインターネットにさらされてしまいます。
- ポートフォワーディングは、DNATの簡略化された単一サービス形態です。
- 「Twice NAT」は、DNATとソースNATを1つの変換ルールに組み合わせたものです。
- Versa VOSは、CGNATプールと変換ルールを通じてDNATを設定します。
このページの内容: その重要性仕組み種類DNAT およびVersaよくある質問
DNATはなぜ重要なのでしょうか?
多くの組織では、Webフロントエンド、メールリレー、アプリケーションバックエンドなどの内部サーバーを、ルーティング不可能なプライベートアドレス上で運用していますが、それでもインターネットやパートナーネットワークからアクセス可能な特定のサービスが必要です。パブリックアドレスを内部ホストに直接ルーティングすると、ネットワークの実際のアドレスが露呈してしまいます。 DNATはこの問題を解決します。ゲートウェイがパブリックIPアドレスを公開し、一致する接続の宛先を実際のサーバーのプライベートアドレスに書き換え、送信時にはその書き換えを元に戻すことで、内部ホストのアドレスが外部から見えることは決してありません。
宛先フィールドのみが変更されるため、NATデバイスの上流側では内部トポロジーを把握する必要はありません。これは、家庭用ルーターの「ポートフォワーディング」や企業のDMZ設計の背後にある仕組みであり、限られたアドレスプールから多数のサービスにパブリックな存在感を与えるキャリアグレードNATの導入にも拡張可能です。
DNATとは何ですか?
DNATデバイスは、パブリックIPアドレスとポート宛ての着信パケットを傍受し、パケットを転送する前に、宛先フィールドを実際のサーバーのプライベートIPアドレスとポートに書き換えます。状態はフローごとに保持されるため、送信元としてプライベートアドレスを含む応答パケットは、クライアントに到達する前に逆変換が行われます。クライアントからは、接続がパブリックアドレスで終了しているように見えますが、サーバー側には変換されたヘッダーのみが表示されます。
公開ポートとサーバーがリスニングしているポートは一致する必要はありません。DNAT を使用すれば、非標準の外部ポートを標準の内部ポートにマッピングすることができ、柔軟性の向上や、ある程度の隠蔽性に役立ちます。DNAT は、送信パケットの送信元アドレスを書き換えることで、多数のホストがより少ないパブリックアドレスプールを共有できるようにするソース NAT(SNAT)の逆の処理です。両方向で変換が必要な場合、これら 2 つは 1 つのルールに組み合わされることがよくあります(「2 重 NAT」)。
DNATの種類
静的DNATは、1つのパブリックIPアドレス(および必要に応じてポート範囲)を、1つのプライベートIPアドレスに固定の1対1でマッピングします。これは、単一のサーバーを公開するための標準的なパターンです。ポートフォワーディングは、このメカニズムの簡略化されたケースであり、1つのWAN接続、1つのアドレス、および1つのポート範囲に範囲が限定され、完全なルールセットを使用せずに単一のサービスを公開するために用いられます。動的DNATは、固定のマッピングではなく、プールから宛先アドレスを割り当てます。VOSはこれをネットワークの難読化に利用しており、DNSクライアントに通知されるアドレスは動的にバインドされ、サーバーの実際のアドレスとは異なるものになります。2段階NATは、1つのルール内でDNATと送信元NATを実行し、フローの両方のアドレスを一度に変換します。これは、内部と外部のアドレス空間が重複してしまう場合に役立ちます。
DNAT &Versa
VOS では、Director の[Configuration] > [Services] > [CGNAT]、または Concerto の[Configure] > [Secure SD-WAN ] > [Network Services] > [CGNAT Policies] から、CGNAT の一部として宛先 NAT を設定します。詳細については、「CGNAT の設定」および「CGNAT ポリシーの設定」を参照してください。 CGNATプールには、DMZの背後に存在するホストの実際のプライベートアドレスが格納されます。ルールは着信トラフィックと照合し、Destination NAT-44または ポートフォワーディング(簡略化されたショートカット)を適用し、VOSが自動的に逆変換を処理します。
「宛先NATの設定と確認」では、具体的な例を挙げて説明します。ユーザーがWebサーバーのパブリックIPのポート8080にアクセスすると、VOS CPEがそのセッションをサーバーの実際のアドレスのポート80に変換します。この情報は、CLIのNATセッションテーブルおよびDirectorの「Monitor」タブで確認できます。後のリリースでは、ネットワークの難読化を目的とした動的DNATが追加され、動的プールからのクライアントのルックアップに応答するDNSプロキシと組み合わされます。
よくある質問
DNATとSNATの違いは何ですか?
DNATは、着信パケットの宛先アドレスを書き換えます。これは通常、内部サーバーをインターネット上に公開するために行われます。一方、SNATは、発信パケットの送信元アドレスを書き換えることで、複数のホストが限られた数のパブリックアドレスを共有できるようにします。いずれの場合も、返信トラフィックでは変換が元に戻されます。
DNATとポートフォワーディングの違いは何ですか?
ポートフォワーディングは、DNATの簡略化された設定であり、単一のWAN接続、アドレス、およびポート範囲に限定され、1つのサービスを迅速に公開することを目的としています。完全なDestination NAT-44ルールでは、より広範な一致条件、変換後の宛先プール、および複数のサービスでの再利用がサポートされています。
DNATは、IPアドレスだけでなくポートも変換しますか?
はい、オプションとして可能です。DNATでは、宛先IPアドレスのみ、あるいはIPアドレスとポートの両方を書き換えることができます。これにより、ある外部ポートで公開されているサービスを、内部サーバーがリスニングしている別のポートに転送することが可能になります。VOSが自動的にこの転送処理を行います。
Versa のVOSは、DNAT変換をどのように検証するのでしょうか?
VOSでは、CLIからアクティブなNATセッションを表示し、クライアントが接続した外部IP:ポートと、それに対応して変換された内部IP:ポートを一覧表示します。これらのセッションは、Versa Directorの「Monitor」タブからも確認でき、ルールが意図したとおりに機能しているかを確認するのに役立ちます。
Versa のCGNATにおいて、動的DNATはどのような用途に使用されますか?
動的DNATは、固定のマッピングではなく、プールから宛先アドレスを割り当てます。Versa では、ネットワークの難読化のためにこの方式を採用しており、DNSクライアントが解決するアドレスは、そのセッションにおけるサーバーの実際のアドレスとは異なり、動的にバインドされます。
DNATに関する詳細
さらに詳しく知りたい場合は、私たちが信頼している情報源を以下にご紹介します。
| RFC 2663: NAT の用語と考慮事項 | RFC 3022: 従来のIPネットワークアドレス変換装置 |
|---|---|
| IETFのNATに関する基礎用語――ベーシックNAT、NAPT、およびDNATの基盤となる概念。 | NATデバイスが領域間でアドレスを変換する方法に関する、当初の標準規格。 |
関連用語
DNATについてお読みの方は、次にこれらもぜひご覧ください。
| ポート転送 | ドメインネームシステム | セキュア・ソケット・レイヤー |
|---|---|---|
| 1つの外部アドレスとポートの組み合わせを1つの内部ホストにマッピングする、簡略化された単一サービスのDNATマッピング形式。 | ネーミングサービスは、DNATセッションが開始される前に解決されます。動的DNATでは、応答ごとに異なるアドレスがバインドされます。 | DNATが外部に公開する内部Webサーバーを保護するために一般的に使用されるプロトコル。 |