デフォルト VPC
Amazon VPC の使用開始時には、各 AWS リージョンにデフォルトの VPC があります。デフォルト VPC には、各アベイラビリティーゾーンのパブリックサブネット、インターネットゲートウェイ、および DNS 解決を有効にするための設定があります。そのため、すぐにデフォルト VPC に Amazon EC2 インスタンスの起動を開始できます。デフォルトの VPC では、Elastic Load Balancing、Amazon RDS、および Amazon EMR などのサービスを使用することもできます。
デフォルト VPC は、すぐに使用を開始する場合や、ブログやシンプルなウェブサイトなど、パブリックインスタンスを起動する場合に適しています。デフォルト VPC のコンポーネントは、必要に応じて変更できます。
サブネットをデフォルト VPC に追加できます。詳細については、「サブネットの作成」を参照してください。
内容
デフォルト VPC のコンポーネント
デフォルト VPC を作成するとき、Amazon 側で次の設定を行います。
-
サイズ
/16
の IPv4 CIDR ブロック (172.31.0.0/16
) の VPC を作成する。これは、最大 65,536 個のプライベート IPv4 アドレスを提供します。 -
各アベイラビリティーゾーンに、サイズ
/20
のデフォルトサブネットを作成する。この場合は、サブネットあたり最大 4,096 個のアドレスが作成され、その中のいくつかは Amazon が使用するように予約されています。 -
インターネットゲートウェイを作成して、デフォルト VPC に接続する。
-
すべてのトラフィック (
0.0.0.0/0
) をインターネットゲートウェイにポイントさせるルートをメインルートテーブルに追加します。 -
デフォルトのセキュリティグループを作成し、デフォルト VPC に関連付ける。
-
デフォルトのネットワークアクセスコントロールリスト (ACL) を作成し、デフォルト VPC に関連付ける。
-
デフォルト VPC を備えた AWS アカウントに、デフォルトの DHCP オプションセットを関連付けます。
注記
Amazonは、ユーザーに代わって上記のリソースを作成します。ユーザーがこれらのアクションを実行するわけではないため、IAM ポリシーはこれらのアクションに適用されません。たとえば、CreateInternetGateway を呼び出す機能を拒否する IAM ポリシーがあり、CreateDefaultVpc を呼び出した場合でも、デフォルト VPC 内のインターネットゲートウェイが作成されます。
次の図は、デフォルト VPC に対して設定する重要なコンポーネントを示します。

