3.5. FTP の設定
ファイル転送プロトコル (FTP) は旧式で複雑なマルチポートプロトコルで、Load Balancer Add-On 環境では明らかな課題をもたらします。これら課題の性質を理解するには、まず FTP の動作について基本事項を理解する必要があります。
3.5.1. FTP の動作
ほとんどのサーバー/クライアント関係では、クライアントマシンが特定のポート上でサーバーへ接続を開いて、サーバーがそのポートのクライアントに応答します。FTP クライアントが FTP サーバーに接続する場合、FTP 制御ポート 21 への接続を開きます。そして、その クライアントが FTP サーバーに アクティブ か パッシブ のどちらの接続を開くかを指示します。クライアントが選択した接続タイプにより、サーバーの対応方法とトランザクションが発生するポートを決定します。
データ接続は以下の 2 種類です。
- アクティブ接続
- アクティブ接続が確立されると、サーバーはポート 20 からクライアントマシン上の高い範囲のポートにクライアントへデータ接続を開きます。サーバーからのすべてのデータは、この接続を通じて送信されます。
- パッシブ接続
- パッシブ接続が確立されると、クライアントは FTP サーバーに対してパッシブ接続ポートを確立するように依頼します。これは 10,000 より高いポートになります。するとサーバーは、この特定のセッション用に高い数値のポートをバインドして、このポート番号をクライアントに中継します。クライアントは、データ接続のために新規にバインドされたポートを開きます。クライアントが作成するデータ要求それぞれ、別個のデータ接続となります。最近の FTP クライアントのほとんどは、 サーバーからデータを要求する場合、パッシブ接続を試みます。
注記
接続タイプを決定するのは、サーバーではなく クライアント です。つまり、効果的に FTP をクラスタ化するには、アクティブ接続とパッシブ接続の両方を処理するように LVS ルーターを設定する必要があることになります。
FTP のクライアント/サーバーの組み合わせは、Piranha Configuration Tool と IPVS が認識していない多くのポートを開く可能性があります。