

# VPC ピアリング接続
<a name="working-with-vpc-peering"></a>

VPC ピアリングを使用すると、同じまたは異なる AWS リージョンの 2 つの VPC を接続できます。この結果、ある VPC のインスタンスは、すべてが同じネットワークの一部であるかのように、他の VPC のインスタンスと通信できます。

VPC ピアリングは、プライベート IPv4 アドレスまたは IPv6 アドレスを使用して、2 つの VPC 間に直接ネットワークルートを作成します。接続された VPC 間で送信されるトラフィックは、インターネット、VPN 接続、または AWS Direct Connect 接続を経由しません。そのため、VPC ピアリングは、データベースやウェブサーバーなどのリソースを VPC の境界を越えて共有するための安全な方法になります。

VPC ピアリング接続を確立するには、1 つの VPC からピアリング接続リクエストを作成し、他の VPC の所有者がそのリクエストを承認します。接続が確立されたら、ルートテーブルを更新して VPC 間でトラフィックをルーティングできます。この結果、一方の VPC のインスタンスが他方の VPC のリソースにアクセスできるようになります。

VPC ピアリングは、マルチ VPC アーキテクチャを構築し、AWS において組織の境界を越えてリソースを共有するための重要なツールです。VPN やその他のネットワークサービスの設定における複雑さのない、VPC を接続するためのシンプルで低レイテンシーの方法が提供されます。

VPC ピアリング接続を作成および操作するには、次の手順を使用します。

**Topics**
+ [VPC ピアリング接続を作成する](create-vpc-peering-connection.md)
+ [VPC ピアリング接続の受諾または拒否](accept-vpc-peering-connection.md)
+ [VPC ピアリング接続のルートテーブルを更新する](vpc-peering-routing.md)
+ [セキュリティグループの更新とピアセキュリティグループの参照](vpc-peering-security-groups.md)
+ [VPC ピアリング接続の DNS 解決を有効にする](vpc-peering-dns.md)
+ [VPC ピアリング接続を削除する](delete-vpc-peering-connection.md)
+ [VPC ピアリング接続のトラブルシューティング](troubleshoot-vpc-peering-connections.md)

# VPC ピアリング接続を作成する
<a name="create-vpc-peering-connection"></a>

VPC ピアリング接続を作成するには、最初に別の VPC とのピアリング接続リクエストを作成します。リクエストをアクティブ化するには、アクセプタ VPC の所有者がリクエストを承認する必要があります。次のピアリング接続がサポートされています。
+ 同じアカウントの同じリージョンにある VPC 間
+ 同じアカウント内の異なるリージョンにある VPC 間
+ 異なるアカウントの同じリージョンにある VPC 間
+ 異なるアカウントの異なるリージョンにある VPC 間

リージョン間 VPC ピアリング接続の場合、リクエストはリクエスタ VPC のリージョンから行う必要があり、リクエストはアクセプタ VPC のリージョンから受け入れられる必要があります。詳細については、「[VPC ピアリング接続の受諾または拒否](accept-vpc-peering-connection.md)」を参照してください。

