PROXY プロトコルを使用すると、正確なトラフィック管理、セキュリティの強化、規制要件へのコンプライアンスの確保が可能になります。
オリジンサーバーは PROXY プロトコル v1/v2 機能をサポートしている必要があります。そうでない場合、Edge Security Acceleration (ESA) のオリジン接続は失敗します。
PROXY プロトコルの仕組み
プロキシを使用すると、プロキシは受信リクエストを再カプセル化し、サーバーに転送します。この場合、サーバーはクライアントの IP アドレスやポートなどの元の接続情報を取得できません。
PROXY プロトコルを有効にすると、アクセラレーションサーバーとオリジンサーバーが TCP 接続を確立します。PROXY プロトコルヘッダーは実際のリクエストデータの前に送信され、クライアント情報が正確に保持されることを保証します。
PROXY プロトコル v1 と v2 の違い
PROXY プロトコルの 2 つのバージョンは、主にフォーマット、セキュリティ、柔軟性、および適切なユースケースにおいて異なります。
PROXY プロトコル v1
ASCII テキストフォーマット。
固定フォーマットで、拡張性と柔軟性に制限があります。
TCP をサポートします。
暗号化や認証機能がなく、データが改ざんされやすいため、セキュリティが最優先事項ではない環境に適しています。
PROXY プロトコル v2
バイナリフォーマット。
可変長とさまざまな拡張をサポートし、高い柔軟性を提供します。
TCP と UDP をサポートします。
セキュリティを強化するための TLS ハンドシェイクが含まれており、セキュリティが優先される環境に適しています。
TCP での PROXY プロトコル v1 の有効化
PROXY プロトコル v1 を使用する TCP アプリケーションの場合、ESA は各受信 TCP 接続に PROXY プロトコル v1 ヘッダーを追加します。
ESA コンソールで、サイト管理 を選択します。サイト 列で、対象のウェブサイトをクリックします。
左側のナビゲーションウィンドウで、 を選択します。
[Create Application] をクリックし、アプリケーションパラメーターを設定します。 [Proxy Rules] エリアで [Protocol] を TCP に設定し、[Pass Client IP] を [PROXY Protocol v1] に設定します。

[OK] をクリックします。
PROXY プロトコル v1 ヘッダーのフォーマット
PROXY プロトコルは、各接続にプレーンテキストヘッダーを追加し、次のフォーマットでクライアントの IP アドレスとポートを提供します:
PROXY_STRING + single space + INET_PROTOCOL + single space + CLIENT_IP + single space + PROXY_IP + single space + CLIENT_PORT + single space + PROXY_PORT + "\r\n"IPv4 アドレス用の PROXY プロトコル v1 ヘッダーの例:
PROXY TCP4 10.10.10.10 192.168.0.1 12345 80\r\nIPv6 アドレス用の PROXY プロトコル v1 ヘッダーの例:
PROXY TCP6 2001:db8:: 2001:db8:ffff:ffff:ffff:ffff:ffff:ffff 12345 443\r\n次の表は、ヘッダー内の値の例を説明しています:
ヘッダー値の例 | 説明 |
PROXY | プロトコルヘッダー。 |
TCP4 | 伝送プロトコル。 |
TCP6 | |
10.10.10.10 | クライアントの送信元 IP アドレス。 |
2001:db8:: | |
192.XXX.0.1 | 宛先サーバーの IP アドレス。 |
2001:db8:ffff:ffff:ffff:ffff:ffff:ffff | |
12345 | クライアントの送信元ポート番号。 |
80 | 宛先サーバーのポート番号。 |
443 | |
\r\n | ヘッダーの終わり。 |
TCP での PROXY プロトコル v2 の有効化
PROXY プロトコル v2 を使用する TCP アプリケーションの場合、ESA は各受信 TCP 接続に PROXY プロトコル v2 ヘッダーを追加します。
ESA コンソールで、サイト管理 を選択します。サイト 列で、対象のウェブサイトをクリックします。
左側のナビゲーションウィンドウで、 を選択します。
[Create Application] をクリックし、アプリケーションパラメーターを設定します。 [Proxy Rules] エリアで [Protocol] を TCP に設定し、[Pass Client IP] を [PROXY Protocol v2] に設定します。

[OK] をクリックします。
PROXY プロトコル v2 ヘッダーのフォーマット
PROXY プロトコルは、各接続にヘッダーを追加して、クライアントの IP アドレスとポートをレポートします。
IPv4 アドレス用の PROXY プロトコルバイナリヘッダーフォーマット:

IPv6 アドレス用の PROXY プロトコルバイナリヘッダーフォーマット:
