EC2-Classic
EC2-Classicは、お客様のインスタンスは他のユーザー様と共有する単一のフラットネットワーク内で稼働します。Amazon VPCは、お客様のインスタンスはご自分の AWS アカウントから論理的に独立した仮想プライベートクラウド (VPC) 内で稼働します。
EC2-Classic プラットフォームは、Amazon EC2 のオリジナルリリースで導入されました。2013 年 12 月 4 日以降に AWS アカウントを作成した場合は、EC2-Classic をサポートしていないため、VPC で Amazon EC2 インスタンスを起動する必要があります。
アカウントが EC2-Classic をサポートしていない場合は、デフォルトの VPC が作成されます。デフォルトでは、インスタンスを起動すると、デフォルトの VPC でインスタンスが起動されます。または、デフォルト以外の VPC を作成して、インスタンスを起動するときに VPC を指定することもできます。
サポートされているプラットフォームの検出
Amazon EC2 コンソールを見れば、指定したリージョンでインスタンスを起動可能なプラットフォームや、そのリージョンにデフォルト VPC があるかどうかがわかります。
使用するリージョンがナビゲーションバーで選択されていることを確認してください。Amazon EC2 コンソールダッシュボード上で、[Account Attributes (アカウント属性)] の下にある [Supported Platforms (サポートされるプラットフォーム)] を探します。
EC2-Classic をサポートするアカウント
ダッシュボードの [Account Attributes (アカウント属性)] に以下のように表示される場合は、このリージョンでアカウントが EC2-Classic プラットフォームと VPC の両方をサポートし、デフォルト VPC がないことを示します。

describe-account-attributes コマンドの出力には、supported-platforms
属性の EC2
値と VPC
値が含まれます。
aws ec2 describe-account-attributes --attribute-names supported-platforms
{ "AccountAttributes": [ { "AttributeName": "supported-platforms", "AttributeValues": [ { "AttributeValue": "EC2" }, { "AttributeValue": "VPC" } ] } ] }
VPC が必要なアカウント
ダッシュボードの [Account Attributes (アカウント属性)] に以下のように表示される場合は、アカウントがこのリージョンのインスタンスを起動するために VPC を必要とし、このリージョンの EC2-Classic プラットフォームをサポートしていないこと、識別子
vpc-1a2b3c4d
が付いたデフォルト VPC があることを示します。

