Virtual Private Cloud (VPC) のルートテーブルは、インスタンスから宛先へのネットワークトラフィックが通るパスを決定します。ルートを設定することで、指定したパスに沿ってネットワークトラフィックを誘導できます。
機能
ルートテーブル
VPC を作成すると、システムは自動的にシステムルートテーブルを作成します。このルートテーブルは、デフォルトで VPC 内のすべての vSwitch にアタッチされ、VPC 内のトラフィックを制御します。
VPC 内の Elastic Compute Service (ECS) インスタンスが、同じ宛先 CIDR ブロックにアクセスするために異なるパスを使用する必要がある場合、カスタムルートテーブルを作成し、ECS インスタンスを複数の vSwitch にまたがってデプロイし、各 vSwitch にカスタムルートテーブルをアタッチすることができます。これにより、詳細なトラフィック制御が可能になります。
セルフマネージドファイアウォールで VPC へのインバウンドインターネットトラフィックを保護するには、ボーダーゲートウェイにアタッチされたカスタムルートテーブルであるゲートウェイルートテーブルを使用できます。ゲートウェイルートテーブルを IPv4 または IPv6 ゲートウェイにアタッチして、インバウンドインターネットトラフィックをセルフマネージドファイアウォールに誘導します。これにより、トラフィックのフィルタリング、監査、セキュリティポリシー管理を一元化できます。
次の表は、異なるタイプのルートテーブルを比較したものです。
ディメンション | システム | カスタム | |
関連付け先 | vSwitch | vSwitch | IPv4 または IPv6 ゲートウェイ |
図 | |||
利用シーン | デフォルトで全ての新しい vSwitch にアタッチされ、vSwitch トラフィックを一元管理 | 特定の vSwitch にアタッチされ、そのトラフィックパスを制御 | IPv4 または IPv6 ゲートウェイにアタッチされ、インバウンドインターネットトラフィックを安全にリダイレクト |
作成 | VPC 作成時に自動作成 | 手動作成。ルートテーブル作成時に vSwitch タイプを選択します。 | 手動作成。ルートテーブル作成時にボーダーゲートウェイタイプを選択します。 |
削除 | 削除できません。 | 削除できます。先に vSwitch からデタッチする必要があります。 | 削除できます。先に IPv4 または IPv6 ゲートウェイからデタッチする必要があります。 |
クォータ | VPC ごとに 1 つのシステムルートテーブル。 | デフォルトでは、VPC 内の vSwitch ごとに 9 つのカスタムルートテーブル。クォータは調整可能。 | VPC 内の IPv4 または IPv6 ゲートウェイにアタッチできるルートテーブルは 1 つのみ。 |
各 vSwitch は必ず 1 つのルートテーブルにアタッチする必要があり、1 つのルートテーブルは複数の vSwitch にアタッチできます。
ルート
ルートテーブルの各エントリがルートです。各ルートエントリには以下が含まれます:
宛先 CIDR ブロック:ネットワークトラフィックがルーティングされる IP アドレスの範囲。
ネクストホップ:Elastic Network Interface (ENI) や VPC ピアリング接続など、ネットワークトラフィックの宛先。
ルートは 2 種類に分類されます:
静的ルート
システムによって自動的に追加されるか、ユーザーが手動で追加します。これには 2 種類あります:
システム: ネクストホップが
Localに設定されているルートです。 VPC と vSwitch を作成すると、システムによって自動的に追加されます。 VPC 内のインスタンス間の通信、または Alibaba Cloud サービスへのアクセスに使用されます。カスタム:トラフィックパスをカスタマイズするために手動で追加するルート。
次の図に示すように、2 つの VPC は VPC ピアリング接続を介して接続されています。VPC1 のシステムルートテーブルには、次の静的ルートが含まれています。
ネクストホップが
Localに設定されているシステムルートは、自動的に追加されます:クラウドサービスルート:宛先 CIDR ブロックは
100.64.0.0/10です。このルートにより、VPC1 内のインスタンスは Alibaba Cloud サービスにアクセスできます。vSwitch CIDR ブロックのルート:宛先 CIDR ブロックは
10.0.0.0/24です。このルートにより、VPC1 内の vSwitch 間のプライベート通信が可能になります。
VPC ピアリング接続を作成した後、次のカスタムルートを手動で追加する必要があります:
宛先 CIDR ブロックは
172.16.0.0/16、ネクストホップはピアリング接続で、VPC2宛のトラフィックをピアリング接続に転送します。
VPC2 のシステムルートテーブルのルートは、VPC1 と同じ原理で動作するため、ここでは説明を省略します。
システムルートとカスタムルートの比較
項目 | システムルート | カスタムルート |
定義 | ネクストホップが | 手動で追加するルート。 |
IPv4 ルート | システムは VPC 内のすべてのルートテーブルに次のルートを自動的に追加します:
| 次のパラメーターを持つルートを手動で追加できます:
|
IPv6 ルート | VPC で IPv6 が有効になっている場合、システムは VPC 内の vSwitch に関連付けられたすべてのルートテーブルに次のルートを自動的に追加します:
| VPC で IPv6 が有効になっている場合、次のパラメーターを持つルートを追加できます:
|
ネクストホップの変更 |
| システムルートのネクストホップを変更して作成されたカスタムルートの場合、このカスタムルートのネクストホップは Local、ECS インスタンス、ENI、または Gateway Load Balancer エンドポイントにのみ変更できます。 |
手動作成 | システムルートは手動で作成または削除できません。 | 手動で作成および削除できます。 |
2. 動的ルート
動的ルートは、他のネットワークインスタンスから VPC に伝播されるルートです。静的ルートとは異なり、VPC ルートテーブルで動的ルートを手動で設定する必要はありません。これらは動的ルートソースから自動的に受信および更新されます。
2.1 動的ルートソース
VPC にルートを自動的に伝播するネットワークインスタンスには、Enterprise Edition のトランジットルーター (TR)、Basic Edition の TR、VPN Gateway、および Express Connect Router (ECR) が含まれます。コンソールのルートテーブル詳細ページの タブで、動的ルートのソースと詳細を表示できます。
Enterprise Edition の TR から受信したルートの詳細は、 タブに表示されます。
2.2 動的ルート受信の有効化/無効化
デフォルトでは、すべてのルートテーブルで動的ルートの受信が有効になっています。純粋な静的ルーティング設定が必要な場合は、各ルートテーブルで 動的ルートの受信を無効にすることができます。これにより、ビジネスルートテーブルを必要に応じて計画し、ルート設定を簡単に管理できます。
2.3 動的ルートの制限
VPC ルートテーブルは、一度に 1 つの動的ルートソースからのみ動的ルートを受信できます。
たとえば、VPC が ECR に関連付けられた後、VPC を Enterprise Edition の TR に接続すると、TR で VPC の ルート同期を有効にしようとしても失敗します。VPN Gateway を作成し、BGP ルートの自動伝播を有効にすると、VPN Gateway が学習した BGP ルートは自動的に VPC のシステムルートテーブルに伝播されます。この場合、VPC を ECR に関連付けることはできません。
受信した動的ルートがルートテーブル内の既存のルートと重複する場合、「ルートの優先度」を参照して、どのルートが有効になるかを判断してください。
vSwitch にアタッチされたルートテーブルのみが動的ルートを受信できます。ゲートウェイルートテーブルは動的ルートをサポートしていません。
ルートの優先度
VPC ルートテーブル内のルートは、次のルールに基づいて優先順位が付けられます:
宛先 CIDR ブロックが重複するルートが存在する場合:
IPv4 と IPv6 のトラフィックルーティングは互いに独立しています。システムは最長プレフィックス一致ルールを使用して、宛先 IP アドレスに一致する最も具体的なルートを選択します。これにより、トラフィック転送のネクストホップが決定されます。
最長プレフィックス一致:ルートテーブル内の複数のルートの宛先 CIDR ブロックが宛先 IP アドレスをカバーできる場合、最も長いサブネットマスクを持つルートがトラフィック転送パスを決定するために選択されます。
新しいルートの宛先 CIDR ブロックが既存のルートの宛先 CIDR ブロックと重複する場合:
操作
既存のシステムルート
既存のカスタムルート
既存の動的ルート
vSwitch の作成
vSwitch の CIDR ブロックは、既存のシステムルートと重複できません。
vSwitch の CIDR ブロックは、次の条件を満たすことはできません:
既存のカスタムルートの宛先 CIDR ブロックと同一である。
既存のカスタムルートの宛先 CIDR ブロックを含む。
vSwitch の CIDR ブロックには次の制限が適用されます:
既存の動的ルートの宛先 CIDR ブロックと同じである。
既存の動的ルートの宛先 CIDR ブロックを含む。
カスタムルートの追加
新しいカスタムルートの宛先 CIDR ブロックは、次の条件を満たしてはなりません:
既存のシステムルートの CIDR ブロックと同じである。
既存のシステムルートよりも具体的である。
新しいカスタムルートの宛先 CIDR ブロックは、既存のカスタムルートの宛先 CIDR ブロックと同じにすることはできません。
[ネクストホップタイプ] が [ルーターインターフェイス (VBR へ)] の場合、アクティブ/スタンバイまたは等コストマルチパス (ECMP) ルートを設定できます。詳細については、「ルーターインターフェイスへのルート」をご参照ください。
カスタムルートを追加する際、その宛先 CIDR ブロックは既存の動的ルートの宛先 CIDR ブロックと同じにすることはできません。
新しいカスタムルートのネクストホップが VPN Gateway またはルーターインターフェイスであり、同じ宛先 CIDR ブロックを持つ CEN からの既存の動的ルートがある場合、動的ルートは撤回され、カスタムルートが有効になります。
動的ルートの受信
動的ルートが受信された場合:
既存のシステムルートと同じ宛先 CIDR ブロックを持つことはできません。
既存のシステムルートよりも具体的な場合、動的ルートは伝播されません。
ECR から動的ルートを受信する場合:同じ宛先 CIDR ブロックを持つカスタムルートが存在する場合、カスタムルートが優先されます。
動的ルートは VPC ルートテーブルに表示されますが、カスタムルートが削除されるまで有効になりません。
VPN Gateway、Enterprise Edition TR、または Basic Edition TR から動的ルートを受信する場合:同じ宛先 CIDR ブロックを持つカスタムルートが存在する場合、カスタムルートが優先されます。
この場合、動的ルートは VPC ルートテーブルに伝播されません。カスタムルートが削除された後にのみ伝播され、有効になります。
サポートされていません。現在の VPC ルートテーブルには 1 つのルート伝播ソースしかありません。
たとえば、VPC システムルートテーブルには次のルートが含まれています:
宛先 CIDR | ネクストホップタイプ | ネクストホップ | ルートタイプ |
| - | - | システム |
| ECS インスタンス |
| カスタム |
| ECS インスタンス |
| カスタム |
トラフィックの宛先 IP アドレスが異なると、トラフィックは異なるルートに従って転送されます。
宛先 IP | ルートのマッチング |
|
|
| 宛先 IP アドレスは |
|
|
ルートテーブルの管理
VPC を作成すると、システムは自動的にシステムルートテーブルを作成し、デフォルトですべての vSwitch にアタッチして、すべての vSwitch のトラフィックを一元的に制御します。
VPC 内の特定の vSwitch のトラフィックを個別に制御するには、まず vSwitch タイプのカスタムルートテーブルを作成し、それをターゲットの vSwitch にアタッチする必要があります。
インターネットから VPC へのトラフィックを制御するには、ボーダーゲートウェイタイプのカスタムルートテーブルを作成し、それを IPv4 または IPv6 ゲートウェイにアタッチする必要があります。
ルートテーブルの作成と削除
カスタムルートテーブルをターゲットの vSwitch または IPv4/IPv6 ゲートウェイにアタッチする前に、まずカスタムルートテーブルを作成する必要があります。
コンソール
ルートテーブルの作成
VPC コンソールの [ルートテーブル] ページに移動し、作成 をクリックします。
ターゲットの [VPC] を選択し、[名前] を入力し、アタッチするオブジェクトタイプを選択します:
[vSwitch]:このルートテーブルを vSwitch にアタッチすると、特定の vSwitch のトラフィックパスを制御できます。
[ボーダーゲートウェイ]:このルートテーブルを IPv4 または IPv6 ゲートウェイにアタッチすると、インターネットから VPC へのトラフィックパスを制御できます。
カスタムルートテーブルを作成すると、システムは自動的に次のシステムルートを追加します:
vSwitch CIDR ブロックルート:宛先 CIDR ブロックが、ルートテーブルが属する VPC 内の任意の vSwitch の CIDR ブロックであるルート。このルートは、vSwitch 内のインスタンス間の通信に使用されます。
クラウドサービスルート: 宛先 CIDR ブロックが
100.64.0.0/10であるルートです。このルートは、VPC 内のインスタンスが Alibaba Cloud サービスにアクセスするために使用されます。
ルートテーブルの削除
ターゲットのルートテーブルの [操作] 列またはその詳細ページで、[削除] をクリックします。ルートテーブルを削除する前に、それが デタッチされており、すべてのカスタムルートが削除されていることを確認してください。
カスタムルートテーブルのみ削除できます。システムルートテーブルは削除できません。
API
CreateRouteTable 操作を呼び出してルートテーブルを作成します。
DeleteRouteTable 操作を呼び出してカスタムルートテーブルを削除します。
Terraform
リソース:alicloud_route_table
variable "name" {
default = "terraform-example"
}
resource "alicloud_vpc" "defaultVpc" {
vpc_name = var.name
}
resource "alicloud_route_table" "default" {
description = "test-description"
vpc_id = alicloud_vpc.defaultVpc.id
route_table_name = var.name
associate_type = "VSwitch"
}ルートテーブルのアタッチとデタッチ
新しく作成されたカスタムルートテーブルは、デフォルトではどのリソースにもアタッチされていません。ルートテーブルを有効にするには、vSwitch または IPv4/IPv6 ゲートウェイにアタッチする必要があります。
コンソール
ルートテーブルのアタッチ
VPC コンソールの [ルートテーブル] ページに移動します。ターゲットのルートテーブルの [リソースの関連付け] 列で、[関連付け] をクリックします:
ルートテーブルを [vSwitch] にアタッチする場合:[vSwitch の関連付け] をクリックします。表示されるダイアログボックスで、ターゲットの [vSwitch] を選択します。
vSwitch がカスタムルートテーブルにアタッチされると、システムルートテーブルから自動的にデタッチされます。
ルートテーブルを [ボーダーゲートウェイ] にアタッチする場合:[ボーダーゲートウェイの関連付け] をクリックします。表示されるダイアログボックスで、ターゲットの [IPv4 ゲートウェイ] または [IPv6 ゲートウェイ] を選択します。
ボーダーゲートウェイにアタッチされたルートテーブルの使用方法に関するチュートリアルについては、「ゲートウェイルートテーブルを使用して VPC へのトラフィックを制御する」をご参照ください。
ルートテーブルのデタッチ
ターゲットのルートテーブルの詳細ページに移動します:
ルートテーブルが [vSwitch] にアタッチされている場合:[関連付けられた vSwitch] タブで、デタッチする vSwitch を選択し、[関連付けの解除] をクリックします。デタッチ後、vSwitch はシステムルートテーブルに再アタッチされます。
ルートテーブルが [ボーダーゲートウェイ] にアタッチされている場合: タブで、ターゲットの IPv4 または IPv6 ゲートウェイの [操作] 列にある [関連付けの解除] をクリックします。
ルートテーブルをデタッチする前に、ルート変更によるビジネスへの影響を十分に評価し、サービスの中断を避けてください。
API
AssociateRouteTable 操作を呼び出して、ルートテーブルを vSwitch にアタッチします。
AssociateRouteTableWithGateway 操作を呼び出して、ルートテーブルを IPv4 または IPv6 ゲートウェイにアタッチします。
ルートテーブルをデタッチする前に、ルート変更によるビジネスへの影響を十分に評価し、サービスの中断を避けてください。
UnassociateRouteTable 操作を呼び出して、ルートテーブルを vSwitch からデタッチします。
DissociateRouteTableFromGateway 操作を呼び出して、ルートテーブルを IPv4 または IPv6 ゲートウェイからデタッチします。
Terraform
ルートテーブルを vSwitch にアタッチする
リソース:alicloud_route_table_attachment
データソース:alicloud_zones
variable "name" {
default = "terraform-example"
}
resource "alicloud_vpc" "foo" {
cidr_block = "172.16.0.0/12"
vpc_name = var.name
}
data "alicloud_zones" "default" {
available_resource_creation = "VSwitch"
}
resource "alicloud_vswitch" "foo" {
vpc_id = alicloud_vpc.foo.id
cidr_block = "172.16.0.0/21"
zone_id = data.alicloud_zones.default.zones[0].id
vswitch_name = var.name
}
resource "alicloud_route_table" "foo" {
vpc_id = alicloud_vpc.foo.id
route_table_name = var.name
description = "route_table_attachment"
}
resource "alicloud_route_table_attachment" "foo" {
vswitch_id = alicloud_vswitch.foo.id
route_table_id = alicloud_route_table.foo.id
}ルートテーブルを IPv4/IPv6 ゲートウェイにアタッチする
リソース:alicloud_vpc_gateway_route_table_attachment
resource "alicloud_vpc" "example" {
cidr_block = "172.16.0.0/12"
vpc_name = "terraform-example"
}
resource "alicloud_route_table" "example" {
vpc_id = alicloud_vpc.example.id
route_table_name = "terraform-example"
description = "terraform-example"
associate_type = "Gateway"
}
resource "alicloud_vpc_ipv4_gateway" "example" {
ipv4_gateway_name = "terraform-example"
vpc_id = alicloud_vpc.example.id
enabled = true
}
resource "alicloud_vpc_gateway_route_table_attachment" "example" {
ipv4_gateway_id = alicloud_vpc_ipv4_gateway.example.id
route_table_id = alicloud_route_table.example.id
}ルートの管理
ルートの追加と削除
vSwitch にアタッチされたルートテーブルでは、手動でルートを追加して vSwitch のトラフィックパスを制御できます。手動で追加されたルートはカスタムルートとして分類されます。
ゲートウェイルートテーブルではルートを追加することはできませんが、ルートのネクストホップを変更することはできます。
コンソール
ルートの追加
ターゲットのルートテーブルの詳細ページに移動します。 タブで、ルートエントリの追加 をクリックします。
[ルートエントリの追加] ダイアログボックスで、[宛先 CIDR ブロック] と [ネクストホップタイプ] を設定します。さまざまなネクストホップタイプの典型的なシナリオの詳細については、「設定例」をご参照ください。
ルートを追加する際にエラーが発生した場合は、設定が ルートの優先度の要件を満たしているか確認してください。
ルートの削除
ターゲットのルートの [操作] 列で、[削除] をクリックします。
ルートを削除する前に、ビジネスへの影響を十分に評価し、サービスの中断を避けてください。
API
CreateRouteEntry 操作を呼び出して単一のルートを追加します。CreateRouteEntries 操作を呼び出してルートをバッチで追加します。
ルートを削除する前に、ビジネスへの影響を十分に評価し、サービスの中断を避けてください。
DeleteRouteEntry 操作を呼び出して単一のカスタムルートを削除します。DeleteRouteEntries 操作を呼び出してカスタムルートをバッチで削除します。
Terraform
リソース:alicloud_route_entry
resource "alicloud_route_entry" "foo" {
route_table_id = "rt-12345xxxx" # ルートテーブル ID を指定します。
destination_cidrblock = "172.16.1.1/32"
nexthop_type = "Instance" # ネクストホップタイプを指定します。
nexthop_id = "i-12345xxxx" # ネクストホップインスタンス ID を指定します。
}ルートのネクストホップの変更
ルートのネクストホップを変更して、宛先 CIDR ブロックのトラフィックパスを変更できます。
システムルート:カスタムルートテーブル (ゲートウェイルートテーブルを含む) 内のシステムルートに対してのみネクストホップを変更できます。変更後、ルートタイプはカスタムになります。ルートを削除すると、システムルートに戻ります。
カスタムルート:システムルートテーブルとカスタムルートテーブルの両方で、ルートテーブルタイプの制限なくカスタムルートのネクストホップを変更できます。
宛先 CIDR ブロックとネクストホップでサポートされているタイプの詳細については、「システムルートとカスタムルートの比較」をご参照ください。
ルートのネクストホップを変更する前に、ビジネスへの影響を十分に評価し、サービスの中断を避けてください。
コンソール
ターゲットのルートの [操作] 列で、[編集] をクリックします。表示されるダイアログボックスで、[ネクストホップタイプ] のドロップダウンリストをクリックし、ターゲットのネクストホップを選択します。
さまざまなネクストホップタイプの典型的なシナリオの詳細については、「設定例」をご参照ください。
API
ModifyRouteEntry 操作を呼び出して、vSwitch にアタッチされたルートテーブル内のルートのネクストホップを変更します。
UpdateGatewayRouteTableEntryAttribute 操作を呼び出して、IPv4 または IPv6 ゲートウェイにアタッチされたルートテーブル内のルートのネクストホップを変更します。
Terraform
リソース:alicloud_route_entry
resource "alicloud_route_entry" "foo" {
route_table_id = "rt-12345xxxx" # ルートテーブル ID を指定します。
destination_cidrblock = "172.16.1.1/32"
nexthop_type = "Instance" # ネクストホップタイプを変更します。
nexthop_id = "i-12345xxxx" # ネクストホップインスタンス ID を指定します。
}静的ルートの公開と撤回
ルートテーブルからのルートは、Express Connect Router (ECR) またはトランジットルーター (TR) に伝播できます。これを動的ルート受信と組み合わせることで、ルート設定が簡素化されます。
ECR への静的ルートの公開:静的ルートが ECR に公開されると、クラウド上の ECR からデータセンターに動的に伝播できます。ルートの競合がなければ、ECR に関連付けられているすべてのデータセンターがこのルートを学習できます。
トランジットルーター (TR) への静的ルートの公開:静的ルートが TR に公開された後、ルートの競合がなく、TR でルート同期が有効になっている場合、TR に接続されているすべてのネットワークインスタンスがこのルートを学習できます。
VPC が ECR と TR の両方に接続されている場合、VPC ルートを ECR に公開する操作と TR に公開する操作は独立しており、互いに影響しません。
コンソール
静的ルートの公開
ターゲットのルートの [ルートアドバタイズステータス] 列で、[アドバタイズ] をクリックします。
[ルートアドバタイズステータス] 列は、VPC が TR または ECR に接続された後にのみコンソールに表示されます。
公開された静的ルートの撤回
ターゲットのルートの [ルートアドバタイズステータス] 列で、[撤回] をクリックします。
[ルートアドバタイズステータス] 列は、VPC が TR または ECR に接続された後にのみコンソールに表示されます。
API
ECR の場合:
PublishVpcRouteEntries 操作を呼び出して、静的ルートを ECR に公開します。
WithdrawVpcPublishedRouteEntries 操作を呼び出して、ECR に公開されたルートを撤回します。
TR の場合:
PublishRouteEntries 操作を呼び出して、静的ルートを TR に公開します。
WithdrawPublishedRouteEntries 操作を呼び出して、TR に公開されたルートを撤回します。
Tab body
動的ルート受信の有効化/無効化
デフォルトでは、すべてのルートテーブルで 動的ルートの受信が有効になっています。純粋な静的ルーティング設定が必要な場合は、ルートテーブルの動的ルート受信を無効にすることができます。これにより、ビジネスルートテーブルを必要に応じて計画し、ルート設定を簡単に管理できます。
無効化がサポートされるケース:動的ルートのソースが [ルートアドバタイズタイプ ECR] であるか、VPC に動的ルートが伝播されていない場合。VPC に動的ルートが伝播されていない場合、ルートテーブル詳細ページの [ルートエントリリスト] > [動的ルート] タブに [動的ルートソース] は表示されません。
次のケースでは無効化はサポートされていません:VPC が Basic Edition の TR に接続されている。VPC が Enterprise Edition の TR に接続されており、TR で VPC の ルート同期が有効になっている。VPC が VPN Gateway に関連付けられており、VPN Gateway で BGP ルートの自動伝播が有効になっている。
無効化の影響:
VPC ルートテーブルは、他のネットワークインスタンスから伝播されるルートを受信しなくなります。ルートテーブルに既に動的ルートが存在する場合、それらはすべて削除されます。慎重に進めてください。
VPC は Basic Edition の TR に接続できなくなります。この VPC に接続された TR は、VPC のルート同期を有効にできません。この VPC に関連付けられた VPN Gateway は、BGP ルートの自動伝播を有効にできません。
無効化後の再有効化の影響:
再有効化後、VPC ルートテーブルの動的ルートは、現在動的ルートソースから伝播されているルートに基づきます。
たとえば、ECR に 4 つの動的ルートがある場合、このスイッチを無効にすると VPC ルートテーブルから動的ルートがクリアされます。ECR にさらに 2 つのルートが追加され、このスイッチを再有効化すると、VPC ルートテーブルは ECR から 6 つの動的ルートを受信します。
コンソール
ターゲットのルートテーブルの [ルートテーブル詳細] ページに移動します。[アドバタイズされたルートの受け入れ] スイッチを使用して、動的ルート受信を有効または無効にします。
動的ルート受信を有効または無効にする前に、ルート変更によるビジネスへの影響を十分に評価し、サービスの中断を避けてください。
API
ModifyRouteTableAttributes 操作を呼び出し、RoutePropagationEnable パラメーターを変更して動的ルート受信を有効化または無効化します。
動的ルート受信を有効または無効にする前に、ルート変更によるビジネスへの影響を十分に評価し、サービスの中断を避けてください。
Terraform
動的ルート受信を有効または無効にする前に、ルート変更によるビジネスへの影響を十分に評価し、サービスの中断を避けてください。
リソース:alicloud_route_table
variable "name" {
default = "terraform-example"
}
resource "alicloud_vpc" "defaultVpc" {
vpc_name = var.name
}
resource "alicloud_route_table" "default" {
description = "test-description"
vpc_id = alicloud_vpc.defaultVpc.id
route_table_name = var.name
associate_type = "VSwitch"
route_propagation_enable = true # このパラメーターを変更して、動的ルート受信を有効または無効にします。
}ゲートウェイルートテーブルの使用
ゲートウェイルートテーブルを使用すると、インバウンドインターネットトラフィックをセキュリティデバイスに誘導して詳細な検査とフィルタリングを行うことができます。これにより、悪意のある攻撃や不正アクセスを防ぎ、セキュリティを強化できます。また、ゲートウェイルートテーブルをカスタムルートテーブルと組み合わせて、アウトバウンドトラフィックをセキュリティデバイスにリダイレクトし、インバウンドとアウトバウンドの両方のトラフィックに対して包括的なセキュリティを提供することもできます。
この機能を使用するには、まずゲートウェイルートテーブルを作成し、それを IPv4 ゲートウェイにアタッチする必要があります。その後、ルートテーブル内の vSwitch CIDR ブロックに対応するシステムルートのネクストホップを次のいずれかに変更できます:
[ECS インスタンス] または [ENI]:インターネットトラフィックを特定の ECS インスタンスまたは ENI に安全にリダイレクトするために使用されます。
[ゲートウェイエンドポイント]:Gateway Load Balancer (GWLB) シナリオで、インターネットトラフィックをサードパーティのセキュリティデバイスにリダイレクトするために使用されます。
ネクストホップを [Gateway Load Balancer エンドポイント] に変更できるのは、これらのリージョン
セルフマネージドファイアウォールの使用
VPC 内の ECS インスタンスにセルフマネージドファイアウォールをセットアップし、ゲートウェイルートテーブルを使用して VPC に入るトラフィックをファイアウォールにリダイレクトしてフィルタリングできます。
GWLB 高可用性アーキテクチャ
Gateway Load Balancer (GWLB) を使用して、トラフィックを異なるセキュリティデバイスに分散させ、アプリケーションのセキュリティと可用性を向上させることができます。
設定例
異なるネクストホップタイプは、異なるシナリオに対応します:
IPv4 ゲートウェイへのルート
IPv4 ゲートウェイを、企業の VPC とインターネット間の統一された出入り口として使用できます。これをカスタムルートテーブルと組み合わせることで、インターネットアクセストラフィックの一元管理が可能になり、統一されたセキュリティポリシーと監査の実施が容易になり、分散したアクセスポイントからのセキュリティリスクを低減します。
IPv6 ゲートウェイへのルート
VPC で IPv6 を有効にすると、システムは自動的にシステムルートテーブルにカスタムルートを追加します:
宛先 CIDR ブロックは
::/0で、ネクストホップは IPv6 ゲートウェイです。
このルートは、デフォルトの IPv6 トラフィックを IPv6 ゲートウェイに誘導します。IPv6 アドレスの IPv6 パブリック帯域幅を有効にすると、システムルートテーブルにアタッチされた vSwitch はインターネットと通信できます。
IPv6 が有効でカスタムルートテーブルにアタッチされている vSwitch が IPv6 でインターネットと通信するには、上記のルートをカスタムルートテーブルに手動で追加する必要があります。
ネクストホップが IPv6 ゲートウェイインスタンスであるカスタムルートの場合、宛先 CIDR ブロックは ::/0 にのみ設定できます。NAT Gateway へのルート
多くのサーバーが積極的にインターネットにアクセスする必要があり、多くのパブリック IP リソースが必要な場合、インターネット NAT ゲートウェイの SNAT 機能を使用できます。これにより、VPC 内の複数の ECS インスタンスが EIP を共有してインターネットにアクセスでき、パブリック IP リソースを節約できます。さらに、これらの ECS インスタンスはプライベート IP アドレスを公開せずにインターネットにアクセスできるため、セキュリティリスクが低減されます。
NAT Gateway を使用する場合、インターネットアクセスを有効にするために、インターネット NAT ゲートウェイを指すカスタムルートを VPC ルートテーブルに追加する必要があります。
ECS インスタンスが所属する vSwitch がカスタムルートテーブルにアタッチされている場合: [宛先 CIDR ブロック] を
0.0.0.0/0に、[ネクストホップタイプ] をインターネット NAT ゲートウェイに設定したルートを手動で設定する必要があります。ECS インスタンスが属する vSwitch がシステムルートテーブルにアタッチされている場合:
システムルートテーブルに、宛先 CIDR ブロックが
0.0.0.0/0のルートが存在しない場合、システムはインターネット NAT ゲートウェイへのルートを自動的に設定します。システムルートテーブルに、宛先 CIDR ブロックが
0.0.0.0/0のルートがすでに存在する場合、既存のルートを削除してから、インターネット NAT ゲートウェイを指すルートを追加する必要があります。
VPC ピアリング接続へのルート
VPC は互いに分離されていますが、VPC ピアリング接続を使用して、同じアカウントまたは異なるアカウント、同じリージョンまたは異なるリージョンにある 2 つの VPC 間でプライベート通信を有効にすることができます。2 つの VPC 間にピアリング接続が確立されると、その中にデプロイされた Alibaba Cloud リソースは、プライベート IPv4 または IPv6 アドレスを使用して互いにアクセスできます。
トランジットルーターへのルート
Cloud Enterprise Network (CEN) を使用して VPC を接続する場合、VPC ルートテーブルにトランジットルーターを指すルートを追加する必要があります。これは次のいずれかの方法で行うことができます:
VPC 接続を作成する際に、[トランジットルーターを指すルートを自動的に作成し、現在の VPC のすべてのルートテーブルに追加する] を選択します。
この機能を有効にすると、システムは VPC インスタンスのすべてのルートテーブルに、宛先 CIDR ブロックが 10.0.0.0/8、172.16.0.0/12、および 192.168.0.0/16 の 3 つのルートを自動的に設定します。これらのネクストホップはすべて VPC 接続を指し、VPC インスタンスからの IPv4 トラフィックをトランジットルーターに誘導します。
トランジットルーターで ルート学習を有効にした後、各 VPC で ルート同期を有効にするか、各 VPC ルートテーブルにピア VPC を指すルートを手動で追加します。
次の図は、トランジットルーターでルート学習を有効にした後、VPC ルートテーブルにピア VPC の CIDR ブロックを宛先 CIDR ブロックとし、ネクストホップをトランジットルーターとするルートを手動で追加する例を示しています。
VPN Gateway へのルート
VPN Gateway を介して暗号化されたトンネルを確立することで、オンプレミスのデータセンターと VPC 間に安全で信頼性の高いネットワーク接続を作成できます。
VPN Gateway を使用する場合、VPC に [宛先 CIDR ブロック] をデータセンターの CIDR ブロックに、[ネクストホップタイプ] を [VPN Gateway] に設定したルートを構成する必要があります。これにより、VPC が IPsec 接続を介してデータセンターにアクセスできるようになります。
ECS インスタンスまたは Elastic Network Interface へのルート
VPC 内の 2 つの vSwitch が通信する必要がある場合、ルートテーブルを調整して、トラフィックパスにサードパーティのセキュリティデバイス (ファイアウォールや WAF など) を挿入し、トラフィックの検査、分析、保護を行うことができます。
これを設定するには、通信する各 vSwitch を別々のカスタムルートテーブルにアタッチします。次に、対応する CIDR ブロックのシステムルートのネクストホップを、ファイアウォールの ECS インスタンスまたはファイアウォールの Elastic Network Interface (ENI) に変更します。
ルーターインターフェイスへのルート
Express Connect の VBR-to-VPC 接続機能を使用して、オンプレミスのデータセンターをクラウドネットワークに接続できます。
VBR-to-VPC 接続機能はデフォルトでは有効になっていません。使用するには、ビジネス マネージャーに連絡して申請する必要があります。
この機能を使用する場合、VPC に宛先 CIDR ブロックをデータセンターの CIDR ブロックに、ネクストホップタイプを [ルーターインターフェイス (VBR へ)] に設定したルートを構成する必要があります。これにより、VPC は VBR を介してデータセンターにアクセスできます。このタイプは [ECMP] と [アクティブ/スタンバイルート] モードをサポートしており、ヘルスチェックと併用する必要があります:
[アクティブ/スタンバイルート]:ネクストホップとしてサポートされるインスタンスは 2 つのみです。アクティブルートのネクストホップの重みは 100、バックアップルートのネクストホップの重みは 0 です。アクティブルートがヘルスチェックに失敗した場合、バックアップルートが有効になります。
[ECMP]:ネクストホップとして 2 ~ 16 のインスタンスを選択できます。各インスタンスの重みは同じで、有効範囲は 0 ~ 255 です。システムはトラフィックをネクストホップインスタンス間で均等に分散します。
次の図は、アクティブ/スタンバイモードを示しています:
Express Connect Router へのルート
Express Connect Router と Express Connect を使用して、オンプレミスのデータセンターをクラウドネットワークに接続できます。
デフォルトでは、VPC は ECR から動的ルートを受信します。宛先 CIDR ブロックはデータセンターの CIDR ブロックで、ネクストホップは Express Connect Router であり、クラウド上の VPC とデータセンター間の通信を可能にします。
VPC ルートテーブルで動的ルート受信が無効になっている場合、VPC ルートテーブルに [宛先 CIDR ブロック] をデータセンターの CIDR ブロックに、[ネクストホップタイプ] を [ECR] に設定したルートを手動で構成する必要があります。これにより、クラウド上の VPC とデータセンター間の通信が可能になります。
Gateway Load Balancer エンドポイントへのルート
[GWLB エンドポイント] をサポートしているのは、これらのリージョンのみです。具体的な利用シーンについては、「ゲートウェイルートテーブルの使用 - GWLB 高可用性アーキテクチャ」をご参照ください。
詳細情報
エリア | リージョン |
アジア太平洋 - 中国 | 中国 (杭州)、中国 (上海)、、中国 (南京 - ローカルリージョン、閉鎖予定)、中国 (青島)、中国 (北京)、中国 (張家口)、中国 (フフホト)、中国 (ウランチャブ)、中国 (深セン)、中国 (河源)、中国 (広州)、中国 (成都)、中国 (香港)、中国 (武漢 - ローカルリージョン)、および中国 (福州 - ローカルリージョン、閉鎖予定) |
アジア太平洋 - その他 | 日本 (東京)、韓国 (ソウル)、シンガポール、マレーシア (クアラルンプール)、インドネシア (ジャカルタ)、フィリピン (マニラ)、および タイ (バンコク) |
ヨーロッパ & アメリカ | ドイツ (フランクフルト)、イギリス (ロンドン)、米国 (シリコンバレー)、米国 (バージニア)、および メキシコ |
中東 | UAE (ドバイ) および サウジアラビア (リヤド - パートナー運営) |
クォータ
クォータ名 | 説明 | デフォルトの制限 | クォータの引き上げ |
vpc_quota_route_tables_num | VPC で作成できるカスタムルートテーブルの数。 | 9 | [クォータ管理] ページまたは [Quota Center] に移動して、クォータの引き上げを申請します。 |
vpc_quota_route_entrys_num | ルートテーブルごとのカスタムルートエントリの最大数 (動的に伝播されるルートエントリを除く) | 200 | |
vpc_quota_dynamic_route_entrys_num | ルートテーブルに動的に伝播されるルートの数。 | 500 | |
vpc_quota_havip_custom_route_entry | HaVip インスタンスを指すことができるカスタムルートの最大数。 | 5 | |
vpc_quota_vpn_custom_route_entry | VPC 内の VPN ゲートウェイを指すことができるカスタムルートの最大数。 | 50 | |
なし | ルートテーブルに追加できるタグの数。 | 20 | 引き上げできません。 |
VPC で作成できる vRouter の数。 | 1 | ||
VPC 内のトランジットルーター (TR) 接続を指すことができるルートの最大数。 | 600 |
制限事項
ルートテーブルの制限
各 vSwitch はルートテーブルにアタッチする必要があり、1 つのルートテーブルにのみアタッチできます。1 つのルートテーブルは複数の vSwitch にアタッチできます。
カスタムルートテーブルのみ削除できます。システムルートテーブルは削除できません。
ルートの制限
静的ルートの制限:
システムルートは手動で作成または削除できません。
100.64.0.0/10 のクラウドサービスシステムルートよりも具体的な宛先 CIDR ブロックを持つカスタムルートを作成できますが、CIDR ブロックを同じにすることはできません。ルートが誤って設定されると、一部の Alibaba Cloud サービスにアクセスできなくなる可能性があるため、より具体的なルートは慎重に設定してください。
ネクストホップが IPv6 ゲートウェイインスタンスであるカスタムルートの場合、宛先 CIDR ブロックは
::/0にのみ設定できます。[ルートアドバタイズステータス] 列は、VPC が TR または ECR に接続された後にのみコンソールに表示されます。
新しいルートの宛先 CIDR ブロックが既存のルートの宛先 CIDR ブロックと重複する場合、一部のケースでは新しいルートの追加はサポートされていません。詳細については、「ルートの優先度」をご参照ください。
静的ルート公開の制限:
カスタムルートテーブル内のルートは ECR に公開できません。
宛先 CIDR ブロックがプレフィックスリストであるルートは ECR に公開できません。
ネクストホップがルーターインターフェイス (VBR へ) であるアクティブ/スタンバイルートおよび ECMP ルートは ECR に公開できません。VPC ルートが ECR に公開された後、ECMP またはアクティブ/スタンバイルートを設定することはできなくなります。
VPC ルートが ECR に公開された後、公開されたルートを変更したい場合、ターゲットルートのネクストホップは公開操作をサポートするルートタイプ (以下の表を参照) にのみ設定できます。
次の表は、VPC インスタンス内のさまざまなタイプのルートのデフォルトの公開ステータスと、それらが公開および撤回操作をサポートするかどうかを示しています。
動的ルートの制限:
VPC ルートテーブルは、一度に 1 つの動的ルートソースからのみ動的ルートを受信できます。
たとえば、VPC が ECR に関連付けられた後、VPC を Enterprise Edition の TR に接続すると、TR で VPC の ルート同期を有効にしようとしても失敗します。VPN Gateway を作成し、BGP ルートの自動伝播を有効にすると、VPN Gateway が学習した BGP ルートは自動的に VPC のシステムルートテーブルに伝播されます。この場合、VPC を ECR に関連付けることはできません。
受信した動的ルートがルートテーブル内の既存のルートと重複する場合、「ルートの優先度」を参照して、どのルートが有効になるかを判断してください。
vSwitch にアタッチされたルートテーブルのみが動的ルートを受信できます。ゲートウェイルートテーブルは動的ルートをサポートしていません。
課金
VPC ルートテーブル機能は無料です。