今回は、NAT Gatewayの基本を解説します。抑えておいて、まず損はしないので是非ご覧ください。
ではでは。
NAT Gatewayとは?
NAT Gatewayを利用することで、プライベートなサブネットからインターネットへの通信を可能にしつつ、インターネット側からはプライベートなサブネットにアクセスできないようにすることができる。

※本ページはプロモーションが含まれています。

NAT Gatewayの料金
公式サイト:https://aws.amazon.com/jp/vpc/pricing/
料金の構成は以下の通り!(東京リージョンの場合)
NAT Gatewayが起動していた時間($/時間) | NAT Gatewayで処理されたデータ量($/GB) |
---|---|
$0.062 | $0.062 |
例:24時間起動し続け、10GBのデータ量が処理された場合
24 * 0.062 + 10 * 0.062 = $2.108
実際に使ってみる。
実験した環境

赤い矢印:インターネットからEC2(A)へのアクセス経路
青い矢印:EC2(B)からインターネットへのアクセス経路
黒い矢印:EC2(A)からEC2(B)へのアクセス経路(SSH接続用)
実験内容
まずは、EC2(A)からEC2(B)にSSH接続を行う。
[ec2-user@ip-20-0-10-245 ~]$ ssh -i study-infra.pem ec2-user@20.0.30.79
The authenticity of host '20.0.30.79 (20.0.30.79)' can't be established.
ECDSA key fingerprint is SHA256:x+ftJBy2/98Ucp7ElzhSrozzCVzhFh/IJ1ZVFknLEpY.
ECDSA key fingerprint is MD5:6a:51:85:a0:b5:33:a4:b8:ab:a7:5c:25:76:60:57:8e.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '20.0.30.79' (ECDSA) to the list of known hosts.
__| __|_ )
_| ( / Amazon Linux 2 AMI
___|\___|___|
https://aws.amazon.com/amazon-linux-2/
1 package(s) needed for security, out of 15 available
Run "sudo yum update" to apply all updates.
[ec2-user@ip-20-0-30-79 ~]$
はい。これは問題なくOK。
お次は、EC2(B)からインターネットにアクセスしてみる。アクセス先は、自分の公開IPが分かるサービス。
[ec2-user@ip-20-0-30-79 ~]$ curl inet-ip.info
18.176.170.211
[ec2-user@ip-20-0-30-79 ~]$
インターネットにアクセスできていますね。また、インターネットへのアクセスに利用しているIPアドレスは「18.176.170.211」のようです。
これはNAT Gatewayに付与したEIPと同じため、NATが効いていることがわかります。
自分のPCからNAT GatewayのIPにアクセスしてみるとどうなるのかやってみます。
[~/work] % telnet 18.176.170.211 22
Trying 18.176.170.211...
^C
[~/work] %
接続できません。NATなので想定通り。
※接続可能であれば、以下のように表示されます。(これはEC2(A)へのテスト接続)
[~/work] % telnet 54.178.5.149 22
Trying 54.178.5.149...
Connected to ec2-54-178-5-149.ap-northeast-1.compute.amazonaws.com.
Escape character is '^]'.
SSH-2.0-OpenSSH_7.4
^C
Connection closed by foreign host.
[~/work] %
ちなみにEC2(A)は、EIPを直接振っているのでそのIPが表示されます。
[ec2-user@ip-20-0-10-245 ~]$ curl inet-ip.info
54.178.5.149
[ec2-user@ip-20-0-10-245 ~]$
知っておくと役にたつこと
NAT Gatewayの基本はこれまでの通り。プラスアルファで抑えておくと、きっと役に立つはず!ってところを紹介します。
・NAT GatewayはAZ単位で作成可能。そのため、冗長化したい場合は、AZ毎に作成することが必要。
・NAT Gatewayにはセキュリティグループを関連付けすることができない。セキュリティグループでアクセス制限したい場合は、通信先のインスタンスにて行う。
・VPCフローログでキャプチャすることが可能。
・CloudWatchでNAT Gatewayのリソース(アクティブな接続数やデータ通信量など)を監視することが可能。

Midworkはフリーランスエンジニアのために、高単価からフルリモートまで、多様な働き方をサポートするプロジェクトマッチングサービスです。専任カウンセラーによる手厚いキャリアサポートも、特徴の一つ。これらのサービスを通じて、あなたのキャリアを次のレベルへ。
コメント