指定したリージョンに対する describe-account-attributes コマンドの出力には、supported-platforms
属性の VPC
値のみが含まれています。
aws ec2 describe-account-attributes --attribute-names supported-platforms --region us-east-2
{ "AccountAttributes": [ { "AttributeValues": [ { "AttributeValue": "VPC" } ] "AttributeName": "supported-platforms", } ] }
EC2-Classic で利用可能なインスタンスタイプ
より新しいインスタンスタイプのほとんどには VPC が必要です。EC2-Classic でサポートされているインスタンスタイプは次のタイプのみです。
-
汎用: M1、M3、T1
-
コンピューティングの最適化: C1、C3、CC2
-
メモリの最適化: CR1、M2、R3
-
ストレージの最適化: D2、HS1、I2
-
高速コンピューティング: G2
アカウントで EC2-Classic がサポートされる場合で、デフォルト以外の VPC を作成していない場合、次のいずれかを行って VPC を必要とするインスタンスを起動できます。
-
サブネット ID またはネットワークインターフェイス ID をリクエストで指定して、デフォルト以外の VPC を作成し、VPC 専用インスタンスを起動します。デフォルトの VPC がない場合に、AWS CLI、Amazon EC2 API、または AWS SDK を使用して VPC 専用インスタンスを起動するには、デフォルト以外の VPC を作成する必要があります。
-
Amazon EC2 コンソールを使用して VPC 専用インスタンスを起動します。Amazon EC2 コンソールによって、アカウントにデフォルト以外の VPC が作成され、最初のアベイラビリティーゾーン内のサブネットにインスタンスが起動します。コンソールによって、次の属性を持つ VPC が作成されます。
-
各アベイラビリティーゾーンにパブリック IPv4 アドレス指定属性が
true
に設定されたサブネットが 1 つずつ。これにより、インスタンスがパブリック IPv4 アドレスを受け取ることができるようになります。詳細については、『Amazon VPC ユーザーガイド』の「VPC の IP アドレス指定」を参照してください。 -
インターネットゲートウェイ、およびインターネットゲートウェイに VPC のトラフィックをルーティングするメインルートテーブル。これにより、VPC で起動したインスタンスがインターネット経由で通信できるようになります。詳細については、『Amazon VPC ユーザーガイド』の「インターネットゲートウェイ」を参照してください。
-
VPC のデフォルトのセキュリティグループおよび各サブネットに関連付けられたデフォルトのネットワーク ACL。詳細については、Amazon VPC ユーザーガイド の「VPC のセキュリティグループ」を参照してください。
-
EC2-Classic にその他のリソースがある場合は、それらを VPC に移行する手順を実行することができます。詳細については、「EC2-Classic から VPC への移行」を参照してください。
EC2-Classic と VPC のインスタンスの違い
次の表は、EC2-Classic で起動したインスタンス、デフォルト VPC で起動したインスタンス、非デフォルト VPC で起動したインスタンスの違いをまとめたものです。
特徴 | EC2-Classic | デフォルト VPC | デフォルトではない VPC |
---|---|---|---|
パブリック IPv4 アドレス (Amazon のパブリック IP アドレスプールより) |
インスタンスは、EC2-Classic パブリック IPv4 アドレスプールからパブリック IPv4 アドレスを受け取ります。 |
デフォルトのサブネットで起動されたインスタンスは、起動時に特に IPv4 アドレスを指定しない場合、またはサブネットのパブリック IPv4 アドレス属性を変更しない場合、デフォルトでパブリック IPv4 アドレスを受け取ります。 |
インスタンスは、起動時に特に IPv4 アドレスを指定しない場合、またはサブネットのパブリック IP アドレス属性を変更しない場合、デフォルトではパブリック IPv4 アドレスを受け取りません。 |
プライベート IPv4 アドレス |
インスタンスは、起動するたびに、EC2-Classic のアドレス範囲からプライベート IPv4 アドレスを受け取ります。 |
インスタンスはデフォルト VPC のアドレス範囲から静的プライベート IPv4 アドレスを受け取ります。 |
インスタンスは VPC のアドレス範囲から静的プライベート IPv4 アドレスを受け取ります。 |
複数のプライベート IPv4 アドレス |
1 つのインスタンスには 1 つのプライベート IP アドレスを選択します。複数の IP アドレスはサポートされません。 |
複数のプライベート IPv4 アドレスを 1 つのインスタンスに割り当てることができます。 |
複数のプライベート IPv4 アドレスを 1 つのインスタンスに割り当てることができます。 |
Elastic IP アドレス (IPv4) |
停止すると、Elastic IP とインスタンスの関連付けが解除されます。 |
停止しても、Elastic IP とインスタンスの関連付けが維持されます。 |
停止しても、Elastic IP とインスタンスの関連付けが維持されます。 |
Elastic IP アドレスを関連付ける |
Elastic IP アドレスはインスタンスに関連付けます。 |
Elastic IP アドレスはネットワークインターフェイスのプロパティの 1 つです。Elastic IP アドレス をインスタンスに割り当てるには、そのインスタンスにアタッチされているネットワークインターフェイスを更新します。 |
Elastic IP アドレスはネットワークインターフェイスのプロパティの 1 つです。Elastic IP アドレス をインスタンスに割り当てるには、そのインスタンスにアタッチされているネットワークインターフェイスを更新します。 |
Elastic IP アドレスの関連付けを解除する |
既に別のインスタンスに関連付けられている Elastic IP アドレスを関連付けると、アドレスは自動的に新しいインスタンスに関連付けられます。 |
既に別のインスタンスに関連付けられている Elastic IP アドレスを関連付けると、アドレスは自動的に新しいインスタンスに関連付けられます。 |
Elastic IP アドレスがすでに別のインスタンスに関連付けられている場合は、再接続を許可した場合にのみ成功します。 |
Elastic IP アドレスのタグ付け |
Elastic IP アドレスにタグを適用することはできません。 |
Elastic IP アドレスにタグを適用することができます。 |
Elastic IP アドレスにタグを適用することができます。 |
DNS ホスト名 |
DNS ホスト名はデフォルトで有効化されています。 |
DNS ホスト名はデフォルトで有効化されています。 |
DNS ホスト名はデフォルトで無効化されています。 |
セキュリティグループ |
セキュリティグループは、その他の AWS アカウントに属するセキュリティグループを参照できます。 |
セキュリティグループは、VPC または VPC ピアリング接続のピア VPC のセキュリティグループを参照できます。 |
セキュリティグループは、VPC のみのセキュリティグループを参照できます。 |
セキュリティグループの関連付け |
実行中のインスタンスのセキュリティグループは変更できません。割り当て済みのセキュリティグループのルールを変更するか、インスタンスを新しいインスタンスと置き換える必要があります (置き換えるには、まずインスタンスから AMI を作成し、この AMI から、目的のセキュリティグループを使用して新しいインスタンスを起動し、元のインスタンスから Elastic IP アドレスに関連付けられているものをすべて解除し、新しいインスタンスに関連付け、その後、元のインスタンスを終了します)。 |
最大 5 つのセキュリティグループを 1 つのインスタンスに割り当てることができます。 セキュリティグループをインスタンスに割り当てられるのは、インスタンスの起動時と実行中です。 |
最大 5 つのセキュリティグループを 1 つのインスタンスに割り当てることができます。 セキュリティグループをインスタンスに割り当てられるのは、インスタンスの起動時と実行中です。 |
セキュリティグループのルール |
インバウンドトラフィックのみにルールを追加できます。 |
インバウンドトラフィックとアウトバウンドトラフィックのルールを追加できます。 |
インバウンドトラフィックとアウトバウンドトラフィックのルールを追加できます。 |
テナンシー |
インスタンスは共有するハードウェアで実行されます。 |
共有ハードウェアまたはシングルテナントハードウェアでインスタンスを実行できます。 |
共有ハードウェアまたはシングルテナントハードウェアでインスタンスを実行できます。 |
インターネットにアクセスする | インスタンスはインターネットにアクセスできます。インスタンスは自動的にパブリック IP アドレスを受信し、AWS ネットワークエッジを通してインターネットに直接アクセスできます。 | デフォルトでは、インスタンスはインターネットにアクセスできます。インスタンスはデフォルトでパブリック IP アドレスを受け取ります。インターネットゲートウェイはデフォルトの VPC にアタッチされ、デフォルトのサブネットにはインターネットゲートウェイへのルートがあります。 | デフォルトでは、インスタンスはインターネットにアクセスできません。インスタンスはデフォルトでパブリック IP アドレスを受け取りません。VPC は、作成方法によってはインターネットゲートウェイを持つ場合があります。 |
IPv6 アドレス指定 | IPv6 アドレス指定はサポートされていません。IPv6 アドレスをインスタンスに割り当てることはできません。 | オプションで、VPC に IPv6 CIDR ブロックを関連付け、VPC のインスタンスに IPv6 アドレスを割り当てることができます。 | オプションで、VPC に IPv6 CIDR ブロックを関連付け、VPC のインスタンスに IPv6 アドレスを割り当てることができます。 |
EC2-Classic のセキュリティグループ
EC2-Classic を使用している場合は、EC2-Classic 用に作成したセキュリティグループを使用する必要があります。EC2-Classic でインスタンスを起動する場合は、インスタンスと同じリージョンのセキュリティグループを指定する必要があります。EC2-Classic でインスタンスを起動する場合は、VPC 用に作成したセキュリティグループは指定できません。
EC2-Classic でインスタンスを起動した後でセキュリティグループを変更することはできません。ただし、セキュリティグループルールの追加または削除は可能です。これらの変更は、セキュリティグループに関連付けられているすべてのインスタンスに短時間で自動的に適用されます。
AWS アカウントには、EC2-Classic のリージョンごとにデフォルトのセキュリティグループが自動的に設定されます。デフォルトセキュリティグループを削除しようとした場合、次のエラーが発生します: Client.InvalidGroup.Reserved: The security group 'default' is reserved.
カスタムセキュリティグループを作成できます。セキュリティグループ名はリージョンのアカウント内で一意である必要があります。EC2-Classic で使用するセキュリティグループを作成するには、VPC に [No VPC (VPC なし)]を選択します。
デフォルトおよびカスタムセキュリティグループにインバウンドルールを追加できます。EC2-Classic セキュリティグループのアウトバウンドルールは変更できません。セキュリティグループルールを作成するときは、発信元または宛先と同じリージョン内の
EC2-Classic に別のセキュリティグループを使用できます。別の AWS アカウントのセキュリティグループを指定するには、111122223333/sg-edcd9784
のように、AWS アカウント ID を接頭辞として追加します。
EC2-Classic では、アカウントごとに各リージョンに最大 500 のセキュリティグループを持つことができます。最大 100 のルールをセキュリティグループに追加できます。インスタンスごとに最大 800 のセキュリティグループルールを設定できます。これは、セキュリティグループごとのルールとインスタンスごとのセキュリティグループの倍数として計算されます。セキュリティグループルールで他のセキュリティグループを参照する場合は、22 文字以下のセキュリティグループ名を使用することをお勧めします。
IP アドレスの割り当てと DNS
Amazon は、Amazon が提供する IPv4 DNS ホスト名を解決する DNS サーバーを IPv4 アドレスに提供します。EC2-Classic で、Amazon
DNS サーバーは 172.16.0.23
にあります。
EC2-Classic でカスタムファイアウォール構成を作成した場合、Amazon DNS サーバーのアドレスのポート 53 (DNS) からのインバウンドトラフィック (送信先はエフェメラル範囲のポート) を許可するルールをファイウォールに作成する必要があります。そうしない場合、インスタンスからの内部 DNS 解決に失敗します。ファイアウォールが自動的に DNS クエリレスポンスを自動的に許可しない場合は、Amazon DNS サーバーの IP アドレスからのトラフィックを許可する必要があります。Amazon DNS サーバーの IP アドレスを取得するには、インスタンス内から以下のコマンドを使用します。
ipconfig /all | findstr /c:"DNS Servers"
Elastic IP アドレス
アカウントで EC2-Classic がサポートされている場合、EC2-Classic プラットフォームで使用する Elastic IP アドレスのプールと、VPC で使用する別のプールがあります。VPC で使用するために割り当てた Elastic IP アドレスを EC2-Classic のインスタンスに関連付けることや、その逆を行うことはできません。ただし、EC2-Classic プラットフォームで使用するために割り当てた Elastic IP アドレスを VPC での使用に移行することはできます。Elastic IP アドレスを別のリージョンに移行することはできません。
コンソールを使用して、EC2-Classic で使用する Elastic IP アドレスを割り当てるには
-
https://console.aws.amazon.com/ec2/
で Amazon EC2 コンソールを開きます。 -
ナビゲーションペインで [Elastic IP] を選択します。
-
[Allocate new address] を選択します。
-
[Classic] を選択し、次に [Allocate] を選択します。確認画面を閉じます。
EC2-Classic からの Elastic IP アドレスの移行
アカウントで EC2-Classic がサポートされている場合、EC2-Classic プラットフォームで使用するために割り当てた Elastic IP アドレスを、同じリージョン内の VPC での使用に移行することができます。これは、リソースを EC2-Classic から VPC に移行するのに役立ちます。たとえば、VPC で新しいウェブサーバーを起動した後、EC2-Classic でウェブサーバーに使用していたのと同じ Elastic IP アドレスを新しい VPC ウェブサーバーに使用できます。
Elastic IP アドレスを VPC に移行した後は、EC2-Classic で使用することはできません。ただし、必要に応じて EC2-Classic に復元することができます。もともと VPC で使用するために割り当てられていた Elastic IP アドレスを EC2-Classic に移行することはできません。
Elastic IP アドレスを移行する場合、インスタンスに関連付けないでください。インスタンスからの Elastic IP アドレスの関連付け解除の詳細については、「Elastic IP アドレスの関連付けを解除する」を参照してください。
アカウントに設定できる数であれば、EC2-Classic Elastic IP アドレスはいくつでも移行できます。ただし、Elastic IP アドレスを移行すると、VPC の Elastic IP アドレス制限にカウントされます。Elastic IP アドレスを移行した結果として制限を超過する場合は、移行できません。同様に、Elastic IP アドレスを EC2-Classic に復元すると、EC2-Classic の Elastic IP アドレス制限にカウントされます。詳細については、「Elastic IP アドレスの制限」を参照してください。
24 時間以内にアカウントに割り当てられた Elastic IP アドレスを移行することはできません。
Amazon EC2 コンソールまたは Amazon VPC コンソールを使用して、EC2-Classic から Elastic IP アドレスを移動できます。このオプションは、アカウントで EC2-Classic をサポートしている場合にのみ使用できます。
Amazon EC2 コンソールを使用して Elastic IP アドレスを移動するには
-
https://console.aws.amazon.com/ec2/
で Amazon EC2 コンソールを開きます。 -
ナビゲーションペインで [Elastic IP] を選択します。
-
Elastic IP アドレスを選択し、[Actions]、[Move to VPC scope] の順に選択します。
-
確認ダイアログボックスで、[Move Elastic IP] を選択します。
Amazon EC2 コンソールまたは Amazon VPC コンソールを使用して Elastic IP アドレスを EC2-Classic に復元できます。
Amazon EC2 コンソールを使用して Elastic IP アドレスを EC2-Classic に復元するには
-
https://console.aws.amazon.com/ec2/
で Amazon EC2 コンソールを開きます。 -
ナビゲーションペインで [Elastic IP] を選択します。
-
Elastic IP アドレスを選択し、[Actions]、[Restore to EC2 scope] の順に選択します。
-
確認ダイアログボックスで [Restore] を選択します。
Elastic IP アドレスを移動または復元するコマンドを実行すると、Elastic IP アドレスの移行プロセスには数分かかる場合があります。Elastic IP アドレスがまだ移動中であるか、移動が完了したかを確認するには、describe-moving-addresses コマンドを使用します。
Elastic IP アドレスを移動すると、[Elastic IPs] ページの [Allocation ID] フィールドで割り当て ID を確認できます。
Elastic IP アドレスの移動中状態が 5 分を超えた場合は、プレミアムサポート
コマンドラインを使用して Elastic IP アドレスを移動するには
次のコマンドの 1 つを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセス を参照してください。
-
move-address-to-vpc (AWS CLI)
-
Move-EC2AddressToVpc (AWS Tools for Windows PowerShell)
コマンドラインを使用して Elastic IP アドレスを EC2-Classic に復元するには
次のコマンドの 1 つを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセス を参照してください。
-
restore-address-to-classic (AWS CLI)
-
Restore-EC2AddressToClassic (AWS Tools for Windows PowerShell)
コマンドラインを使用してアドレスの移動ステータスを表示するには
次のコマンドの 1 つを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセス を参照してください。
-
describe-moving-addresses (AWS CLI)
-
Get-EC2Address (AWS Tools for Windows PowerShell)
EC2-Classic と VPC 間でのリソースの共有およびアクセス
AWS アカウントのリソースと機能は、ClassicLink などを通じて、EC2-Classic と VPC のプラットフォーム間で共有できます。詳細については、「ClassicLink」を参照してください。
アカウントが EC2-Classic をサポートしている場合、EC2-Classic 用にリソースの設定を行った場合があります。EC2-Classic から VPC に移行する場合は、VPC 内でこれらのリソースを再作成する必要があります。EC2-Classic から VPC への移行に関する詳細については、「EC2-Classic から VPC への移行」を参照してください。
以下のリソースは、EC2-Classic と VPC の間で共有したりアクセスすることができます。
リソース | コメント |
---|---|
AMI | |
バンドルタスク | |
EBS ボリューム | |
Elastic IP アドレス (IPv4) |
Elastic IP アドレスを EC2-Classic から VPC に移行できます。もともと VPC で使用するために割り当てられていた Elastic IP アドレスを EC2-Classic に移行することはできません。詳細については、「EC2-Classic からの Elastic IP アドレスの移行」を参照してください。 |
インスタンス |
EC2-Classic インスタンスは、パブリック IPv4 アドレスを使用して VPC 内のインスタンスと通信できます。または、ClassicLink を使用して、プライベート IPv4 アドレス経由の通信を有効にすることができます。 インスタンスを EC2-Classic から VPC に移行することはできません。しかし、アプリケーションを EC2-Classic のインスタンスから VPC のインスタンスに移行することはできます。詳細については、「EC2-Classic から VPC への移行」を参照してください。 |
キーペア | |
ロードバランサー |
ClassicLink を使用している場合、ロードバランサーのあるリンクされた EC2-Classic インスタンスを VPC に登録することができます。こうしてこの VPC はそのインスタンスと同じアベイラビリティーゾーンにサブネットがあることになります。 ロードバランサーを EC2-Classic から VPC に移行することはできません。EC2-Classic でロードバランサーがある VPC にインスタンスを登録することはできません。 |
配置グループ | |
リザーブドインスタンス |
リザーブドインスタンス のネットワークプラットフォームを EC2-Classic から VPC に変更できます。詳細については、「リザーブドインスタンス の変更」を参照してください。 |
セキュリティグループ |
リンクされた EC2-Classic インスタンスは、VPC からのトラフィックを監視するために、ClassicLink を通して VPC のセキュリティクループを使用することができます。VPC インスタンスは、EC2-Classic セキュリティグループを使用できません。 EC2-Classic から VPC にセキュリティグループを移行することはできません。EC2-Classic のセキュリティグループのルールを VPC のセキュリティグループにコピーすることはできます。詳細については、「セキュリティグループの作成」を参照してください。 |
スナップショット |
EC2-Classic と VPC の間で以下のリソースを共有したり、移動することはできません。
-
スポットインスタンス