このセクションでは、アクティブな FTP トラフィックをサーバ のプールにロード バランシングするように NSX Advanced Load Balancer を構成する手順について説明します。
NSX Advanced Load Balancer は、FTP ポートでリッスンするレイヤー 4 アプリケーション仮想サービスと preserve_client_ip オプションを使用して、アクティブ FTP のロード バランシングを実現します。
前提条件
アクティブ FTP とその構成に関する知識。
アクティブ FTP 仮想サービスには 2 つの機能が必要です。
クライアント IP の保持:展開要件と構成オプションについては、「クライアント IP の保持」を参照してください。
NAT ポリシー:展開要件と構成オプションについては、「NSX Advanced Load Balancer サービス エンジンでの NAT 構成」を参照してください。
NAT 機能には IP ルーティング機能が必要であるため、レガシー(アクティブ/スタンバイ)の SE HA モードの要件は必須です。
トポロジ
![](images/GUID-844467A4-48C1-49BB-BB27-BF064F10463C-high.png)
NSX Advanced Load Balancer は、ユーザーのネットワークと FTP サーバ ネットワークの間で論理的にインラインです。FTP サーバへのすべてのトラフィックと FTP サーバからユーザーへのリターン トラフィックは、NSX Advanced Load Balancer(サービス エンジン)に流れます。
アクティブ モード FTP では、クライアントはランダムなポート (N > 1023) から FTP サーバのコマンド ポート(ポート 21)に接続します。次に、クライアントはポート N+1 でリッスンを開始し、FTP コマンド ポート N+1 を FTP サーバに送信します。
その後、サーバはローカル データ ポート(ポート 20)からクライアントの指定されたデータ ポートに接続し直します。
アクティブ モード FTP をサポートするには、サーバ側のファイアウォールで次の通信チャネルを開く必要があります。
任意のポートから FTP サーバのポート 21 への通信チャネル(クライアントが接続を開始します)
FTP サーバのポート 21 からポート > 1023 への通信チャネル(サーバがクライアントの制御ポートに応答します)
FTP サーバのポート 20 からポート > 1023 への通信チャネル(サーバがクライアントのデータ ポートへのデータ接続を開始します)
ポート > 1023 から FTP サーバのポート 20 への通信チャネル(クライアントがサーバのデータ ポートに ACK を送信します)
FTP ロード バランシング ソリューション
アクティブな FTP サーバのロード バランシング ソリューションを構成する際に有効にする必要があるオプションは次のとおりです。
FTP ロード バランシングの場合、SE はクライアントとサーバの間に存在します。FTP 仮想サービス(ポート 21 でリッスン)は SE で構成され、FTP サーバはプール メンバーとして構成されています。また、仮想サービス アプリケーション プロファイルで [クライアント IP アドレスの保存] が有効になっています。
L4 アプリケーション プロファイルで Preserve Client IP オプションが有効になっています。
Floating Interface IP は、バックエンド サーバ ネットワークのデフォルト ゲートウェイとして機能できるように構成されています。
展開ネットワークにファイアウォールがある場合は、FTP 仮想サービスの IP アドレスを使用してサーバ接続用に NAT を構成します。
展開ネットワークにファイアウォールがない場合は、ランダムな NAT IP アドレス構成が必要ですが、アクティブ FTP は期待どおりに機能します。
構成
FTP ロード バランシング用に NSX Advanced Load Balancer を構成するには、次の手順を実行します。
FTP ポート (21) でシステム L4 アプリケーションをリスニング サービスとして使用して FTP 仮想サービスを作成します。
アプリケーション プロファイルで [クライアント IP アドレスの保存] を有効にします。
バックエンド サーバ ネットワークのデフォルト ゲートウェイとして機能するネットワーク サービスでフローティング インターフェイスの IP アドレスを構成します。
次のパラメータを使用して NAT プロファイルを作成します。
一致基準:サーバ サブネットを送信元 IP アドレスの一致に、送信元ポートを 20 に設定します(アクティブ FTP の場合)。
アクション:NAT IP は、手順 1 の仮想サービス IP アドレスと同じである必要があります(これは、フロントエンド展開でのファイアウォールの問題を防ぐためです)。
上記の NAT プロファイルをネットワーク サービスに添付して、サーバが発信する FTP 要求がネットワーク アドレスに適切に変換されていることを確認します。
ルールでは、サーバ ネットワークと送信元ポート 20 が一致に含まれています。送信元ポート ルールは、FTP トラフィックのみを一致させるために必要です。一致しない場合、クライアントからのサーバへの SSH 接続は失敗します。
サポート可能性
次のテクニカル サポート コマンドとパケット キャプチャを使用して、アクティブ FTP に関する問題をデバッグできます。
FTP VS:
FTP コマンド ポート 21 を使用した vNIC の show serviceengine <se> vshash # リスニング サービス。
NAT サポート コマンド:
show serviceengine <activeSE> natpolicystat
show serviceengine <activeSE> nat-flows
show serviceengine <activeSE> route-flows
パケット キャプチャ:
仮想サービスのパケット キャプチャ
NAT とルーティング パケットの NAT + ルーティング パケット キャプチャ
show networkservice <ns>
NAT パケット キャプチャの場合:
debug serviceengine <key> は debug_pcap_nat フラグを付けます