制限されたポートまたは接続コリジョンのリスナーポートを上書きする
デフォルトでは、アクセラレーターは、リスナーの作成時に指定したプロトコルとポート範囲を使用して、AWS リージョン内のエンドポイントにユーザートラフィックをルーティングします。例えば、ポート 80 と 443 で TCP トラフィックを受け入れるリスナーを定義すると、アクセラレーターはエンドポイント上のそれらのポートにトラフィックをルーティングします。
ただし、エンドポイントグループを追加または更新するときに、エンドポイントへのトラフィックのルーティングに使用されるリスナーポートを上書きできます。例えば、リスナーがポート 80 と 443 でユーザトラフィックを受信し、アクセラレーターがそのトラフィックをエンドポイント上のポート 1080 と 1443 にそれぞれルーティングする、ポートオーバーライドを作成できます。
ポートの上書きを使用する利点の 1 つは、Global Accelerator で断続的な接続問題を引き起こし、特定のシナリオで TCP 接続時間の遅延が発生する可能性がある接続の衝突を回避できることです。これらの衝突は、ユーザーが (同じソース IP とソースポートを使用して) Global Accelerator のリソースにアクセスするときに発生する可能性があります。アクセラレーターでポート上書きを設定することで、衝突を防ぎ、遅延を回避できます。詳細については、「 TCP 接続時間の遅延につながる接続の衝突を回避する方法」を参照してください。
ポートを上書きすると、制限されたポートでリッスンする際の問題を回避することもできます。エンドポイントでスーパーユーザー (ルート) 権限を必要としないアプリケーションを実行する方が安全です。ただし、Linux やその他の UNIX 系システムでは、制限されたポート (1024 未満の TCP または UDP ポート)でリッスンするには、スーパーユーザ権限が必要です。リスナーの制限付きのポートをエンドポイントの制限のないポートにマッピングすることで、この問題を回避できます。Global Accelerator の後ろにあるエンドポイントでルートアクセスなしでアプリケーションを実行している間、制限されたポートでトラフィックを受け入れることができます。例えば、リスナーポート 443 をエンドポイントポート 8443 に上書きすることができます。
ポートオーバーライドごとに、ユーザーからのトラフィックを受け入れるリスナーポートと、Global Accelerator がそのトラフィックをルーティングするエンドポイントポートを指定します。詳細については、「 標準エンドポイントグループを追加する」を参照してください。
ポートの上書きを作成する際は、次の点に注意してください:
エンドポイントポートはリスナーポートの範囲と重複することはできません。ポート上書きで指定したエンドポイントポートは、アクセラレーター用に設定したリスナーポートの範囲に含めることはできません。例えば、アクセラレーターのリスナーが 2 人いて、それらのリスナーのポート範囲をそれぞれ 100~199 と 200~299 と定義したと仮定します。ポート上書きを作成する場合、例えば、エンドポイントポート (210) が定義したリスナーポート範囲 (200~299) に含まれているため、リスナーポート 100 からエンドポイントポート 210 まで定義することはできません。
エンドポイントポートが重複していません。アクセラレーターの 1 つのポート上書きでエンドポイントポートを指定している場合、別のリスナーポートからのポート上書きで同じエンドポイントポートを指定することはできません。例えば、リスナーポート 80 からエンドポイントポート 90 へのポート上書きと、リスナーポート 81 からエンドポイントポート 90 への上書きを指定することはできません。
ヘルスチェックは引き続き元のポートを使用します。ヘルスチェックポートとして設定されたポートにポート上書きを指定しても、ヘルスチェックは上書きポートではなく元のポートを使用します。例えば、リスナーポート 80 でヘルスチェックを指定し、リスナーポート 80 からエンドポイントポート 480 へのポート上書きも指定すると仮定します。ヘルスチェックは、エンドポイントポート 80 が引き続き使用します。ただし、ポート 80 経由で着信するユーザートラフィックは、エンドポイントのポート 480 に送信されます。
この動作は、Network Load Balancer、Application Load Balancer、EC2 インスタンス、および Elastic IP アドレスエンドポイント間の整合性を維持します。Network Load Balancer と Application Load Balancer は、Global Accelerator でポート上書きを指定したときにヘルスチェックポートを別のエンドポイントポートにマッピングしないため、Global Accelerator が EC2 インスタンスと Elastic IP アドレスエンドポイントの異なるエンドポイントポートにヘルスチェックポートをマッピングすることは一貫性がありません。
セキュリティグループ設定では、ポートアクセスを許可する必要があります。セキュリティグループが、ポート上書きで指定したエンドポイントポートへのトラフィックの着信を許可していることを確認します。例えば、リスナーポート 443 をエンドポイントポート 1433 に上書きする場合は、その Application Load Balancer または Amazon EC2 エンドポイントのセキュリティグループに設定されているポート制限で、ポート 1433 のインバウンドトラフィックが許可されていることを確認してください。