1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

NATゲートウェイを使ってインターネットに抜ける環境を作る

Posted at

こんにちは。
株式会社クラスアクト インフラストラクチャ事業部の大塚です。
今回は、AWSのNATゲートウェイを使ってPrivateサブネットに存在するEC2からインターネットに接続する環境を用意してみたいと思います。

環境イメージ

イメージとしては以下です。
プライベートサブネットのEC2からインターネットに抜けるか検証する時には、パブリックサブネットにある踏み台を経由していきたいと思います。
growi-ページ29.drawio (2).png

構築

まずVPCやらサブネットやらを用意していきたいと思います。
image.png

kensyo-vpcという名前でVPCを作成していきます。
image (1).png

次にVPC内のパブリック/プライベートサブネットを作成していきます。
image (3).png

以下のように作成しました。
screencapture-ap-northeast-1-console-aws-amazon-vpcconsole-home-2025-05-03-19_52_25.png
image (4).png

作成したsubnetに紐づけるRTを作成していきます。
詳細なルーティング情報はNATゲートウェイ周りの環境が整った後にまとめていれます。
image (5).png

パブリック用とプライべート用のRTを作成しました。
image (6).png
image (7).png

次にVPCに紐づけるIGWを作成します。
image (8).png
image (9).png
作成したIGWをVPCにアタッチします。
image (10).png
image (11).png

privateサブネットに立ち上げるEC2を起動します。
image (12).png
screencapture-ap-northeast-1-console-aws-amazon-ec2-home-2025-05-03-19_59_10.png

ここまでの状態を一旦イメージに起こします。
growi-ページ30.drawio.png

NATゲートウェイをpublicサブネットに用意します。
※お金がかかってくるので気を付けます。

EIPを確保していきます。
image (13).png
image (14).png
image (15).png

NATゲートウェイを作成していきます。
image (16).png
NATゲートウェイを配置したいサブネットと割り当てたいEIPを指定して作成していきます。
screencapture-ap-northeast-1-console-aws-amazon-vpcconsole-home-2025-05-03-20_07_53.png
作成出来たことを確認します。
image (17).png

RTの設定を行っていきます。
まずはパブリック用。
image (18).png
こちらのRTはIGWをデフォルトゲートウェイに設定していきます。
こうすることで、NATゲートウェイがインターネットに抜けられるようになります。
image (19).png
併せてパブリックのサブネットを明示的に割り当てます。
image (20).png

次にprivate用。
image (21).png
こちらのRTはNATゲートウェイをデフォルトゲートウェイに設定していきます。
こうすることで、EC2がNATゲートウェイを経由してIGWにアクセスでき、インターネットに抜けられるようになります。
image (22).png
併せてプライベートのサブネットを明示的に割り当てます。
image (24).png

検証

プライベートサブネットのEC2にアクセスして、インターネットに抜けることが出来るかを確認します。
そのためにまず、パブリックサブネット上に踏み台サーバを用意して、そこからプライベートのサーバにアクセスします。
screencapture-ap-northeast-1-console-aws-amazon-ec2-home-2025-05-03-20_24_21.png

作成出来たことを確認します。
image (25).png

Teratermを使って踏み台にアクセスして、その踏み台からプライベートのEC2にアクセスします。

   ,     #_
   ~\_  ####_        Amazon Linux 2023
  ~~  \_#####\
  ~~     \###|
  ~~       \#/ ___   https://aws.amazon.com/linux/amazon-linux-2023
   ~~       V~' '->
    ~~~         /
      ~~._.   _/
         _/ _/
       _/m/'
[ec2-user@ip-192-168-100-12 ~]$ sudo su -
[root@ip-192-168-100-12 ~]# cd /tmp
[root@ip-192-168-100-12 tmp]# ls | grep -i *.pem
ohtsuka-key.pem
[root@ip-192-168-100-12 tmp]# ssh -i ohtsuka-key.pem ec2-user@192.168.100.107
The authenticity of host '192.168.100.107 (192.168.100.107)' can't be established.
ED25519 key fingerprint is SHA256:a5YHNTt3STV1rEohFSq4sz4N2xbqGnYDkiiybMmm1dU.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.100.107' (ED25519) to the list of known hosts.
   ,     #_
   ~\_  ####_        Amazon Linux 2023
  ~~  \_#####\
  ~~     \###|
  ~~       \#/ ___   https://aws.amazon.com/linux/amazon-linux-2023
   ~~       V~' '->
    ~~~         /
      ~~._.   _/
         _/ _/
       _/m/'
[ec2-user@ip-192-168-100-107 ~]$

インターネットに抜けるかを確認します。
google.comに対してpingが飛んでいることからNATゲートウェイを経由してインターネットに抜けていることがわかります。
検証が出来たらEIPやNATゲートウェイを削除しましょう。

[ec2-user@ip-192-168-100-107 ~]$ ping google.com
PING google.com (142.250.207.46) 56(84) bytes of data.
64 bytes from nrt13s55-in-f14.1e100.net (142.250.207.46): icmp_seq=1 ttl=57 time=2.06 ms
64 bytes from nrt13s55-in-f14.1e100.net (142.250.207.46): icmp_seq=2 ttl=57 time=1.63 ms
64 bytes from nrt13s55-in-f14.1e100.net (142.250.207.46): icmp_seq=3 ttl=57 time=1.33 ms
64 bytes from nrt13s55-in-f14.1e100.net (142.250.207.46): icmp_seq=4 ttl=57 time=1.84 ms
64 bytes from nrt13s55-in-f14.1e100.net (142.250.207.46): icmp_seq=5 ttl=57 time=1.52 ms
^C
--- google.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4006ms
rtt min/avg/max/mdev = 1.334/1.678/2.062/0.252 ms
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?