Citrix ADC

インバウンドネットワークアドレス変換

クライアントが受信ネットワークアドレス変換(INAT)用に構成されたCitrix ADCアプライアンスにパケットを送信すると、アプライアンスはパケットのパブリック宛先IPアドレスをプライベート宛先IPアドレスに変換し、そのアドレスのサーバーにパケットを転送します。

次の構成がサポートされています。

  • IPv4-IPv4マッピング:Citrix ADCアプライアンス上のパブリックIPv4アドレスは、プライベートIPv4サーバーの代わりに接続要求をリッスンします。Citrix ADCアプライアンスは、パケットのパブリック宛先IPアドレスをサーバーの宛先IPアドレスに変換します。次に、アプライアンスはパケットをそのアドレスのサーバーに転送します。
  • IPv4-IPv6マッピング:Citrix ADCアプライアンス上のパブリックIPv4アドレスは、プライベートIPv6サーバーの代わりに接続要求をリッスンします。Citrix ADCアプライアンスは、IPv6サーバーのIPアドレスを宛先IPアドレスとして持つIPv6要求パケットを作成します。
  • IPv6-IPv4マッピング:Citrix ADCアプライアンス上のパブリックIPv6アドレスは、プライベートIPv4サーバーの代わりに接続要求をリッスンします。Citrix ADCアプライアンスは、宛先IPアドレスとしてIPv4サーバーのIPアドレスを持つIPv4要求パケットを作成します。
  • IPv6-IPv6マッピング:Citrix ADCアプライアンス上のパブリックIPv6アドレスは、プライベートIPv6サーバーの代わりに接続要求をリッスンします。Citrix ADCアプライアンスは、パケットのパブリック宛先IPアドレスをサーバーの宛先IPアドレスに変換します。次に、アプライアンスはパケットをそのアドレスのサーバーに転送します。

アプライアンスがパケットをサーバに転送すると、パケットに割り当てられた送信元 IP アドレスは次のように決定されます。

  • サブネットIP(USNIP)の使用モードが有効で、送信元IP(USIP)の使用モードが無効になっている場合、アプライアンスは送信元IPアドレスとしてサブネットIPアドレス(SNIP)を使用します。
  • USIPモードが有効で、USNIPモードが無効になっている場合、アプライアンスはクライアントIP(CIP)アドレスを送信元IPアドレスとして使用します。
  • USIP モードと USNIP モードの両方が有効になっている場合は、USIP モードが優先されます。
  • また、proxyIPパラメータを設定することで、一意のIPアドレスが送信元IPアドレスとして使用されるようにCitrix ADCを構成することもできます。
  • 上記のモードのいずれも有効にならず、一意のIPアドレスが指定されていない場合、Citrix ADCはMIPを送信元IPアドレスとして使用しようとします。
  • USIP モードと USNIP モードの両方が有効で、一意の IP アドレスが指定されている場合、優先順位は USIP 一意の IP-USNIP-MIP エラーです。

Citrix ADCをDoS攻撃から保護するために、TCPプロキシを有効にすることができます。ただし、ネットワークで他の保護メカニズムが使用されている場合は、それらを無効にすることができます。

INATルールを構成する

INAT エントリを作成、変更、または削除できます。

CLI のプロシージャ

CLI を使用して INAT エントリを作成するには、次の手順を実行します。

コマンドプロンプトで、次のコマンドを入力して INAT エントリを作成し、その構成を確認します。

  • add inat <name> <publicIP> <privateIP> [-tcpproxy (ENABLED | DISABLED)] [-ftp (ENABLED | DISABLED)] [-usipON | オフ)] [-usnipON | オフ)] [-proxyIP <ip_addr > ipv6_addr>]
  • show inat [<name>]

例:

> add inat ip4-ip4 172.16.1.2 192.168.1.1 -proxyip 10.102.29.171
 Done

CLI を使用して INAT エントリを変更するには、次の手順を実行します。

INATエントリを変更するには、 set inat コマンド、エントリの名前、および変更するパラメータを新しい値とともに入力します。

CLI を使用して INAT 設定を削除するには、次の手順を実行します。

コマンドプロンプトで、次のように入力します。

  • rm inat <name>

例:

> rm inat ip4-ip4
 Done

GUIのプロシージャ

GUI を使用して INAT エントリを設定するには、次の手順を実行します。

システムに移動 > 通信網 > ルート > INAT、およびINATエントリを追加するか、既存のINATエントリを編集します。

GUI を使用して INAT 設定を削除するには、次の手順を実行します。

[システム] > [ネットワーク] > [ルート] > [INAT] に移動し、INAT 設定を削除します。

INATルールの接続フェイルオーバー

接続フェイルオーバーまたは接続ミラーリングにより、プライマリノードは接続と永続性の情報をセカンダリノードに高可用性で複製できます。接続ミラーリングが有効になっている場合、接続の状態情報は定期的にセカンダリノードと共有されます。

接続フェイルオーバーを有効にすると信頼性が向上しますが、状態情報の共有にシステム時間が消費されるという犠牲が伴います。接続データは、パケットまたはフロー状態が更新されるたびにスタンバイユニットに同期されます。したがって、接続レベルの信頼性が最も重要な場所でのみ使用する必要があります。

Citrix ADCアプライアンスの高可用性セットアップは、INAT接続の接続フェイルオーバーをサポートします。プライマリノードは、INATマッピングおよびその他のINAT関連の接続情報を定期的にセカンダリノードに送信します。セカンダリアプライアンスは、フェイルオーバーが発生した場合にのみマッピングおよび接続情報を使用します。

フェイルオーバーが発生すると、新しいプライマリノードには、フェイルオーバーの前に確立されたINAT接続に関する情報があります。したがって、フェイルオーバー後も引き続きこれらの接続を提供します。

クライアントの観点からは、フェイルオーバーは透過的です。移行期間中、クライアントとサーバーで短時間の中断と再送信が発生する可能性があります。接続フェイルオーバーは、INATルールに従って有効にできます。

INATルールで接続フェイルオーバーを有効にするには、CLIを使用してその特定のRNATルールの connFailover パラメーターを有効にします。

CLI手順

CLIを使用してINATルールの接続フェイルオーバーを有効にするには:

INATルールの追加中に接続フェイルオーバーを有効にするには、コマンドプロンプトで次のように入力します。

  • add inat <name> <publicIP> <privateIP> [-tcpproxy (ENABLED | DISABLED)] [-ftp ( ENABLED | DISABLED)] [-usipON | オフ)] [-usnipON | オフ)] [-proxyIP <ip_addr|ipv6_addr>] -connfailover (ENABLED | DISABLED)

  • show inat <name>

既存のINATルールの変更中に接続フェイルオーバーを有効にするには、コマンドプロンプトで次のように入力します。

  • set inat -connfailoverENABLED | 無効
  • show inat <name>
インバウンドネットワークアドレス変換