Amazon VPC同士を接続する手順【AWS外NWとの接続も解説】

Amazon VPC同士を接続する手順【AWS外NWとの接続も解説】

 

★悩み★
・Amazon VPC同士の接続って簡単にできるのだろうか?
・Amazon VPCとオンプレミスのネットワーク(NW)を接続できるのかな?
・EC2からAmazon S3を使う際にAmazon VPC内のみで通信できないかな。


こういった「悩み」に答えます。
 

★本記事の内容★
① Amazon VPC同士を4手順で接続する方法をご紹介
② Amazon VPCとAWS外のネットワーク(NW)を接続する方法をご紹介
③ AWSサービスで発生する通信をAmazon VPC内で完結させる方法をご紹介


これからご紹介する「Amazon VPC同士を接続する手順」を実践したことで、1時間以内でAmazon VPC同士を接続できました。

記事の前半では「Amazon VPC同士を接続する方法」を図を用いて解説しつつ、記事の後半では「Amazon VPCとAWS外のネットワークを接続する方法」を具体的に解説します。

この記事を読み終えることで、「Amazon VPCと他ネットワークを接続する方法」を把握できるだけでなく、「Amazon VPC内で通信を完結させる方法」も把握した状態になります。
 

「Amazon VPCとは何か?」や「Amazon VPCの設定手順」を知りたい方は、以下の記事をご覧ください。
 

 

Amazon VPC同士を4手順で接続する方法

Amazon VPC同士を4手順で接続する方法


「Amazon VPC同士を4手順で接続する方法」をご紹介します。

Amazon VPC同士を接続するために「VPCピアリング機能」を使います。
 

★VPCピアリング機能とは★
・異なるリージョンや異なるアカウントのVPCを接続可能
・VPC同士を接続することが可能
 例)VPC [A] ⇆ VPCピアリング ⇆ VPC [B] ⇆ VPCピアリング ⇆ VPC [C]
   ※推移的なピアリング関係は未サポート(VPC [A]とVPC [C]は未接続)

【注意点】
 接続したいVPCとIPアドレス空間が被っていないこと


今回は、VPCピアリング機能を用いて、以下のAWS環境を作っていきましょう。
 

★VPCピアリング機能を用いて作成するAWS環境★
・東京リージョンに以下を作成
 → パブリックネットワークの作成
 → パブリックネットワーク内にEC2を配備

・オレゴンリージョンに以下を作成
 → プライベートネットワークの作成
 → プライベートネットワーク内にEC2を配備

・VPCピアリング機能により異なるネットワーク内のEC2へSSH接続

 

Amazon VPC同士を4手順で接続する方法


以下の流れで上記のVPC同士を接続した環境を作成します。

★VPC同士を接続するまでの流れ★
手順1:リージョンごとにVPCを作成
手順2:VPCにEC2を配備
手順3:VPCピアリング機能でVPC同士を接続
手順4:VPC同士を接続した環境の動作確認


上記の流れで、「VPC同士を接続」ができます。
 

上記の各手順は、以下の日時で動作確認済みです。
動作確認済み日時:2021年4月6日


以降で、上記「VPC同士を接続するまでの流れ」の各手順に関してご説明します。

手順1:リージョンごとにVPCを作成

「手順1:リージョンごとにVPCを作成」に関してご説明します。
 

まずは、リージョンごとにVPCを作成しましょう。


リージョンごとに作成するVPCは、以下となります。
 

★作成するVPC★
・東京リージョン
 → 10.0.0.0/16のVPCを作成
 → 10.0.1.0/24のパブリックネットワークを作成

・オレゴンリージョン
 → 10.1.0.0/16のVPCを作成
 → 10.1.1.0/24のプライベートネットワークを作成

 

手順1:リージョンごとにVPCを作成


「VPCの作成方法」/「パブリックネットワークの作成方法」/「プライベートネットワークの作成方法」に関しては、以下の記事の手順1から手順5をご覧ください。
 


以上で、「手順1:リージョンごとにVPCを作成」は完了です。

手順2:VPCにEC2を配備

「手順2:VPCにEC2を配備」に関してご説明します。
 

次に、手順1で作成した各VPCにEC2のインスタンスを配備しましょう。


各VPCに配備するEC2インスタンスは、以下となります。
 

★各VPCに配備するEC2★
・東京リージョン
 → パブリックネットワークにEC2インスタンスを配備
