このセクションでは、NSX Advanced Load Balancer サービス エンジンの NAT 機能について説明します。

新しいアプリケーション サーバを展開する場合、サーバの管理のために外部接続が必要になります。

サーバ ネットワークにルーターがない場合、サービス エンジンの IP ルーティング機能を使用し、NSX Advanced Load Balancer SE を使用してサーバ ネットワークのトラフィックをルーティングできます。また、サーバのプライベート ネットワーク全体に NAT ゲートウェイを使用するには、SE の NAT 機能が必要です。

注:

この機能は IPv6 ではサポートされていません。

NAT は、SE のパケット パスのルーティング後のフェーズで機能します。SE のデフォルト ゲートウェイ(サービス エンジンでの IP ルーティング)機能を確認することをお勧めします。詳細については、「デフォルト ゲートウェイ(NSX Advanced Load Balancer SE での IP ルーティング)」を参照してください。

送信 NAT 機能を使用するには、サービス エンジンで IP ルーティングを有効にし、ゲートウェイとして SE を使用する必要があります。したがって、サービス エンジンで IP ルーティングを有効にするために必要なすべての要件は、送信 NAT 機能にも適用されます。

注:

TCP/UDP および ICMP フローでは、送信 NAT がサポートされます。

NAT ガイドライン

NAT は VRF に対応しており、ルーティング サービス タイプのネットワーク サービスを使用して SE グループごとにプログラミングする必要があります。詳細については、「ネットワーク サービスの構成」を参照してください。

NAT/IP ルーティングは、Linux サーバ クラウドと VMware Cloud の 2 アーム、アクセス権なしの構成でサポートされます。

NSX Advanced Load Balancer は、書き込みアクセス モードの VMware Cloud 展開で NAT をサポートします。この機能を VMware 書き込みアクセス クラウドで使用するには、少なくとも 1 つの仮想サービスを次のように構成する必要があります。

  • 1 つのアーム(2 アーム モード展開の)を、バックエンド ネットワークに配置する必要があります。このネットワークの場合、SE はデフォルト ゲートウェイとして機能します。

  • もう 1 つのアームは、目的のフロントエンド ネットワークに配置されます。

  • ネットワーク サービスの SE グループは、Legacy HA(アクティブ/スタンバイ)である必要があります。

  • ルーティング サービスでルーティング セットが有効になっている必要があります。

  • NAT 機能はサービス エンジンの IP スタックによって実行されるため、ルーティング サービスの routing_by_linux_ipstack 属性を False に設定する必要があります。

  • DPDK ベースの SE のみが許可されます。

  • VMware 書き込みアクセス モードでは、仮想サービスを作成する必要があります。この仮想サービスは、必要なサービス エンジンを作成します。

  • NAT ルールの NAT IP を VRF 内に存在するインターフェイス IP と同じにすることはできません。そのような NAT IP は無視されます。

  • NAT IP は、セカンダリ IP としてインターフェイス上に構成されます。そのため、異なるサービス エンジン グループが特定の VRF の NAT IP を共有することはできません。

NAT サービス

内部から外部に向かって開始された NAT サービス トラフィックを図で表現すると、次のようになります。



NAT サービス トラフィックを表現した図に記載されているフローの詳細は、1 ~ 8 です。フローの詳細は次のとおりです。

フロー数

説明

1

DG 用のサーバ ARP で、MAC-A を取得します。サーバは IP パケットを MAC-A に送信します。[S:IP-SX、D:IP-Ext]

2

これは新しいフローであるため、サービス エンジンは NAT エントリを作成し、src-IP と S-port の NAT を実行してルーター (MAC-R) にパケットを送信します。[S:SE-NIP, D:IP-Ext]

3

ルーターはインターネット ルーティングを使用して Ext に転送します。[S:SE-NIP, D:IP-Ext]

4

Ext は、SX によって送信されたパケットを受信します。[S:SE-NIP, D:IP-Ext]

5

宛先によって受信されたパケット。[S:IP-Ext, D:SE-NIP]

6

SE-NIP および SE-Active のルーター ARP が ARP に対応します。[S:IP-Ext, D:SE-NIP]

7

SE は NAT フロー テーブルを検索し、一致に基づいて dst-IP:port を実際のサーバの IP ポートに変更します。[S:IP-Ext, D:IP-SX]

8

SE は IP ルーティングを行い、MAC-SX にパケットを送信します。[S:IP-Ext, D:IP-SX]

注:
  • ルーターは、SE グループのフロントエンド フローティング IP アドレスとして機能します。SE バックエンド ネットワークは、フロントエンドではルーティングできません。

  • フローティング IP アドレスでは、バックエンド ネットワークはフロントエンドでルーティングできません。

NAT では、ネットワークのさまざまなポイントで次の構成が必要です。

  • NSX Advanced Load Balancer Controller では、[詳細] タブの構成のサービス エンジン グループ(Legacy HA のみ)で [IP ルーティングを有効化]できます。

  • フロントエンド ルーターで、ネクスト ホップをフロントエンド ネットワークのフローティング IP アドレスとして使用して、バックエンド サーバ ネットワークへの静的ルートを構成します。

  • バックエンド ルーターで、バックエンド サーバ ネットワーク内の SE のフローティング IP アドレスをデフォルト ゲートウェイとして構成します。

