静的ルーティングに設定されたルートベースの VPN では、非対称ルーティングを避けたいです。
簡単な説明
AWS Site-to-Site VPN は、同じ宛先ネットワークに到達するための VPN 接続ごとに 2 つのエンドポイントを提供します。AWS は、アクティブなトンネルのいずれかを使用して、トラフィックを同じ宛先にルーティングします。
VPN トンネルは通常、「ステートフル」ファイアウォールでホストされます。ファイアウォールデバイスは、パケットが同じトンネルインターフェイスを使用してトラフィックを送受信することを想定しています。非対称ルーティングは、パケットが一方のトンネルを通って Amazon Virtual Private Cloud (Amazon VPC) に入り、同じサイト間 VPN の他のトンネルを通って出るときに発生します。パケットが別のトンネルインターフェイスを経由して戻ると、そのパケットは「ステートフル」セッションと一致しないため、ドロップされます。
解決方法
非対称ルーティングの問題に対処するために、動的ルーティングを備えた新しいVPN を作成する必要はありません。代わりに、次に示すように、動的ルーティングロジックを反映するように変更を加えた後も、引き続き静的ルーティングを使用してください。
前提条件
Amazon CloudWatch のメトリクスを確認して、ルーティングが非対称であることを確認します。
各トンネルのメトリックを表示
アクティブ/アクティブ構成の VPN 接続が 1 つしかない場合:
- CloudWatch コンソールを開きます。
- ナビゲーションペインで [メトリクス] を選択します。
- [すべてのメトリクス] で、VPN メトリックネームスペースを選択します。
- [VPN トンネルメトリクス] を選択します。
- CloudWatch メトリクスの [TunnelDataIn] と [TunnelDataOut] を選択します。ルーティングが非対称の場合、1 つのトンネルにメトリック TunnelDataIn のデータポイントがあります。2 つ目のトンネルには、TunnelDataOutというメトリックのデータポイントがあります。
VPN 接続全体のメトリクスを表示する (集計メトリック)
複数の VPN 接続がある場合:
- CloudWatch コンソールを開きます。
- ナビゲーションペインで [メトリクス] を選択します。
- [すべてのメトリクス] で、VPN メトリックネームスペースを選択します。
- [VPN 接続メトリクス] を選択します。
- CloudWatch メトリクスの [TunnelDataIn] と [TunnelDataOut] を選択します。ルーティングが非対称の場合、一方の接続にはメトリック TunnelDataIn のデータポイントがあります。もう一方の接続には、TunnelDataOutというメトリックのデータポイントがあります。
トンネルメトリクスの詳細については、CloudWatch を使用した VPNトンネルのモニタリングを参照してください。
非対称ルーティングシナリオ
これらのシナリオで非対称ルーティングを避けるには、以下のオプションを確認してください。
Active/Active として設定された単一の VPN 接続
非対称ルーティングを避けるには:
- カスタマーゲートウェイが IPsec アグリゲート機能をサポートしている場合は、その機能を使用してください。詳細については、フォーティネットのウェブサイトの冗長性とトンネル負荷分散のためのIPSecアグリゲートを参照してください。
- カスタマーゲートウェイが非対称ルーティングをサポートしている場合は、仮想トンネルインターフェイスで非対称ルーティングが有効になっていることを確認します。
- カスタマーゲートウェイが非対称ルーティングをサポートしていない場合は、VPN 設定が Active/Passive になっていることを確認してください。この設定では、1 つのトンネルが UP、2 番目のトンネルが DOWN と識別されます。この設定では、AWS からオンプレミスネットワークへのトラフィックは UP 状態のトンネルを通過するだけです。詳細については、トンネル B よりもトンネル A を優先するようにサイト間 VPNを設定する方法を参照してください。
2 つの VPN 接続 (VPN-Pry と VPN-Sec) が同じ VPC に接続されます
このシナリオでは、VPN 接続は同じ仮想プライベートゲートウェイを使用して同じ Amazon VPC に接続します。
**注記:**このシナリオは、仮想プライベートゲートウェイとの VPN 接続にのみ適用されます。
両方の接続:
- 静的ルーティングを使う
- 同じオンプレミスプレフィックスをアドバタイズします。たとえば、10.170.0.0/20 と 10.167.0.0/20
- 仮想プライベートゲートウェイを介して同じ VPC に接続する
- カスタマーゲートウェイのパブリック IP が異なる
非対称ルーティングを避けるには、以下を実装してください。
VPN-Pry の静的ルート (プライマリ接続):
10.170.0.0/21
10.170.8.0/21
10.167.0.0/21
10.167.8.0/21
VPN-Sec の静的ルート (セカンダリ接続):
10.170.0.0/20
10.167.0.0/20
これらの設定では、AWS は VPN-Sec よりも VPN-Pry を優先接続として選択します。AWS は、トラフィックと一致するルートテーブル内の最も長いプレフィックスを使用して、トラフィックのルーティング方法を決定します。
**注記:**このシナリオでカスタマーゲートウェイに非対称ルーティングがない場合は、各 VPN 設定を Active/Passive に設定します。これにより、VPN 接続ごとに 1 つのトンネルがアクティブと識別されます。アクティブな接続の両方のトンネルがダウンすると、トラフィックはセカンダリ接続のアクティブなトンネルにフェールオーバーします。
VPN ルートの優先順位の詳細については、ルートテーブルと VPN ルートの優先度を参照してください。