次の表は、デフォルト VPC のメインルートテーブルのルートを示しています。
送信先 | ターゲット |
---|---|
172.31.0.0/16 | ローカル |
0.0.0.0/0 | internet_gateway_id |
デフォルト VPC は、他の VPC と同じように使用できます。
-
デフォルト以外のサブネットを追加します。
-
メインルートテーブルを変更します。
-
ルートテーブルを追加します。
-
追加セキュリティグループを関連付けます。
-
デフォルトのセキュリティグループのルールを更新します。
-
AWS Site-to-Site VPN 接続を追加します。
-
さらに多くの IPv4 CIDR ブロックを追加します。
-
Direct Connect ゲートウェイを使用して、リモートリージョン内の VPC にアクセスします。Direct Connect ゲートウェイオプションの詳細については、AWS Direct Connect ユーザーガイドの「Direct Connect ゲートウェイ」を参照してください。
デフォルトサブネットは、他のサブネットと同じように (カスタムルートテーブルの追加、ネットワーク ACL の設定など) 使用できます。また、EC2 インスタンスを起動するときに、特定のデフォルトサブネットを指定することもできます。
オプションで IPv6 CIDR ブロックをデフォルト VPC と関連付けることができます。
デフォルトサブネット
デフォルトでは、デフォルトサブネットはパブリックサブネットに指定されています。メインルートテーブルがインターネット用のサブネットのトラフィックをインターネットゲートウェイに送信するためです。デフォルトサブネットをプライベートサブネットにするには、送信元 0.0.0.0/0 からインターネットゲートウェイへのルートを削除します。ただし、この操作を行った場合、そのサブネットで実行されている EC2 インスタンスすべてがインターネットにアクセスできなくなります。
デフォルトサブネット内に起動する各インスタンスは、パブリック IPv4 アドレスとプライベート IPv4 アドレスの両方、およびパブリックとプライベート DNS ホスト名の両方を受け取ります。デフォルト VPC 内のデフォルト以外のサブネット内に起動するインスタンスは、パブリック IPv4 アドレスまたはパブリック DNS ホスト名を受け取りません。サブネットのデフォルトのパブリック IP アドレス指定の動作は変更できます。詳細については、「サブネットのパブリック IPv4 アドレス属性を変更する」を参照してください
AWS によって、リージョンに新しいアベイラビリティーゾーンが追加される場合があります。ほとんどの場合、数日以内に、このアベイラビリティーゾーン内でデフォルト VPC の新しいデフォルトサブネットが自動的に作成されます。ただし、デフォルト VPC への変更を行った場合、新しいデフォルトサブネットは追加されません。新しいアベイラビリティーゾーンでデフォルトサブネットが必要な場合は、独自に作成できます。詳細については、「デフォルトのサブネットを作成する」を参照してください。
デフォルト VPC とデフォルトサブネットの表示
デフォルト VPC およびデフォルトサブネットを表示するには、Amazon VPC コンソールまたはコマンドラインを使用します。
コンソールを使用して、デフォルト VPC とデフォルトサブネットを表示するには
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
画面左枠のナビゲーションペインで、[Your VPCs] を選択します。
-
[Default VPC] 列で、[Yes] の値を探します。デフォルト VPC の ID をメモしておきます。
-
ナビゲーションペインで、[Subnets] を選択します。
-
検索バーで、デフォルト VPC の ID を入力します。デフォルト VPC のサブネットが返ります。
-
どのサブネットがデフォルトサブネットかを確認するには、[Default Subnet] 列で [Yes] の値を探します。
コマンドラインを使用してデフォルト VPC を記述するには
-
describe-vpcs を使用する (AWS CLI)
-
Get-EC2Vpc を使用する (AWS Tools for Windows PowerShell)
このコマンドを使用するときは、isDefault
フィルタの値を true
に設定します。
コマンドラインを使用してデフォルトサブネットを記述するには
-
describe-subnets を使用する (AWS CLI)
-
Get-EC2Subnet を使用する (AWS Tools for Windows PowerShell)
このコマンドを使用するときは、vpc-id
フィルタの値をデフォルト VPC の ID に設定します。出力で、DefaultForAz
フィールドは、デフォルトサブネットの true
に設定されます。
デフォルトの VPC を作成する
デフォルト VPC を削除した場合は、新しく作成することができます。以前の削除したデフォルト VPC を復元することはできません。また、デフォルト以外の既存の VPC をデフォルト VPC としてマーキングすることはできません。
デフォルト VPC を作成する場合、各アベイラビリティーゾーンのデフォルトサブネットなど、デフォルト VPC の標準コンポーネントを使用して作成されます。独自のコンポーネントを指定することはできません。新しいデフォルト VPC では、サブネット CIDR ブロックが、以前のデフォルト VPC と同じアベイラビリティーゾーンにマッピングされない場合があります。たとえば、CIDR ブロック (172.31.0.0/20
) を持つサブネットが、以前のデフォルト VPC の us-east-2a
に作成されていた場合、新しいデフォルト VPC では us-east-2b
に作成される場合があります。
デフォルト VPC がすでに該当リージョンに作成されている場合は、新しく作成することはできません。
コンソールを使用してデフォルト VPC を作成するには
Amazon VPC コンソール (https://console.aws.amazon.com/vpc/
) を開きます。 -
画面左枠のナビゲーションペインで、[Your VPCs] を選択します。
-
[Actions]、[Create Default VPC] の順に選択します。
-
[Create] を選択します。確認画面を閉じます。
コマンドラインを使用してデフォルト VPC を作成するには
create-default-vpc AWS CLI コマンドを使用できます。このコマンドには、入力パラメータがありません。
aws ec2 create-default-vpc
出力例を次に示します。
{
"Vpc": {
"VpcId": "vpc-3f139646",
"InstanceTenancy": "default",
"Tags": [],
"Ipv6CidrBlockAssociationSet": [],
"State": "pending",
"DhcpOptionsId": "dopt-61079b07",
"CidrBlock": "172.31.0.0/16",
"IsDefault": true
}
}
または、New-EC2DefaultVpc Tools for Windows PowerShell コマンド、または CreateDefaultVpc Amazon EC2 API アクションを使用することもできます。
デフォルトのサブネットを作成する
アベイラビリティーゾーンにデフォルトサブネットがない場合は、これを作成できます。たとえば、デフォルトサブネットを削除したか、AWS に新しく追加されたアベイラビリティーゾーンでデフォルトサブネットがデフォルト VPC 内に自動的に作成されなかった場合、デフォルトサブネットを作成できます。
デフォルトサブネットを作成すると、そのサイズはデフォルト VPC で次に利用可能な連続領域の /20
IPv4 CIDR ブロックになります。以下のルールが適用されます。
-
CIDR ブロックを独自に指定することはできません。
-
削除済みのデフォルトサブネットは復元できません。
-
デフォルトサブネットは、アベイラビリティーゾーンごとに 1 つに限ります。
-
デフォルト以外の VPC でデフォルトサブネットを作成することはできません。
デフォルト VPC のアドレス空間が足りなくてサイズが /20
の CIDR ブロックを作成できない場合、リクエストは失敗します。追加のアドレス空間が必要な場合は、IPv4 CIDR ブロックを VPC に追加することができます。
IPv6 CIDR ブロックをデフォルト VPC に関連付けている場合、新しいデフォルトサブネットは IPv6 CIDR ブロックを自動的に受け取りません。代わりに、デフォルトサブネットを作成した後で IPv6 CIDR ブロックを関連付けることができます。詳細については、「サブネットに IPv6 CIDR ブロックを追加する」を参照してください
AWS Management Console を使用してデフォルトのサブネットを作成することはできません。
AWS CLI を使用してデフォルトのサブネットを作成するには
create-default-subnet AWS CLI コマンドを使用し、サブネットを作成する先のアベイラビリティーゾーンを指定します。
aws ec2 create-default-subnet --availability-zone us-east-2a
出力例を次に示します。
{
"Subnet": {
"AvailabilityZone": "us-east-2a",
"Tags": [],
"AvailableIpAddressCount": 4091,
"DefaultForAz": true,
"Ipv6CidrBlockAssociationSet": [],
"VpcId": "vpc-1a2b3c4d",
"State": "available",
"MapPublicIpOnLaunch": true,
"SubnetId": "subnet-1122aabb",
"CidrBlock": "172.31.32.0/20",
"AssignIpv6AddressOnCreation": false
}
}
AWS CLI を設定する方法の詳細については、AWS Command Line Interface ユーザーガイドを参照してください。
または、New-EC2DefaultSubnet Tools for Windows PowerShell コマンド、または CreateDefaultSubnet Amazon EC2 API アクションを使用することができます。
デフォルトサブネットとデフォルト VPC の削除
デフォルトサブネットやデフォルト VPC は、他のサブネットや VPC と同様、削除できます。ただし、デフォルトサブネットやデフォルト VPC を削除する場合、インスタンスを起動する VPC のサブネットの 1 つを明示的に指定する必要があります。別の VPC がない場合は、サブネットのある VPC を少なくとも 1 つのアベイラビリティーゾーンで作成する必要があります。詳細については、「VPC を作成する」を参照してください。
デフォルト VPC を削除した場合は、新しく作成することができます。詳細については、「デフォルトの VPC を作成する」を参照してください
デフォルトサブネットを削除した場合は、新しく作成できます。詳細については、「デフォルトのサブネットを作成する」を参照してください。新しいデフォルトサブネットが想定どおりに動作することを確認するには、サブネット属性を変更して、そのサブネットで起動されたインスタンスにパブリック IP アドレスを割り当てます。詳細については、「サブネットのパブリック IPv4 アドレス属性を変更する」を参照してください アベイラビリティーゾーンごとに 1 つだけデフォルトサブネットを持つことができます。デフォルト以外の VPC でデフォルトサブネットを作成することはできません。