Closed22

AWS ネットワークとコンテンツ配信

bayamasabayamasa

IPv4 32bit 10進数
IPv6 128bit 16進数

CIDRアドレス
/以下のアドレスが固定されていることを示す。
ex)
192.0.2.0/24 → 上位3バイトが固定
そのため「192.0.2」ここの部分はもう変更できない。
最後の1バイトの変更によりIPアドレスを表現することが出来る。

bayamasabayamasa

Amazon VPC

論理的に分離されたセクションをプロビジョニングして、ユーザーが定義した仮想ネットワーク

制御出来ること

  1. IPアドレス範囲
  2. サブネットの作成
  3. ルートテーブルとNGW
bayamasabayamasa

単一のAWSリージョンであり、複数のAZにまたがることが可能

bayamasabayamasa

IPv4 CIDRブロックのMAX ~ MIN は /16 ~ /28
つまり
/16の場合 2^16 = 65536(個)
/28の場合 2^4 = 16(個)
上記の数のIPアドレスを設定することが出来る

bayamasabayamasa

IPアドレスを設定するときに、AWS側で5つのIPアドレスを使用しているため、実際に使用できるのは251個までである。

bayamasabayamasa

予約したIPは以下に使用している

  • ネットワークアドレス
  • VPCローカルルーター(内部通信)
  • ドメインネームシステム(DNS)の解決
  • 将来の利用のため
  • ネットワークブロードキャストアドレス
bayamasabayamasa

ルートテーブル
サブネットからのネットワークトラフィックをルーティングする。
各サブネットはルートテーブルと関連付けられている必要がある。

bayamasabayamasa

ネットワークACL(Access Controll List)
サブネット間でのNW通信をコントロールする。
これを設定することにより、サブネット同士のhttp/tcp/udp通信の許可/拒否を選択出来る

セキュリティグループというものも存在し、こちらはサブネット内でのEC2などのサーバーとの通信の設定を行う事ができる。

なのでネットワークACLとセキュリティグループの違いとしては、サブネット同士での通信を行うかサブネット内のサーバーと通信を行うかという違いが存在する。
https://milestone-of-se.nesuke.com/sv-advanced/aws/network-acl-and-security-group/

bayamasabayamasa

VPC ピアリング接続
VPC同士はAWSリージョン間などで接続することが出来る。

その際に必要な制限

  • IP空間は重複できない
  • 推移的なピアリング接続
    AWS Transit Gatewayなどを使用した、理論的には可能なピアリング接続
bayamasabayamasa

AWS Direct Connect
高スループットを実現するVPNを作成する。
これにより企業のプライベートネットワークとの通信を制御する。

bayamasabayamasa

VPCエンドポイント
S3やDynamoDBなどのVPCの外側のグループとプライベートに接続することが出来る機能

bayamasabayamasa

AWS Transit Gateway
VPC同士を接続するためにはVPCピアリング接続が必要になる。
これだと設定が煩雑になってしまう可能性がある。

AWS Transit Gatewayを使うことでこれを防ぐ
AWS Transit Gatewayはピアリング接続をすることなく、Transit gatewayをハブとしたネットワークを構築する事が可能

bayamasabayamasa

VPCセキュリティ

  • セキュリティグループ
    EC2のファイアウォールのようなもの
    ホワイトリスト

  • ネットワークACL
    インバウンドとアウトバウンドのルールが個別に設定されていて、各ルールでトラフィックの許可/拒否をすることが可能
    ステートレス

違い
sg vs acl
許可ルールのみ vs 許可ルールと拒否ルール
ステートフル(レスポンスのトラフィックが自動的に許可される)
vs
ステートレス(レスポンスのトラフィックは明示的な許可が必要)
ルールが全て評価 vs ルールが番号順に評価
(何が違うんだ...)

bayamasabayamasa

Route53

色々な観点からルーティングを可能とする
加重ラウンドロビンルーティング
複数値回答ルーティング
などなど

bayamasabayamasa

フェイルオーバーすると自動的に新しいRouteを探して来て設定することが出来る

bayamasabayamasa

CloudFront

動画/画像/音声などの再生はネットワーク上に乗せることにより、オリジンサーバーとの純粋な距離がレイテンシーに深く影響する。
そのため地理的な環境に影響されやすい

bayamasabayamasa

エッジロケーション
CloudFrontが人気コンテンツを迅速に提供するための、データセンターネットワークです。

リージョン別エッジキャッシュ
エッジロケーションに残しておくほどの人気がないコンテンツをキャッシュするCloudFrontロケーションです

bayamasabayamasa

NAT Gateway

そもそもNATとは

Network Address Translationの略。「ネットワークアドレス変換」ともいう。LANに接続された端末からインターネットに接続する際に、「プライベートIPアドレス」を自動的に外部ネットワークで使用できる「グローバルIPアドレス」に変換する機能。

https://www.otsuka-shokai.co.jp/words/nat.html

bayamasabayamasa

インターネットGWはStatic NATを行う。
Static NATとは既にプライベートIPとパブリックIPが1対1で定義されているNATを指す。

NATGWはプライベートIPとパブリックIPが多対1で変換を行う。
複数のEC2などの通信がNAT-GWを通過してパブリックIPに変換されるとき、そのパブリックIPは一つになる。
ただどの通信がどのプライベートIPに変換すれば良いかわからなくなってしまうので、ポート番号を変換することでそれを回避している。
このNATの方式を動的NAPT = Dynamic NAPTと呼ぶ。

bayamasabayamasa

Dynamic NAPTは初期状態ではNATテーブルが空です。
プライベートIPが入ってきたタイミングで変換とNATエントリが作成されます。

要はインターネットから始まる通信は (NAT エントリが無いので) アクセスできません。

なので、インターネット側からNATテーブルにアクセスすることはできない仕様になっています。

このスクラップは2021/08/20にクローズされました