ルートテーブルを操作する
以下のタスクは、ルートテーブルを操作する方法を示しています。
コンソールで VPC ウィザードを使用して、ゲートウェイが含まれる VPC を作成すると、そのゲートウェイを使用するようにルートテーブルが自動的に更新されます。コマンドラインツールまたは API を使用して VPC をセットアップする場合、ルートテーブルはご自身で更新する必要があります。
タスク
サブネットが関連付けられているルートテーブルを特定する
サブネットが関連付けられているルートテーブルを特定するには、Amazon VPC コンソールでサブネットの詳細を確認します。
サブネットが関連付けられているルートテーブルを特定するには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで、[Subnets] を選択します。
-
[Route Table] タブを選択すると、ルートテーブルの ID とそのルートが表示されます。メインルートテーブルの場合、関連付けが暗示的か明示的かはコンソールに表示されません。メインルートテーブルとの関連付けが明示的かどうかを特定する方法については、「テーブルに明示的に関連付けられているサブネットまたはゲートウェイを特定する」を参照してください。
テーブルに明示的に関連付けられているサブネットまたはゲートウェイを特定する
ルートテーブルに明示的に関連付けられているサブネットまたはゲートウェイとその数を特定できます。
メインルートテーブルは、サブネットとの明示的な関連付けと暗示的な関連付けを持つことができます。カスタムルートテーブルは、明示的な関連付けしか持つことができません。
どのルートテーブルにも明示的に関連付けられていないサブネットは、メインルートテーブルに暗示的に関連付けられています。メインルートテーブルには、サブネットを明示的に関連付けることができます。その理由の例については、「メインルートテーブルを置き換える」を参照してください。
コンソールを使用して明示的に関連付けられているサブネットを特定するには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで、[Route Tables] を選択します。
-
[Explicit subnet association (明示的なサブネットの関連付け)] 列を表示して、明示的に関連付けられたサブネットを特定します。
-
必要なルートテーブルを選択します。
-
詳細ペインの [Subnet Associations] タブを選択します。このタブには、テーブルに明示的に関連付けられているサブネットが表示されています。また、どのルートテーブルにも関連付けられていない (つまり、メインルートテーブルに暗示的に関連付けられている) サブネットも表示されます。
コンソールを使用して明示的に関連付けられているゲートウェイを特定するには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで、[Route Tables] を選択します。
-
[Edge associations (エッジの関連付け)] 列を表示して、関連付けられたゲートウェイを特定します。
-
必要なルートテーブルを選択します。
-
詳細ペインの [Edge Associations (エッジの関連付け)] タブを選択します。ルートテーブルに関連付けられているゲートウェイが一覧表示されます。
コマンドラインを使用して 1 つ以上のルートテーブルを記述し、その関連付けを表示するには
-
describe-route-tables (AWS CLI)
-
Get-EC2RouteTable (AWS Tools for Windows PowerShell)
カスタムルートテーブルを作成する
Amazon VPC コンソールを使用して VPC のカスタムルートテーブルを作成できます。
コンソールを使用してカスタムルートテーブルを作成するには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで、[Route Tables] を選択します。
-
[ルートテーブルの作成] を選択します。
-
(オプション) [名前タグ] には、ルートテーブルの名前を入力します。
-
[VPC] で、ユーザーの VPC を選択します。
-
(オプション) タグを追加または削除します。
[タグの追加] [タグの追加] を選択して、以下を実行します。
-
[キー] にはキー名を入力します。
-
[値] にキー値を入力します。
[タグの削除] タグのキーと値の右側にある [削除] ボタン ("X") を選択します。
-
-
[作成] を選択します。
コマンドラインを使用してカスタムルートテーブルを作成するには
-
create-route-table (AWS CLI)
-
New-EC2RouteTable (AWS Tools for Windows PowerShell)
ルートテーブルでルートを追加および削除する
ルートテーブルのルートは追加、削除、変更できます。変更できるのは、追加したルートのみです。
Site-to-Site VPN 接続の静的ルートの操作の詳細については、AWS Site-to-Site VPN ユーザーガイドの「Site-to-Site VPN 接続の静的ルートの編集」を参照してください。
コンソールを使用してルートを変更するには、またはルートテーブルにルートを追加するには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで [ルートテーブル] を選択して、ルートテーブルを選択します。
-
[アクション]、[ポリシーの編集] の順に選択します。
-
ルートを追加するには、[ルートの追加] を選択します。[送信先] に、送信先 CIDR ブロック、単一の IP アドレス、またはプレフィックスリストの ID を入力します。
-
既存のルートを変更するには、[宛先] で、宛先 CIDR ブロックまたは 1 つの IP アドレスを置き換えます。[ターゲット] で、ターゲットを選択します。
-
[Save routes] を選択します。
コマンドラインを使用してルートテーブルにルートを追加するには
-
create-route (AWS CLI)
-
New-EC2Route (AWS Tools for Windows PowerShell)
コマンドラインツールまたは API を使用してルートを追加すると、宛先 CIDR ブロックは自動的に正規形式に変更されます。たとえば、CIDR ブロックに 100.68.0.18/18
を指定した場合、宛先 CIDR ブロックが 100.68.0.0/18
であるルートが作成されます。
コマンドラインを使用してルートテーブル内の既存のルートを置き換えるには
-
replace-route (AWS CLI)
-
Set-EC2Route (AWS Tools for Windows PowerShell)
コンソールを使用してルートをルートテーブルから削除するには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで [ルートテーブル] を選択して、ルートテーブルを選択します。
-
[アクション]、[ポリシーの編集] の順に選択します。
-
削除するルートの右側にある削除ボタン ([x]) を選択します。
-
完了したら、[Save routes (ルートを保存)] を選択します。
コマンドラインを使用してルートテーブルからルートを削除するには
-
delete-route (AWS CLI)
-
Remove-EC2Route (AWS Tools for Windows PowerShell)
ルート伝達を有効および無効にする
ルート伝達により、仮想プライベートゲートウェイはルートテーブルにルートを自動的に伝達できます。つまり、ルートテーブルへの VPN ルートを手動で入力する必要はありません。ルートの伝播は有効または無効にできます。
VPN ルーティングオプションの詳細については、Site-to-Site VPN ユーザーガイドの「Site-to-Site VPN ルーティングオプション」を参照してください。
コンソールを使用してルート伝達を有効にするには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで [Route Tables] を選択して、ルートテーブルを選択します。
-
[アクション]、[Edit route propagation (ルート伝達を編集)] の順に選択します。
-
仮想プライベートゲートウェイの横にある [Propagate] チェックボックスをオンにし、[Save] を選択します。
コマンドラインを使用してルート伝達を有効にするには
-
enable-vgw-route-propagation (AWS CLI)
-
Enable-EC2VgwRoutePropagation (AWS Tools for Windows PowerShell)
コンソールを使用してルート伝達を無効にするには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで [Route Tables] を選択して、ルートテーブルを選択します。
-
[アクション]、[Edit route propagation (ルート伝達を編集)] の順に選択します。
-
[Propagate] チェックボックスをオフにし、[Save] を選択します。
コマンドラインを使用してルート伝達を無効にするには
-
disable-vgw-route-propagation (AWS CLI)
-
Disable-EC2VgwRoutePropagation (AWS Tools for Windows PowerShell)
サブネットをルートテーブルに関連付ける
ルートテーブルのルートを特定のサブネットに適用するには、ルートテーブルをサブネットに関連付ける必要があります。ルートテーブルは複数のサブネットに関連付けることができます。ただし、サブネットは一度に 1 つのルートテーブルにのみ関連付けることができます。どのテーブルにも明示的に関連付けられていないサブネットは、デフォルトでメインルートテーブルに暗示的に関連付けられています。
コンソールを使用してルートテーブルをサブネットに関連付けるには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで [Route Tables] を選択して、ルートテーブルを選択します。
-
[Subnet Associations (サブネットの関連付け)] タブで、 [Edit subnet associations (サブネットの関連付けの編集)] を選択します。
-
ルートテーブルに関連付けるサブネットの [Associate] チェックボックスをオンにしてから、[Save] を選択します。
コマンドラインを使用してサブネットをルートテーブルに関連付けるには
-
associate-route-table (AWS CLI)
-
Register-EC2RouteTable (AWS Tools for Windows PowerShell)
サブネットのルートテーブルを変更する
サブネットに関連付けるルートテーブルは変更できます。
ルートテーブルを変更すると、変更後のルートテーブルに同じターゲットへの同じトラフィックのルートが含まれていない限り、サブネット内の既存の接続は削除されます。
コンソールを使用してサブネットとルートテーブルの関連付けを変更するには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで [Subnets] を選択し、サブネットを選択します。
-
[ルートテーブル] タブで、[Edit route table association (ルートテーブルの関連付けを編集)] を選択します。
-
[ルートテーブル ID] リストから、サブネットを関連付ける新しいルートテーブルを選択し、[保存] を選択します。
コマンドラインを使用してサブネットに関連付けられたルートテーブルを変更するには
-
replace-route-table-association (AWS CLI)
-
Set-EC2RouteTableAssociation (AWS Tools for Windows PowerShell)
サブネットとルートテーブルの関連付けを解除する
サブネットとルートテーブルの関連付けを解除することができます。別のルートテーブルにサブネットを関連付けるまでは、メインルートテーブルに暗示的に関連付けられています。
コンソールを使用してサブネットとルートテーブルの関連付けを解除するには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで [Route Tables] を選択して、ルートテーブルを選択します。
-
[Subnet Associations (サブネットの関連付け)] タブで、 [Edit subnet associations (サブネットの関連付けの編集)] を選択します。
-
サブネットの [Associate] チェックボックスをオフにして、[Save] を選択します。
コマンドラインを使用してサブネットとルートテーブルの関連付けを解除するには
-
disassociate-route-table (AWS CLI)
-
Unregister-EC2RouteTable (AWS Tools for Windows PowerShell)
メインルートテーブルを置き換える
VPC でメインルートテーブルを別のルートテーブルに変更できます。
コンソールを使用してメインルートテーブルを置き換えるには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで、[Route Tables] を選択します。
-
新しいメインルートテーブルにするサブネットルートテーブルを選択し、[アクション]、[Set Main Route Table (メインルートテーブルの設定)] の順に選択します。
-
確認のダイアログボックスで [OK] を選択します。
コマンドラインを使用してメインルートテーブルを置き換えるには
-
replace-route-table-association (AWS CLI)
-
Set-EC2RouteTableAssociation (AWS Tools for Windows PowerShell)
次の手順では、サブネットとメインルートテーブルの間の明示的な関連付けを解除する方法について説明します。これにより、サブネットとメインルートテーブルが暗示的に関連付けられます。そのプロセスは、サブネットと任意のルートテーブルの関連付け解除と同じです。
メインルートテーブルとの明示的な関連付けを解除するには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで [Route Tables] を選択して、ルートテーブルを選択します。
-
[Subnet Associations (サブネットの関連付け)] タブで、 [Edit subnet associations (サブネットの関連付けの編集)] を選択します。
-
サブネットのチェックボックスをオンにし、[保存] を選択します。
ゲートウェイとルートテーブルの関連付け
インターネットゲートウェイまたは仮想プライベートゲートウェイをルートテーブルに関連付けることができます。詳細については、「ゲートウェイルートテーブル」を参照してください。
コンソールを使用してゲートウェイをルートテーブルに関連付けるには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで [Route Tables] を選択して、ルートテーブルを選択します。
-
[アクション]、[Edit edge associations (エッジの関連付けの編集)] の順に選択します。
-
ゲートウェイの一覧を表示するには、[インターネットゲートウェイ] または [仮想プライベートゲートウェイ] を選択します。
-
ゲートウェイを選択し、[保存] を選択します。
AWS CLI を使用してゲートウェイをルートテーブルに関連付けるには
[associate-route-table] コマンドを使用します。次の例では、インターネットゲートウェイ igw-11aa22bb33cc44dd1
をルートテーブル rtb-01234567890123456
に関連付けます。
aws ec2 associate-route-table --route-table-id rtb-01234567890123456 --gateway-id igw-11aa22bb33cc44dd1
ルートテーブルからゲートウェイの関連付けを解除する
インターネットゲートウェイまたは仮想プライベートゲートウェイをルートテーブルから関連付け解除できます。
コンソールを使用してゲートウェイをルートテーブルに関連付けるには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで [Route Tables] を選択して、ルートテーブルを選択します。
-
[アクション]、[Edit edge associations (エッジの関連付けの編集)] の順に選択します。
-
[Associated gateways (関連付けられたゲートウェイ)] で、関連付けを解除するゲートウェイの削除ボタン (x) を選択します。
-
[Save] を選択します。
コマンドラインを使用してゲートウェイとルートテーブルの関連付けを解除するには
-
disassociate-route-table (AWS CLI)
-
Unregister-EC2RouteTable (AWS Tools for Windows PowerShell)
ローカルルートのターゲットの置き換えと復元
ゲートウェイルートテーブルでデフォルトのローカルルートのターゲットを変更し、代わりにターゲットと同じ VPC でネットワークインターフェイスまたはインスタンスを指定できます。ローカルルートのターゲットを置き換えた場合は、後でデフォルトの
local
ターゲットに戻すことができます。VPC に複数の CIDR ブロックがある場合、ルートテーブルには複数のローカルルートが、CIDR ブロックごとに 1 つあります。必要に応じて、各ローカルルートのターゲットを置き換えまたは復元できます。
サブネットルートテーブル内のローカルルートのターゲットを置き換えることはできません。
コンソールを使用してローカルルートのターゲットを置き換えるには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで [Route Tables] を選択して、ルートテーブルを選択します。
-
[アクション]、[ポリシーの編集] の順に選択します。
-
[ターゲット] で、[ネットワークインターフェイス] を選択してネットワークインターフェイスのリストを表示し、ネットワークインターフェイスを選択します。
または、[インスタンス] を選択してインスタンスのリストを表示し、インスタンスを選択します。
-
[Save routes] を選択します。
コンソールを使用してローカルルートのターゲットを復元するには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで [Route Tables] を選択して、ルートテーブルを選択します。
-
[アクション]、[ポリシーの編集] の順に選択します。
-
[ターゲット] で、[ローカル] を選択します。
-
[Save routes] を選択します。
AWS CLI を使用してローカルルートのターゲットを置き換えるには
[replace-route] コマンドを使用します。次の例では、ローカルルートのターゲットを eni-11223344556677889
に置き換えます 。
aws ec2 replace-route --route-table-id rtb-01234567890123456 --destination-cidr-block 10.0.0.0/16 --network-interface-id eni-11223344556677889
AWS CLI を使用してローカルルートのターゲットを復元するには
次の例では、ルートテーブル rtb-01234567890123456
のローカルターゲットを復元します。
aws ec2 replace-route --route-table-id rtb-01234567890123456 --destination-cidr-block 10.0.0.0/16 --local-target
ルートテーブルを削除する
ルートテーブルは、サブネットが関連付けられていない場合にのみ削除できます。メインルートテーブルを削除することはできません。
コンソールを使用してルートテーブルを削除するには
-
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
ナビゲーションペインで、[Route Tables] を選択します。
-
ルートテーブルを選択してから [アクション]、[ルートテーブルの削除] の順に選択します。
-
確認ダイアログボックスで、[ルートテーブルの削除] を選択します。
コマンドラインを使用してルートテーブルを削除するには
-
delete-route-table (AWS CLI)
-
Remove-EC2RouteTable (AWS Tools for Windows PowerShell)