ユーザー インターフェイスを使用した NAT ポリシーの構成

NAT ポリシーを構成する手順は次のとおりです。

  1. [テンプレート] > [ポリシー] > [NAT ポリシー] の順に移動します。[CREATE] をクリックします。



  2. NAT ポリシーの名前を指定します。

  3. [ルールの有効化] ボックスにチェックを入れます。

  4. [一致] タブで [宛先][送信元 IP アドレス] を指定します。

  5. [アクション] タブで [タイプ][IP アドレス] を指定します。

  6. 必要な詳細を指定した後、[保存] をクリックします。

CLI を使用した NAT ポリシーの構成

NAT ポリシーは次のように構成できます。

  1. 10.100.0.78 はサーバが到達しようとしている宛先 IP アドレスであり、10.100.0.26 は NAT IP アドレスであると仮定しましょう。この IP アドレスはサービス エンジンによって所有されています。NAT IP アドレスは、SE のフロントエンド フローティング インターフェイス IP アドレス (10.100.0.2) としてネクスト ホップを使用して、フロントエンド ルーター上で静的ルートとして構成する必要があります。

    configure natpolicy nat-policy-default-group-global
        rules index 1
            enable
            name rule1
            match
                  source_ip match_criteria is_in
                        addrs 192.168.100.21
                        ranges begin 192.168.100.2 end 192.168.100.10
                        save
                        prefixes 192.168.100.1/24
                        save
                  destination_ip match_criteria is_in
                        addrs 10.100.0.78
                        save
                  services
                        destination_port match_criteria is_in
                             ports 80
                             ports 443
                        save
                        source_port match_criteria is_not_in
                             ports 800
                        save
                  save
          save
          action
             type nat_policy_action_type_dynamic_ip_port
              nat_info
                  nat_ip 10.100.0.26
                  save
            save
        save
    save

    サービス エンジン グループ名が [DefaultGroup] に設定され、VRF グローバルに SE インターフェイスが存在するとします。

  2. NAT ポリシーを持つ [NetworkService] を作成します。

    configure networkservice nat-policy-default-group-global
          vrf_ref global
          se_group_ref Default-Group
          service_type routing_service
           routing_service
                enable_routing
                nat_policy_ref nat-policy-default-group-global
           save
    save
  3. 前述のように、Legacy HA で ServiceEngineGroup を構成し、フローティング インターフェイス IP アドレスを使用して EnableRouting を構成します。詳細については、「デフォルト ゲートウェイ(NSX Advanced Load Balancer SE での IP ルーティング)」を参照してください。

送信 NAT の使用事例

NAT フロー/統計情報の情報を取得するために使用できるデバッグ コマンドは次のとおりです。

[admin:localhost.localdomain]: > show serviceengine Active_Standby-se-xyjud nat
nat-flows             Show NAT flow information
natpolicystats        show NAT policy stats
natstat               Show NAT statistics
注:

統計情報は CLI を使用して入手できます。

一致の基準

次の一致の基準オプションがサポートされています。

  • 送信元 IP アドレスの一致

  • 送信元 IP アドレス範囲の一致

  • 送信元 IP アドレス グループの一致

  • 送信元 IP プレフィックスの一致

  • 送信元ポートの一致。ポート範囲はサポートされていません。

  • 宛先 IP アドレスの一致

  • 宛先 IP アドレス範囲の一致

  • 宛先 IP アドレス グループの一致

  • 宛先 IP プレフィックスの一致

  • 宛先ポートの一致

オプションごとに、[次と一致しない] オプションを使用できます。このオプションを使用すると、特定のパラメータを持つパケットをルールの一致から除外できます。

一致操作

  1. 2 つ以上の同じパラメータが一致基準として使用されている場合は、[OR] 演算子が一致に使用されます。

    例:

    match
     source_ip match_criteria is_in
     addrs 192.168.100.21
     ranges begin 192.168.100.2 end 192.168.100.10

    これは、送信元 IP アドレスが 192.168.100.21 の場合、または送信元 IP アドレスが 192.168.100.2 ~ 192.168.100.10 の範囲内にある場合に一致します。

  2. 一致基準で 2 つの異なるパラメータが使用されている場合は、[AND] 演算子が一致に使用されます。

    例:

    match
     source_ip match_criteria is_in
     addrs 192.168.100.21
     ranges begin 192.168.100.2 end 192.168.100.10
     destination_port match_criteria is_in
     ports 80

    これは、送信元 IP アドレスが 192.168.100.21 の場合、または送信元 IP アドレスが 192.168.100.2 ~ 192.168.100.10 の範囲内にあり、宛先ポートが 80 の場合に一致します。

  3. 複数のルールが構成されている場合、ルールは昇順でインデックス付けされて評価されます。評価は最初の一致で停止します。パケットがすでにルールに一致している場合、後続のルールはチェックされません。

アクション オプション

  • NAT IP には、NSX Advanced Load Balancer の VIP、フローティング インターフェイス IP、または SE インターフェイスのサブネット内の IP アドレスを指定できます。NAT IP を SE インターフェイス IP にすることはできません。

  • NAT IP 範囲。