**Topics**
+ [前提条件](#vpc-peering-connection-prerequisites)
+ [コンソールを使用してピアを作成する](#create-vpc-peering-connection-console)
+ [コマンドラインを使用してピアリング接続を作成する](#create-vpc-peering-connection-command-line)

## 前提条件
<a name="vpc-peering-connection-prerequisites"></a>
+ VPC ピアリング接続の[制限](vpc-peering-basics.md#vpc-peering-limitations)を確認します。
+ VPC に重複している IPv4 CIDR ブロックがないことを確認する 重複している場合、VPC ピアリング接続のステータスが直ちに `failed` に移行します。この制限は、VPC に固有の IPv6 CIDR ブロックがあっても適用されます。

## コンソールを使用してピアを作成する
<a name="create-vpc-peering-connection-console"></a>

VPC ピアリング接続を作成するには、次の手順を実行します。

**コンソールを使用してピアリング接続を作成するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Peering Connections]** (ピアリング接続) をクリックします。

1. **[Create Peering Connection]** (ピアリング接続の作成) をクリックします。

1. (オプション) **[名前]** に、VPC ピアリング接続の名前を指定します。これにより、Name のキーと指定した値を持つタグが作成されます。

1. **[VPC ID (リクエスタ)]** で、現在のアカウントから VPC を選択します。

1. **[ピアリング接続するもうひとつの VPC を選択]** で、次の操作を行います。

   1. **[アカウント]** で、別のアカウントの VPC とピア接続するには、**[別のアカウント]** を選択し、アカウント ID を入力します。それ以外の場合は、**[マイアカウント]** を保持します。

   1. **[リージョン]** で、別のリージョンの VPC とピア接続するには、**[別のリージョン]** をクリックしてリージョンを選択します。それ以外の場合は、**[このリージョン]** を保持します。

   1. **VPC ID (アクセプタ)** で、指定されたアカウントとリージョンから VPC を選択します。

1. (オプション) タグを追加するには、**[Add new tag]** (新しいタグを追加) を選択し、タグキーとタグ値を入力します。

1. **[Create Peering Connection]** (ピアリング接続の作成) をクリックします。

1. アクセプタアカウントの所有者はピアリング接続を承認する必要があります。詳細については、「[VPC ピアリング接続の受諾または拒否](accept-vpc-peering-connection.md)」を参照してください。

1. 両方の VPC のルートテーブルを更新して、それらの間の通信を有効にします。詳細については、「[VPC ピアリング接続のルートテーブルを更新する](vpc-peering-routing.md)」を参照してください。

## コマンドラインを使用してピアリング接続を作成する
<a name="create-vpc-peering-connection-command-line"></a>

次のコマンドを使用して VPC ピアリング接続を作成できます。
+ [create-vpc-peering-connection](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-vpc-peering-connection.html)（）AWS CLI」
+ [New-EC2VpcPeeringConnection](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2VpcPeeringConnection.html)（）AWS Tools for Windows PowerShell」

# VPC ピアリング接続の受諾または拒否
<a name="accept-vpc-peering-connection"></a>

`pending-acceptance` 状態にある VPC ピアリング接続は、有効化されるアクセプタ VPC の所有者が承認する必要があります。`Deleted` ピア接続状態の詳細については、「[VPC ピアリング接続のライフサイクル](vpc-peering-basics.md#vpc-peering-lifecycle)」を参照してください。別の AWS アカウントに送信した VPC ピアリング接続リクエストを承認することはできません。同じ AWS アカウント内の VPC 間で VPC ピアリング接続を作成するには、リクエストを自分で作成し承認することができます。

受信した VPC ピアリング接続リクエストで `pending-acceptance` 状態にあるものを拒否できます。信頼できる既知の AWS アカウント からの VPC ピアリング接続のみを承認するようにしてください。不要なリクエストは拒否できます。`Rejected` ピア接続状態の詳細については、「[VPC ピアリング接続のライフサイクル](vpc-peering-basics.md#vpc-peering-lifecycle)」を参照してください。

**重要**  
不明な AWS アカウントからの VPC ピアリング接続は承認しないでください。悪意のあるユーザーが VPC ピアリング接続リクエストを送信して、VPC に対して不正なネットワークアクセスを行なう場合があります。これは、ピアフィッシングと呼ばれます。AWS アカウントまたは VPC についての情報にリクエスタがアクセスするリスクなしで、不要な VPC ピアリング接続リクエストを安全に拒否できます。詳細については、「[VPC ピアリング接続の受諾または拒否](#accept-vpc-peering-connection)」を参照してください。リクエストを無視して有効期限が切れるのを待つこともできます。デフォルトでは、7 日後にリクエストの期限が切れます。

**コンソールを使用してピアリング接続を承認または拒否するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. リージョンセレクタを使用して、アクセプタ VPC のリージョンを選択します。

1. ナビゲーションペインで、**[Peering Connections]** (ピアリング接続) をクリックします。

1. ピアリング接続を拒否するには、VPC ピアリング接続を選択し、**[アクション]**、**[リクエストを拒否]** の順に選択します。確認を求めるメッセージが表示されたら、**[リクエストを拒否]** を選択します。

1. ピアリング接続を承諾するには、保留中の VPC ピアリング接続 (ステータスは `pending-acceptance`) を選択し、**[アクション]**、**[リクエストを承諾]** を選択します。ピアリング接続のライフサイクル状態の詳細については、「[VPC ピアリング接続のライフサイクル](vpc-peering-basics.md#vpc-peering-lifecycle)」を参照してください。

   保留中の VPC ピアリング接続がない場合は、アクセプタ VPC のリージョンが選択されていることを確認します。

1. 確認を求められたら、**[リクエストの承諾]** を選択します。

1. **[ルートテーブルを今すぐ変更]** を選択して VPC ルートテーブルにルートを追加すると、ピアリング接続を介してトラフィックを送受信できるようになります。詳細については、「[VPC ピアリング接続のルートテーブルを更新する](vpc-peering-routing.md)」を参照してください。

**コマンドラインを使用してピアリング接続を受け入れるには**
+ [accept-vpc-peering-connection](https://docs.aws.amazon.com/cli/latest/reference/ec2/accept-vpc-peering-connection.html)（）AWS CLI」
+ [Approve-EC2VpcPeeringConnection](https://docs.aws.amazon.com/powershell/latest/reference/items/Approve-EC2VpcPeeringConnection.html)（）AWS Tools for Windows PowerShell」

**コマンドラインを使用してピアリング接続を拒否するには**
+ [reject-vpc-peering-connection](https://docs.aws.amazon.com/cli/latest/reference/ec2/reject-vpc-peering-connection.html)（）AWS CLI」
+ [Deny-EC2VpcPeeringConnection](https://docs.aws.amazon.com/powershell/latest/reference/items/Deny-EC2VpcPeeringConnection.html)（）AWS Tools for Windows PowerShell」

# VPC ピアリング接続のルートテーブルを更新する
<a name="vpc-peering-routing"></a>

ピア接続先 VPC 内のインスタンス間のプライベート IPv4 トラフィックを有効にするには、両方のインスタンスのサブネットに関連付けられたルートテーブルにルートを追加する必要があります。このルートの送信先は、ピア VPC の CIDR ブロック (または CIDR ブロックの一部) であり、ターゲットは VPC ピアリング接続の ID です。詳細については、*Amazon VPC ユーザーガイド*の「[ルートテーブルを設定する](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html)」を参照してください。

次に、2 つのピア接続先 VPC (VPC A と VPC B) のインスタンス間の通信を可能にするルートテーブルの例を示します。各テーブルには、ローカルルートと、ピア VPC のトラフィックを VPC ピアリング接続に送信するルートがあります。

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/vpc/latest/peering/vpc-peering-routing.html)

同様に、VPC ピアリング接続の VPC に関連付けられている IPv6 CIDR ブロックがある場合は、Pv6 を介したピア VPC との通信を可能にするルートを追加できます。

VPC ピアリング接続でサポートされているルートテーブルのその他の情報については、「[一般的な VPC ピアリング接続設定](peering-configurations.md)」を参照してください。

**考慮事項**
+ IPv4 CIDR ブロックが重複または一致する複数の VPC にピアリング接続された VPC がある場合は、自分の VPC から間違った VPC にレスポンストラフィックを送信しないようにルートテーブルが設定されていることを確認します。AWS は現在、パケットの送信元 IP を確認してリプライパケットを送信元にルーティングするユニキャストリバースパス転送 (uRPF) を VPC ピアリング接続でサポートしていません。詳細については、「[レスポンストラフィックのルーティング](peering-configurations-partial-access.md#peering-incorrect-response-routing)」を参照してください。
+ アカウントにはルートテーブルごとに追加できるエントリ数に[クォータ](https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html)があります。VPC の VPC ピアリング接続数が 1 つのルートテーブルのルートテーブルエントリクォータを超える場合は、それぞれがカスタムルートテーブルに関連付けられた複数のサブネットの使用を検討してください。
+ `pending-acceptance` 状態にある VPC ピアリング接続のルートを追加できます。ただし、ルートには `blackhole` 状態があり、VPC ピアリング接続が `active` 状態になるまで有効になりません。

**VPC ピアリング接続に IPv4 ルートを追加するには**

1. Amazon VPC コンソール ([https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/)) を開きます。

1. ナビゲーションペインで、**[Route tables]** (ルートテーブル) を選択します。

1. インスタンスが存在するサブネットに関連付けられたルートテーブルの横にあるチェックボックスをオンにします。

   サブネットを明示的に関連付けられたルートテーブルがない場合、VPC メインルートテーブルは暗示的にそのサブネットに関連付けられます。

1. [**アクション**]、[**ポリシーの編集**] の順に選択します。

1. [**Add Rule (ルートの追加)**] を選択します。

1. [**Destination**] に、VPC ピアリング接続のネットワークトラフィックを誘導する必要のある IPv4 アドレスの範囲を入力します。ピア VPC の IPv4 CIDR ブロック全体、特定の範囲、または通信するインスタンスの IP アドレスのような個別の IPv4 アドレスを指定できます。例えば、ピア VPC の CIDR ブロックが `10.0.0.0/16` の場合、`10.0.0.0/24` の部分、または特定の IP アドレス `10.0.0.7/32` を指定できます。

1. **[ターゲット]** に VPC ピアリング接続を選択します。

1. **[Save changes]** (変更の保存) をクリックします。

ピア VPC の所有者は、VPC ピアリング接続を介して VPC にトラフィックを戻すためのルートを追加するために、これらのステップを完了する必要があります。

複数の AWS リージョンに IPv6 アドレスを使用するリソースがある場合は、リージョン間ピアリング接続を作成できます。その後、リソース間の通信用に IPv6 ルートを追加できます。

**VPC ピアリング接続に IPv6 ルートを追加するには**

1. Amazon VPC コンソール ([https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/)) を開きます。

1. ナビゲーションペインで、**[Route tables]** (ルートテーブル) を選択します。

1. インスタンスが存在するサブネットに関連付けられたルートテーブルの横にあるチェックボックスをオンにします。
**注記**  
そのサブネットに関連付けられたルートテーブルがない場合は、VPC のメインルートテーブルを選択します。サブネットがこのルートをデフォルトで使用するためです。

1. [**アクション**]、[**ポリシーの編集**] の順に選択します。

1. [**Add Rule (ルートの追加)**] を選択します。

1. [**Destination**] に、ピア VPC の IPv6 アドレス範囲を入力します。ピア VPC の IPv6 CIDR ブロック全体、特定の範囲、または個別の IPv6 アドレスを指定できます。例えば、ピア VPC の CIDR ブロックが `2001:db8:1234:1a00::/56` の場合、`2001:db8:1234:1a00::/64` の部分、または特定の IP アドレス `2001:db8:1234:1a00::123/128` を指定できます。

1. **[ターゲット]** に VPC ピアリング接続を選択します。

1. **[Save changes]** (変更の保存) をクリックします。

詳細については、*Amazon VPC ユーザーガイドの「[ルートテーブル](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html)」を参照してください*。

**コマンドラインを使用してルートを追加または置換するには**
+ [create-route](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-route.html) および [replace-route](https://docs.aws.amazon.com/cli/latest/reference/ec2/replace-route.html)(AWS CLI)
+ [New-EC2Route](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Route.html) および [Set-EC2Route](https://docs.aws.amazon.com/powershell/latest/reference/items/Set-EC2Route.html)(AWS Tools for Windows PowerShell)

# セキュリティグループの更新とピアセキュリティグループの参照
<a name="vpc-peering-security-groups"></a>

VPC セキュリティグループのインバウンドルールまたはアウトバウンドルールを更新して、ピアリング接続された VPC のセキュリティグループを参照できます。これにより、トラフィックはピアリング接続された VPC の参照セキュリティグループに関連付けられたインスタンスに出入りできます。

**注記**  
ピア VPC のセキュリティグループは、コンソールで選択できるものとして表示されません。

**要件**
+ ピア VPC でセキュリティグループを参照するには、VPC ピアリング接続の状態が `active` である必要があります。
+ ピア VPC はアカウントの VPC とするか、別の AWS アカウントの VPC とすることができます。別の AWS アカウントにあるが、同じリージョンに存在するセキュリティグループを参照するには、セキュリティグループの ID を持つアカウント番号を含めます。例えば、`123456789012/sg-1a2b3c4d`。
+ 別のリージョンにあるピア VPC のセキュリティグループは参照できません。代わりに、ピア VPC の CIDR ブロックを使用します。
+ ミドルボックスアプライアンスを介して異なるサブネット内の 2 つのインスタンス間のトラフィックを転送するようにルートを設定するには、両方のインスタンスのセキュリティグループでインスタンス間のトラフィックがフローできるようにする必要があります。各インスタンスのセキュリティグループは、他のインスタンスのプライベート IP アドレス、または他のインスタンスを含むサブネットの CIDR 範囲を送信元として参照する必要があります。他のインスタンスのセキュリティグループを送信元として参照する場合、インスタンス間のトラフィックは許可されません。

**コンソールを使用してセキュリティグループルールを更新するには**

1. Amazon VPC コンソール ([https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/)) を開きます。

1. ナビゲーションペインで、[**セキュリティグループ**] を選択します。

1. セキュリティグループを選択し、次のいずれかを実行します。
   + インバウンドルールを変更するには、**[アクション]**、**[インバウンドルールを編集]** の順に選択します。
   + アウトバウンドルールを変更するには、**[アクション]**、**[アウトバウンドルールを編集]** の順に選択します。

1. ルールを追加するには、**[ルールの追加]** を選択し、タイプ、プロトコル、ポート範囲を指定します。**[送信元]** (インバウンドルール) または **[送信先]** (アウトバウンドルール) で、次のいずれかの操作を行います。
   + 同じアカウントとリージョンのピア VPC の場合は、セキュリティグループの ID を入力します。
   + 別のアカウントにあるが、同じリージョンに存在するピア VPC の場合は、アカウント ID とセキュリティグループ ID をスラッシュで区切って入力します (例: `123456789012/sg-1a2b3c4d`)。
   + 別のリージョンに存在するピア VPC の場合は、ピア VPC の CIDR ブロックを入力します。

1. 既存のルールを編集するには、値 (ソースや説明など) を変更します。

1. ルールを削除するには、ルールの隣にある **[削除]** を選択します。

1. **[Save Rules]** (ルールの保存) を選択してください。

**コマンドラインを使用してインバウンドルールを更新するには**
+ [authorize-security-group-ingress](https://docs.aws.amazon.com/cli/latest/reference/ec2/authorize-security-group-ingress.html) および [revoke-security-group-ingress](https://docs.aws.amazon.com/cli/latest/reference/ec2/revoke-security-group-ingress.html) (AWS CLI)
+ [Grant-EC2SecurityGroupIngress](https://docs.aws.amazon.com/powershell/latest/reference/items/Grant-EC2SecurityGroupIngress.html) および [Revoke-EC2SecurityGroupIngress](https://docs.aws.amazon.com/powershell/latest/reference/items/Revoke-EC2SecurityGroupIngress.html) (AWS Tools for Windows PowerShell)

例えば、ピア VPC の `sg-bbbb2222` からの HTTP 経由のインバウンドアクセスを許可するようにセキュリティグループ `sg-aaaa1111` を更新するには、次のコマンドを使用します。ピア VPC が同じリージョンに存在するが、別のアカウントにある場合は、`--group-owner` *aws-account-id* を追加します。

```
aws ec2 authorize-security-group-ingress --group-id sg-aaaa1111 --protocol tcp --port 80 --source-group sg-bbbb2222
```

**コマンドラインを使用してアウトバウンドルールを更新するには**
+ [authorize-security-group-egress](https://docs.aws.amazon.com/cli/latest/reference/ec2/authorize-security-group-egress.html) および [revoke-security-group-egress](https://docs.aws.amazon.com/cli/latest/reference/ec2/revoke-security-group-egress.html) (AWS CLI)
+ [Grant-EC2SecurityGroupEgress](https://docs.aws.amazon.com/powershell/latest/reference/items/Grant-EC2SecurityGroupEgress.html) および [Revoke-EC2SecurityGroupEgress](https://docs.aws.amazon.com/powershell/latest/reference/items/Revoke-EC2SecurityGroupEgress.html) (AWS Tools for Windows PowerShell)

セキュリティグループルールを更新したら、[describe-security-groups](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-security-groups.html) コマンドを使って、セキュリティグループルールで参照されるセキュリティグループを確認します。

## 参照されるセキュリティグループを特定する
<a name="vpc-peering-referenced-groups"></a>

セキュリティグループがピア VPC のセキュリティグループのルールで参照されているかどうかを確認するには、アカウントの 1 つ以上のセキュリティグループに対して、次のいずれかのコマンドを使用します。
+ [describe-security-group-references](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-security-group-references.html) (AWS CLI)
+ [Get-EC2SecurityGroupReference](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2SecurityGroupReference.html) (AWS Tools for Windows PowerShell)

次の例では、応答はセキュリティグループ `sg-bbbb2222` が VPC のセキュリティグループ `vpc-aaaaaaaa` で参照されていることを示します。

```
aws ec2 describe-security-group-references --group-id sg-bbbb2222
```

```
{    
  "SecurityGroupsReferenceSet": [
    {
      "ReferencingVpcId": "vpc-aaaaaaaa",
      "GroupId": "sg-bbbb2222",
      "VpcPeeringConnectionId": "pcx-b04deed9"       
    }   
  ]
}
```

VPC ピアリング接続が削除されたか、またはピア VPC の所有者が、参照されたセキュリティグループを削除した場合、セキュリティグループルールは古くなります。

## 古くなったセキュリティグループルールを表示および削除する
<a name="vpc-peering-stale-groups"></a>

古いセキュリティグループルールとは、同じ VPC またはピア VPC 内の削除されたセキュリティグループを参照するルール、または VPC ピアリング接続が削除されたピア VPC のセキュリティグループを参照するルールのことです。セキュリティグループルールは古くなっても、セキュリティグループから自動的に削除されません。手動で削除する必要があります。VPC ピアリング接続が削除されたためにセキュリティグループルールが古くなった場合、同じ VPC で新しい VPC ピアリング接続を作成すると、そのルールは古くなったとマークされなくなります。

Amazon VPC コンソールを使用して、VPC の古くなったセキュリティグループルールを表示および削除できます。

**古くなったセキュリティグループルールを表示および削除するには**

1. Amazon VPC コンソール ([https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/)) を開きます。

1. ナビゲーションペインで、**[Security Groups]** (セキュリティグループ) を選択します。

1. [**Action**] (アクション)、[**Manage stale rules**] (古いルールの管理) の順に選択します。

1. **VPC** で古いルールを持つ VPC を選択します。

1. [**Edit**] を選択します。

1. 削除するルールの横にある [**Delete**] (削除) ボタンを選択します。[**変更のプレビュー**]、[**ルールの保存**] を選択します。

**コマンドラインを使用して古いセキュリティグループルールを記述するには**
+ [describe-stale-security-groups](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-stale-security-groups.html) (AWS CLI)
+ [Get-EC2StaleSecurityGroup](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2StaleSecurityGroup.html) (AWS Tools for Windows PowerShell)

次の例では、VPC A `(vpc-aaaaaaaa`) および VPC B がピアリング接続され、VPC ピアリング接続は削除されています。VPC A のセキュリティグループ `sg-aaaa1111` は VPC B の `sg-bbbb2222` を参照します。VPC に対して `describe-stale-security-groups` コマンドを実行すると、応答では、セキュリティグループ `sg-aaaa1111` に、`sg-bbbb2222` を参照する古くなった SSH ルールがあることが示されます。

```
aws ec2 describe-stale-security-groups --vpc-id vpc-aaaaaaaa
```

```
{
    "StaleSecurityGroupSet": [
        {
            "VpcId": "vpc-aaaaaaaa", 
            "StaleIpPermissionsEgress": [], 
            "GroupName": "Access1", 
            "StaleIpPermissions": [
                {
                    "ToPort": 22, 
                    "FromPort": 22, 
                    "UserIdGroupPairs": [
                        {
                            "VpcId": "vpc-bbbbbbbb", 
                            "PeeringStatus": "deleted", 
                            "UserId": "123456789101", 
                            "GroupName": "Prod1", 
                            "VpcPeeringConnectionId": "pcx-b04deed9", 
                            "GroupId": "sg-bbbb2222"
                        }
                    ], 
                    "IpProtocol": "tcp"
                }
            ], 
            "GroupId": "sg-aaaa1111", 
            "Description": "Reference remote SG"
        }
    ]
}
```

古くなったセキュリティグループルールを特定した後、[revoke-security-group-ingress](https://docs.aws.amazon.com/cli/latest/reference/ec2/revoke-security-group-ingress.html) コマンドまたは [revoke-security-group-egress](https://docs.aws.amazon.com/cli/latest/reference/ec2/revoke-security-group-egress.html) コマンドを使用してそれらのルールを削除できます。

# VPC ピアリング接続の DNS 解決を有効にする
<a name="vpc-peering-dns"></a>

VPC ピアリング接続の DNS 設定により、VPC ピアリング接続を通過するリクエストに対してパブリック DNS ホスト名が解決される方法が決まります。VPC ピアリング接続の一方の側の EC2 インスタンスが、インスタンスのパブリック IPv4 DNS ホスト名を使用して、もう一方の EC2 インスタンスにリクエストを送信すると、DNS ホスト名は次のように解決されます。

**DNS 解決が無効 (デフォルト）**  
パブリック IPv4 DNS ホスト名は、インスタンスのパブリック IPv4 アドレスに解決されます。

**DNS 解決が有効**  
パブリック IPv4 DNS ホスト名は、インスタンスのプライベート IPv4 アドレスに解決されます。

**要件**
+ 両方の VPC を、DNS ホスト名および DNS 解決に対して有効にする必要があります。詳細については*Amazon VPC ユーザーガイド*の「[DNS attributes for your VPC](https://docs.aws.amazon.com/vpc/latest/userguide/AmazonDNS-concepts.html#vpc-dns-support)」(VPC の DNS 属性) を参照してください。
+ ピアリング接続は `active` 状態である必要があります。ピアリング接続を作成するときに、DNS 解決のサポートを有効にすることはできません。
+ リクエスタ VPC の所有者はリクエスタ VPC ピアリングオプションを変更する必要があり、アクセプタ VPC の所有者はアクセプタ VPC ピアリングオプションを変更する必要があります。VPC が同じアカウントにある場合は、リクエスター VPC とアクセプター VPC の DNS 解決を同時に有効にすることができます。これは同じリージョンとクロスリージョンの両方の VPC ピアリング接続で機能します。

**コンソールを使用してピアリング接続の DNS 解決を有効にするには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

1. ナビゲーションペインで、**[Peering Connections]** (ピアリング接続) をクリックします。

1. VPC ピアリング接続を選択します。

1. **[アクション]**、**[DNS 設定を編集]** の順に選択します。

1. リクエスタ VPC からのリクエストの DNS 解決を有効にするには、**[リクエスタ DNS 解決]** 、**[アクセプタVPCがリクエスタ VPC の DNS 解決を許可]** を順に選択します。

1. アクセプタ VPC からのリクエストの DNS 解決を確認するには、**[アクセプタ DNS 解決]**、**[リクエスタ VPC がアクセプタ VPC の DNS 解決を許可]** の順に選択します。

1. **[Save changes]** (変更の保存) をクリックします。

**コマンドラインを使用して DNS 解決を有効にするには**
+ [modify-vpc-peering-connection-options](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-vpc-peering-connection-options.html) (AWS CLI)
+ [Edit-EC2VpcPeeringConnectionOption](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2VpcPeeringConnectionOption.html) (AWS Tools for Windows PowerShell)

**コマンドラインを使用して VPC ピアリング接続を記述する**
+ [describe-vpc-peering-connections](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpc-peering-connections.html)（）AWS CLI」
+ [Get-EC2VpcPeeringConnection](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2VpcPeeringConnection.html) (AWS Tools for Windows PowerShell)

# VPC ピアリング接続を削除する
<a name="delete-vpc-peering-connection"></a>

ピアリング接続されている VPC の所有者は、どちらも VPC ピアリング接続をいつでも削除できます。リクエストした後でまだ `pending-acceptance` 状態にある VPC ピアリング接続も削除できます。

VPC ピアリング接続が `rejected` 状態のときは、VPC ピアリング接続を削除できません。自動的に接続が削除されます。

アクティブな VPC ピアリング接続の一部となっている Amazon VPC コンソールの VPC を削除すると、その VPC ピアリング接続も削除されます。別のアカウントにある VPC との VPC ピアリング接続をリクエストして、他の当事者がそのリクエストを承認する前に自分の VPC を削除した場合は、その VPC ピアリング接続も削除されます。別のアカウントの VPC からの `pending-acceptance` リクエストがある場合は、VPC を削除できません。最初に VPC ピアリング接続リクエストを拒否する必要があります。

ピアリング接続を削除すると、ステータスが `Deleting` に、その後 `Deleted` に設定されます。接続を削除すると、ピアリング接続の承認、拒否、編集ができなくなります。ピアリング接続がどの程度の期間表示されるかについて、詳しくは「[VPC ピアリング接続のライフサイクル](vpc-peering-basics.md#vpc-peering-lifecycle)」を参照してください。

**VPC ピアリング接続を削除するには**

1. Amazon VPC コンソール ([https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/)) を開きます。

1. ナビゲーションペインで、**[Peering Connections]** (ピアリング接続) をクリックします。

1. VPC ピアリング接続を選択します。

1. **[Actions]** (アクション)、**[Delete peering connection]** (ピアリング接続を削除) を選択します。

1. 確認を求められたら、**delete**と入力し、[**削除**] を選択します。

**コマンドラインを使用して VPC ピアリング接続を削除するには**
+ [delete-vpc-peering-connection](https://docs.aws.amazon.com/cli/latest/reference/ec2/delete-vpc-peering-connection.html)（）AWS CLI」
+ [Remove-EC2VpcPeeringConnection](https://docs.aws.amazon.com/powershell/latest/reference/items/Remove-EC2VpcPeeringConnection.html)」（AWS Tools for Windows PowerShell）

# VPC ピアリング接続のトラブルシューティング
<a name="troubleshoot-vpc-peering-connections"></a>

ピア VPC のリソースから VPC 内のリソースに接続できない場合は、次の手順を実行してください。
+ 各 VPC 内の各リソースについて、サブネットのルートテーブルに、ピア VPC 宛てのトラフィックを VPC ピアリング接続に送信するルートが含まれていることを確認します。この結果、ネットワークトラフィックが 2 つの VPC 間を正常に流れることができるようになります。詳細については、「[ルートテーブルの更新](vpc-peering-routing.md)」を参照してください。
+ 関連する EC2 インスタンスについては、そのインスタンスのセキュリティグループで、ピア VPC からのインバウンドおよびアウトバウンドトラフィックが許可されていることを確認します。セキュリティグループのルールは、EC2 インスタンスへのアクセスを許可するトラフィックを制御します。詳細については、「[ピアセキュリティグループの参照](vpc-peering-security-groups.md)」を参照してください。
+ リソースを含むサブネット ACL のネットワーク ACL で、ピア VPC からの必要なトラフィックが許可されていることを確認します。ネットワーク ACL は、サブネットレベルでトラフィックをフィルタリングする追加のセキュリティレイヤーです。

それでも問題が解決しない場合は、Reachability Analyzer を利用できます。Reachability Analyzer は、2 つの VPC 間の接続問題の原因となっている特定のコンポーネント (ルートテーブル、セキュリティグループ、またはネットワーク ACL) を特定するのに役立ちます。詳細については、「[Reachability Analyzer Guide](https://docs.aws.amazon.com/vpc/latest/reachability/)」(到達可能性アナライザーガイド) を参照してください。

VPC ネットワーク設定の徹底的な検証は、発生する可能性のある VPC ピアリング接続の問題のトラブルシューティングと解決の鍵となります。