このセクションでは、True Client IP とその構成を使用するメリットについて説明します。

プロキシは、受信接続のレイヤー 3 ヘッダーからクライアントの IP アドレスを識別します。ただし、それは必ずしも実際のクライアントの IP アドレスであるとは限りません。実際のクライアントと NSX Advanced Load Balancer の間にプロキシがある場合、中間プロキシは常に受信接続の送信元の IP アドレスを X-Forwarded-For ヘッダーに追加します。実際の宛先に要求を転送するときに、送信元の IP アドレスをレイヤー 3 ヘッダーの送信元 IP アドレスとして IP アドレスに置き換えます。



True Client IP 機能を使用すると、「X-Forwarded-For」またはユーザー定義のヘッダーから実際のクライアントの IP アドレスを取得し、実際のクライアントの IP アドレスをログに追跡したり、True Client IP アドレスに基づいて HTTP セキュリティ、HTTP 要求などのポリシーを構成したりできます。

True Client IP を使用するメリット

  • 実際のクライアントの IP アドレスは、NSX Advanced Load Balancer のアプリケーション ログに記録できます。

  • 実際のクライアントの IP アドレスは、実際のサーバと共有できます(NSX Advanced Load Balancer は、識別された実際のクライアントの IP アドレスを X-Forwarded-For として追加でき、それを解析するようにサーバを構成できます)。

  • 実際のクライアントの IP アドレスに基づいて、HTTP ポリシー、SSO ポリシーなどを構成できます。

NSX Advanced Load Balancer の True Client IP

True Client IP の実装では、以下がサポートされます。

  • 送信元 IP アドレスは、常にダウンストリーム接続の IP ヘッダーからの IP アドレスです(受信)。

  • クライアントの IP アドレスは、ユーザー構成に基づいて生成されます。X-Forwarded-For またはユーザー指定のヘッダーから生成することも、送信元の IP アドレスと同じにすることもできます。

True Client IP の場合、動作は次のようになります。

True クライアントの IP アドレス構成

ヘッダー パラメータ

方向パラメータ

インデックス数パラメータ

動作

無効(デフォルト)

X-Forwarded-For(デフォルト)

左(デフォルト)

1(デフォルト)

クライアントの IP アドレス = 送信元の IP アドレス

有効

True-User-IP(ユーザー定義)

左(デフォルト)

1(デフォルト)

クライアントの IP アドレスは、要求またはフォーマット エラーでユーザー定義のヘッダーが見つからない場合に、ユーザー定義のヘッダー「True-User-IP」またはレイヤー 3 ヘッダーから取得された IP アドレスです。IP アドレスは常にレイヤー 3 ヘッダーから取得されます

L4 アプリケーションの場合、Source-IP と Client-IP は常に同じになります。HTTP アプリケーションの場合は異なることがあります。デフォルトでは、機能は非アクティブになっています。True Client IP を有効にした後、クライアントの IP アドレスを取得する必要があるヘッダーを指定します。

ユーザーがヘッダーを定義していない場合は、X-Forwarded-For ヘッダーから取得されます。指定したヘッダーには、ヘッダー値として IP アドレスのカンマ区切りリストの形式が必要です。この形式でない場合は無視されます。

たとえば、フォーマット(ヘッダー値の形式)は X-Forwarded-For: 1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4 です

現時点では、クライアントの IP アドレスを取得するには 1 つのヘッダーのみを構成できます。