・オレゴンリージョン
 → プライベートネットワークにEC2インスタンスを配備

 

手順2:VPCにEC2を配備


「EC2インスタンスの配備」に関しては、以下の記事の手順6をご覧ください。
 


以上で、「手順2:VPCにEC2を配備」は完了です。

手順3:VPCピアリング機能でVPC同士を接続

「手順3:VPCピアリング機能でVPC同士を接続」に関してご説明します。
 

続いて、VPCピアリング機能を用いてVPC同士を接続しましょう。

 

★VPC同士の接続の流れ★
1. 配備したEC2とVPCの情報整理
2. Amazon VPCの管理画面へアクセス
3. VPCピアリング接続の作成
4. VPCピアリング接続の承諾
5. ルートテーブルにVPCピアリングの情報を追加


上記の5手順で、VPCピアリング機能を用いてVPC同士を接続できます。
 

1. 配備したEC2とVPCの情報整理

配備したEC2とVPCの情報を整理しましょう。

筆者の配備したEC2とVPCの情報は、以下となります。

★配備したEC2とVPCの情報★
・東京リージョンに配備したEC2(以降、東京EC2と表記)
 → パブリックIP:54.238.215.93
 → プライベートIP:10.0.1.227
 → 所属VPCのID:vpc-0a9944ac0c08b891f
 → 所属サブネットのアドレス:10.0.1.0/24
 → キーペア:ec2-tokyo-test.pem
 → ルートテーブル:rtb-03cbd3e22258ab806

・オレゴンリージョンに配備したEC2(以降、オレゴンEC2と表記)
 → パブリックIP:なし
 → プライベートIP:10.1.1.89
 → 所属VPCのID:vpc-0291fb82df5f404e9
 → 所属サブネットのアドレス:10.1.1.0/24
 → キーペア:ec2-test-oregon.pem
 → ルートテーブル:rtb-0d8036054df30d8b8


東京EC2からオレゴンEC2にSSH接続するために、以下のコマンドを実行しましょう。

