【クライアントVPN】ルート追加時に気をつけたいポイント
こんにちは!AWS事業本部コンサルティング部のたかくに(@takakuni_)です。
今回は、クライアントVPNの「ルート」設定時に気をつけたいポイントをシェアしていこうと思います。
最初に結論
- クライアントCIDRは、「VPCのローカルCIDR」、「追加するルートのCIDR」と重複できない
- VPCのローカルCIDRは、「クライアントCIDR」と重複できない
- 追加するルートのCIDRは、「クライアントCIDR」、「ターゲットサブネットのCIDR」と重複できない
CIDR重複について
以下、ドキュメントにもある通り、CIDR範囲の重複を避ける必要があります。
クライアント VPN の制限とルール
クライアント VPN には、次のルールと制限があります。
- クライアント CIDR 範囲は、関連付けられたサブネットが配置されている VPC のローカル CIDR、またはクライアント VPN エンドポイントのルートテーブルに手動で追加されたルートと重複することはできません。
クライアントCIDR範囲とVPCのCIDR範囲の重複時
例えば、以下の場合を想定します。
- クライアントCIDR範囲:10.10.0.0/16
- VPC CIDR範囲:10.10.0.0/16
- サブネット CIDR範囲:10.10.0.0/24
上記の場合で、クライアントVPNとサブネットの関連付けを行うと次のようなエラーが発生します。
Overlap detected between 10.10.0.0/24 and 10.10.0.0/16
原因
「クライアントCIDR範囲」と「サブネットが配置されている VPC のローカル CIDR」が重複しているためエラーが発生しています。
対策方法
どちらかのCIDR範囲を再検討する必要があります。
また、クライアントVPNエンドポイントの作成後にクライアントCIDR範囲は変更することはできないため注意が必要です。
クライアントCIDR範囲と追加するルートのCIDR範囲の重複時
例えば、以下の場合を想定します。(クライアントCIDR範囲と追加するルートのCIDR範囲が重複しています)
- クライアントCIDR範囲:10.8.0.0/16
- VPC CIDR範囲:10.10.0.0/16
- サブネット CIDR範囲:10.10.0.0/24
- 追加するルートのCIDR範囲:10.8.0.0/16
上記の場合で、ルートの追加を行うと次のようなエラーが発生します。
Client address pool for this endpoint overlaps with the destination cidr block
原因
「追加するルートのCIDR範囲」と「クライアントCIDR範囲」が重複しているためです。
対策
追加するルートのCIDR範囲とクライアントCIDR範囲の重複を排除する必要があります。
繰り返しになりますが、クライアントCIDRは、「VPCのローカルCIDR」、「追加するルートのCIDR」と重複できません。
つまり、クラスA,B,C単位でまとめてルーティングする場合は、重複していないか注意が必要です。
例:10.0.0.0/8を関連付けたサブネットへルーティングするルート
追加するルートのCIDR範囲とターゲットサブネットの範囲の重複時
例えば、以下の場合を想定します。(クライアントCIDR範囲と追加するルートのCIDR範囲が重複しています)
- クライアントCIDR範囲:10.8.0.0/16
- VPC CIDR範囲:10.10.0.0/16
- サブネット CIDR範囲:10.10.0.0/24
- 追加するルートのCIDR範囲:10.10.0.0/24
上記の場合、ルートの追加を行うと次のようなエラーが発生します。
The destination CIDR block cannot be a range that spans only within the target resource CIDR block
原因
「追加するルートのCIDR範囲」と「ターゲットサブネットのCIDR範囲」が重複しているためです。
対策
ロンゲストマッチを使用したルートの追加はできません。
デフォルトルートでVPC向けにルーティングは行われているので、追加しなくても通信は可能です。
終わりに
今回は、クライアントVPNでルートを追加する際に気をつけたいポイントをご紹介してみました。
もし、同じエラーに遭遇された方の助けになれば幸いです。
以上、AWS事業本部コンサルティング部のたかくに(@takakuni_)でした!