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?

More than 1 year has passed since last update.

【AWS】NATゲートウェイについて勉強する

1
Posted at

はじめに

本記事ではインフラ初学者がVPCを触りつつ、NATゲートウェイについて学んでいく内容になります。

既存の環境として、以下のような構成があります。
sampe.png

上記構成を元に、色々リソースを付け加えていく形で勉強を進めていけたらと思います。

目次

  1. NATゲートウェイとは?
  2. NATゲートウェイを構築する
  3. NATゲートウェイを通じた疎通確認をする
  4. まとめ
  5. 参考文献

NATゲートウェイとは?

NATゲートウェイとは、プライベートサブネット内のインスタンスがVPC外部ネットワークへ接続するために必要なサービスです。

現状の構成では、プライベートサブネット内にあるEC2(DBサーバー)はインターネットにアクセスできません。

踏み台サーバーを経由して必要なソフトウエアをひとつずつscpコマンドでコピーすることもできますが、手間がかかりぎてしまいます。

この問題を解決するソリューションのひとつが「NAT」です。
NATは、IPアドレスを変換する装置で、2つのネットワークインターフェースを持ちます。

片方のインタフェースは、パブリックIPアドレスを設定し、インターネットに接続可能な構成にしておきます。
もう片方のインタフェースは、プライベートIPアドレスを設定し、プライベートサブネットに接続します。

プライベートサブネット内にあるDBサーバーがインターネットにパケットを送信する時、NATはパケットの送信元IPアドレスを自身のパブリックIPアドレスに置換します。
こうすることで、送信元がパブリックIPアドレスに変わるため、インターネットに出ていくことができます。

パケットの送信元IPアドレスが置換されているため、接続先からはNATが接続してきているように見えます。

また、NATは戻ってきた応答パケットの宛先を、元のホストのIPアドレスに置換してプライベートサブネットに転送します。

このように、NATがIPアドレスを置換することによって、プライベートサブネットに存在するホストはインターネットと通信できるようになります。

NATゲートウェイを構築する

前知識をある程度取り入れたので、アウトプットしていこうと思います。

今回はこのような構成を作ろうと思います。
sampe.png

NATゲートウェイを作成する

image.png

注意する点としては以下項目になります。

  • サブネット:パブリックサブネットを選択
  • 接続タイプ:public
  • Elastic IPアドレスを割り当てる

ルートテーブルを更新する

プライベートサブネットのルートテーブルを更新しましょう。
image.png

これでNATゲートウェイの構築は完了になります。

NATゲートウェイを通じた疎通確認をする

では、NATゲートウェイの動作確認するためにDBサーバーからcurlコマンドを実行してみましょう!

DBサーバー
curl https://qiita.com

HTMLを表示されていれば、HTTP通信ができていることになります!

まとめ

今回はNATゲートウェイについて座学/ハンズオン形式で学習しました!
ハンズオンで学習していると、ルートテーブルやcurlコマンドの理解が進んだりと副産物を得られるのが良いメリットだと思いますね。

Elastic IPとNATゲートウェイはお金がかかっちゃうので、用がなければ早めに削除しちゃいましょう!

参考文献

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?