$ sudo ssh -i ec2-tokyo-test.pem ec2-user@54.238.215.93
Last login: Sat Oct 24 10:46:48 2020 from 58-190-166-205f1.hyg1.eonet.ne.jp

       __|  __|_  )
       _|  (     /   Amazon Linux 2 AMI
      ___|\___|___|

https://aws.amazon.com/amazon-linux-2/
2 package(s) needed for security, out of 13 available
Run "sudo yum update" to apply all updates.
[ec2-user@ip-10-0-1-227 ~]$ sudo ssh -i ec2-test-oregon.pem ec2-user@10.1.1.89
ssh: connect to host 10.1.1.89 port 22: Connection timed out
[ec2-user@ip-10-0-1-227 ~]$ Connection to 54.238.215.93 closed by remote host.
Connection to 54.238.215.93 closed.


上記コマンド結果のように、現状だと、東京EC2からオレゴンEC2に対してはSSH接続はできません。
 

以上で、「1. 配備したEC2とVPCの情報整理」は完了です。

2. Amazon VPCの管理画面へアクセス

VPCピアリング機能は、VPCの管理画面から使うことができます。

Webブラウザで、AWSマネジメントコンソールへアクセスします。
AWSマネジメントコンソール

「サービスを検索する」直下の検索欄に「vpc」と入力します(下図の赤枠)
その後、「VPC」をクリックしましょう。
 

2. Amazon VPCの管理画面へアクセス


以上で、「2. Amazon VPCの管理画面へアクセス」は完了です。

3. VPCピアリング接続の作成

東京リージョンでVPCピアリング接続を作成しましょう。

リージョンが「東京」(下図の赤枠)であることを確認しましょう。

3. VPCピアリング接続の作成


「ピアリング接続」(下図の青枠)をクリックし、「ピアリング接続の作成」(下図の赤枠)をクリックします。
 

3. VPCピアリング接続の作成


以下の情報を入力し、ページ末尾の「ピアリング接続の作成」をクリックします。
・ピアリング接続ネームタグ:ec2-test-peerと入力
・VPC(リクエスタ):東京EC2が所属しているVPCのIDを入力
・アカウント:自分のアカウントを選択
・リージョン:別のリージョンを選択
・VPC(アクセプタ):オレゴンEC2が所属しているVPCのIDを入力
 

3. VPCピアリング接続の作成


ピアリング接続が作成されていることを確認します。
 

3. VPCピアリング接続の作成


以上で、「3. VPCピアリング接続の作成」は完了です。

4. VPCピアリング接続の承諾

次は、オレゴンリージョンでVPCピアリング接続の承諾をします。

オレゴンリージョン側のVPC管理画面を開きます。
「ピアリング接続」のアクション(下図のオレンジ枠)をクリックし、「リクエストの承諾」(下図の赤枠)をクリックします。
 

4. VPCピアリング接続の承諾


「はい、承諾する」をクリックしましょう。
 

4. VPCピアリング接続の承諾


以上で、「4. VPCピアリング接続の承諾」は完了です。

5. ルートテーブルにVPCピアリングの情報を追加

東京EC2とオレゴンEC2のルートテーブルにVPCピアリング情報を追加します。

東京リージョンのVPC管理画面において、「ルートテーブル」(下図の青枠)をクリックします。その後、東京EC2が所属しているルートテーブルをクリックし、ルートタブ配下の「ルートの編集」(下図の赤枠)をクリックします。
 

5. ルートテーブルにVPCピアリングの情報を追加


「ルートの追加」をクリックし、以下を入力しましょう。
・送信先(下図の赤枠):オレゴンEC2が所属するサブネットのIPアドレス
・ターゲット(下図の青枠):「Peering Connection」→ ec2-test-peerを選択

その後、「ルートの保存」をクリックします。
 

5. ルートテーブルにVPCピアリングの情報を追加


続いて、オレゴンリージョン側のVPC管理画面を開きましょう。

オレゴンEC2が所属している「ルートテーブル」を選択し、「ルートの編集」をします。


「ルートの追加」をクリックし、以下を入力しましょう。
・送信先(下図の赤枠):東京EC2が所属するサブネットのIPアドレス
・ターゲット(下図の青枠):「Peering Connection」→ ec2-test-peerを選択

その後、「ルートの保存」をクリックします。
 

5. ルートテーブルにVPCピアリングの情報を追加


以上で、「5. ルートテーブルにVPCピアリングの情報を追加」は完了です。
 

以上で、「手順3:VPCピアリング機能でVPC同士を接続」は完了です。

 

手順4:VPC同士を接続した環境の動作確認

「手順4:VPC同士を接続した環境の動作確認」に関してご説明します。
 

作成したVPC環境の動作確認をしましょう。


コマンドプロンプトまたは端末を起動し、以下のコマンドを実行しましょう。

$ sudo ssh -i ec2-tokyo-test.pem ec2-user@54.238.215.93
Last login: Sat Oct 24 10:45:30 2020 from 58-190-166-205f1.hyg1.eonet.ne.jp

       __|  __|_  )
       _|  (     /   Amazon Linux 2 AMI
      ___|\___|___|

https://aws.amazon.com/amazon-linux-2/
2 package(s) needed for security, out of 13 available
Run "sudo yum update" to apply all updates.
[ec2-user@ip-10-0-1-227 ~]$ sudo ssh -i ec2-test-oregon.pem ec2-user@10.1.1.89
Last login: Sat Oct 24 10:46:41 2020 from 10.0.1.227

       __|  __|_  )
       _|  (     /   Amazon Linux 2 AMI
      ___|\___|___|

Security-Focused, High-Performance Linux Environment – Amazon Linux 2 – AWS
[ec2-user@ip-10-1-1-89 ~]$


上記のコマンド結果より、東京EC2からオレゴンEC2へSSH接続できました。
 

コマンド結果より、想定通りの環境ができていることを確認できました。


以上で、「手順4:VPC同士を接続した環境の動作確認」は完了です。

上記の流れで、「Amazon VPC同士を接続」できました。 

 

Amazon VPCとAWS外のネットワーク(NW)を接続する方法

Amazon VPCとAWS外のネットワーク(NW)を接続する方法


「Amazon VPCとAWS外のネットワーク(NW)を接続する方法」に関してご紹介します。
 

★AWS外のネットワーク(NW)と接続する方法★
① 仮想プライベートゲートウェイでAmazon VPCと外部ネットワークを接続
② AWS Direct ConnectでAmazon VPCとAWS外のネットワークを接続
③ Transit GatewayでAmazon VPCとAWS外のネットワークを接続


上記3つの方法で、Amazon VPCとAWS外のネットワークを接続できます。

以降で、上記「AWS外のネットワーク(NW)と接続する方法」の各方法に関してご説明します。

仮想プライベートゲートウェイでAmazon VPCと外部ネットワークを接続

「仮想プライベートゲートウェイでAmazon VPCと外部ネットワークを接続」に関してご説明します。
 

仮想プライベートゲートウェイを利用することでAWS外のネットワークと接続できます。


仮想プライベートゲートウェイを以下のように利用することで、オンプレミス環境のネットワークと接続することができます。
 

仮想プライベートゲートウェイでAmazon VPCと外部ネットワークを接続


上記構成でAmazon VPCと外部ネットワークを接続することができますが、線が細いため通信速度が安定しません。

AWS Direct ConnectでAmazon VPCとAWS外のネットワークを接続

「AWS Direct ConnectでAmazon VPCとAWS外のネットワークを接続」に関してご説明します。
 

AWS Direct Connectを使うことでVPCと外部ネットワークを接続することができます。


AWS Direct Connectは、以下の構成で利用します。
 

AWS Direct ConnectでAmazon VPCとAWS外のネットワークを接続


AWS Direct Connectを使うことで、専用のネットワークを使った通信ができます。

そのため、以下のメリットがあります。

★AWS Direct Connectのメリット★
・専用回線のため、高速で安定した通信が可能
・専用回線のため、セキュリティ強化(通信傍受などの心配が低減)


上記のメリットを受けたい場合、AWS Direct Connectを利用しましょう。
AWS Direct Connectの公式ページ
 

Transit GatewayでAmazon VPCとAWS外のネットワークを接続

「Transit GatewayでAmazon VPCとAWS外のネットワークを接続」に関してご説明します。
 

AWS Transit Gatewayを使うことで大多数のVPCと外部ネットワークを接続できます。


AWS Transit Gatewayは、以下の構成で利用します。
 

Transit GatewayでAmazon VPCとAWS外のネットワークを接続


AWS Transit Gatewayを使うことで、以下のメリットがあります。

★AWS Transit Gatewayのメリット★
・1つのGatewayで複数のVPCとオンプレミス環境を接続可能
・管理が楽


大多数のVPC同士の接続であったり、大多数のVPCとオンプレミスの接続を考えている場合は、AWS Transit Gatewayの利用を検討しましょう。
 

料金や速度面などを考慮した上で、適切な方法を選択し、Amazon VPCとAWS外のネットワーク(NW)を接続しましょう。

 

AWSサービスで発生する通信をAmazon VPC内で完結させる方法

AWSサービスで発生する通信をAmazon VPC内で完結させる方法


「AWSサービスで発生する通信をAmazon VPC内で完結させる方法を」に関してご紹介します。

結論から言いますと、VPCエンドポイントを使います。
 

★VPCエンドポイントとは★
VPCエンドポイントを利用することで、AWSサービスとVPC間での通信がAWS内の通信で完結します。


VPCエンドポイント使わずにEC2からAmazon S3にアクセスした場合、AWS外のネットワークを経由してアクセスする可能性があります。
 

AWSサービスで発生する通信をAmazon VPC内で完結させる方法


VPCエンドポイントを使うことで、EC2からS3にアクセスした場合、AWS内のネットワーク通信で完結するようになります。
 

AWSサービスで発生する通信をAmazon VPC内で完結させる方法


ちなみに、VPCエンドポイントは2種類あるのでサービスごとに使い分けましょう。

★VPCエンドポイントの種類★
・インターフェイスエンドポイント
 → プライベートIPを用いてルーティングを管理
 → AZに配置

・ゲートウェイエンドポイント
 → S3とDynamoDBが対応
 → サービス名を用いてルーティングを管理
 → VPCにアタッチ

 

セキュリティ面や速度を担保したい場合、「AWSサービスで発生する通信をAmazon VPC内で完結させる方法」を採用しましょう。

 

【まとめ】Amazon VPC同士を接続する手順

今回の記事を通して、「Amazon VPC同士を接続する手順」をご紹介することで、以下の悩みを解消しました。
 

★悩み★
・Amazon VPC同士の接続って簡単にできるのだろうか?
・Amazon VPCとオンプレミスのネットワーク(NW)を接続できるのかな?
・EC2からAmazon S3を使う際にAmazon VPC内のみで通信できないかな。


「Amazon VPC同士の接続はどうすればいいのか?」と悩んでいるあなたにこの記事が少しでも役に立てれば幸いです。

 

 


 

コメント

タイトルとURLをコピーしました