【資格勉強】AWSAdvanced Networkingの勉強備忘録

20211031_aws_certifiled_advanced_networking01 資格

今回は「AWSAdvanced Networking」の勉強を備忘録として残してます。まだ途中なのでこれからも更新する予定です。

AWSAdvanced NetworkingとはAWSのネットワークに特化した資格です。

なぜ、試験を受けようかと思ったかというと単純にネットワークが好きだからという理由です。
あと別の試験を受けるときの参考にもなると思うので。

AWSの勉強中ですが個人からや小規模の会社さんからの相談に乗ります!

想定読者

この記事では以下の読者を想定して書いています。

  • AWSAdvanced Networkingの資格を取得しようと思っている人

AWSAdvanced Networkingとは

AWSAdvanced Networkingとはそのままなのですが、Amazonが提供しているクラウドサービスAWSのネットワークに特化した資格です。

この資格を取得することでAWSに関するセキュリティの知識(以下の知識)があることの証明になります。

  • AWS テクノロジー、AWS セキュリティのベストプラクティス、AWS ストレージオプションとその基礎となる整合性モデルの活用と、AWS ネットワークのニュアンスや AWS のサービスの統合への関連性についての、専門的な経験。
  • 高度なネットワークアーキテクチャと相互接続オプション [例: IP VPN、マルチプロトコルラベルスイッチング (MPLS)、VPLS (Virtual Private LAN Service)] に関する知識。
  • オートメーションスクリプトとツールの開発に精通していること。これには、以下の設計、実装、および最適化が含まれます。ルーティングアーキテクチャ (静的および動的を含む)、グローバルエンタープライズ向けのマルチリージョンソリューション、可用性の高い接続ソリューション (例: AWS Direct Connect、VPN)。
  • CIDR とサブネット (IPv4 と IPv6)、IPv6 移行の課題、AWS WAF、侵入検知システム (IDS)、侵入防止システム (IPS)、DDoS 保護、EDoS (Economic Denial of Service/Sustainability) などのネットワークセキュリティ機能の一般的なソリューションに関する知識。

詳細を知りたい方は以下サイトを参照ください。

AWS Certified Advanced Networking - Specialty

AWSAdvanced Networkingの試験範囲

勉強する内容(試験範囲)は次のようなことです。

分野 試験の出題比率
分野1 ハイブリッド IT ネットワークアーキテクチャの大規な設計および実装 24%
分野2 AWS ネットワークの設計と実装 28%
分野3 AWS タスクのオートメーション 8%
分野4 アプリケーションサービスとのネットワーク統合の構成 14%
分野5 セキュリティとコンプライアンスの設計と実装 12%
分野6 ネットワークの管理、最適化、トラブルシューティング 14%
合計 100%

それぞれの詳細を知りたい場合は、以下の試験ガイドから確認してください。

(ANS-C00) 試験ガイド

勉強内容

ここから勉強内容をドンドン書いていきたいと思います。

用語集

とりあえず、気になった用語を集めました。

用語 意味
AWSDirect Connect オンプレミス(社内)の環境AWSを接続するための専用線を利用するサービス
例えるなら、糸電話のようにお互いを繋げるサービス
Transit Gateway 中央ハブ(Transit Gateway)を介して VPC とオンプレミスネットワークを接続することができるサービス。
例えるなら、羽田空港のようなHUBの役割をするサービス
VGW Virtual Gatewayのこと。
VGWとはオンプレ環境とVPCをVPNで接続するためのルータのこと。
Private virtual interface VPCへプライベートアドレスを介した接続を提供するインタフェース
例えるなら、同じ地域の会社内だけで使える内線電話
Public virtual interface VPC外のサービス(S3)とかに接続するためのインタフェース
例えるなら、同じ会社なんだけど別の地域へ連絡する時の外線電話
Direct Connect Gateway Direct Connectの機能の一つ。VIFとVGWの間に追加するコンポーネント。
Direct Connect Gatewayを使うと、一つのリージョンでその他のリージョンに接続できる。
例えるなら、Transit Gatewayと同じ羽田空港のようなHUBの役割をするサービス
Transit Gatewayとの違いは以下のサイトが参考になります。
AWSとのHybrid環境を簡略化するための機能 ~AWS Transit Gateway~ : 富士通
コラム
Transit Gateway inter-Region Peering リージョン間をTransit Gatewayで接続する機能
リージョン外のVPCへも接続ができる
例えるなら、日本以外の国にも行けるようになった
トランジットVIF Direct Connect Gateway経由でTransit Gateway への接続を提供するインタフェース
例えるなら、Direct Connect GatewayとTransit Gatewayの恋のキューピット
拡張ネットワーキング EC2で利用できる高い帯域幅、1 秒あたりのパケット (PPS) の高いパフォーマンス、常に低いインスタンス間レイテンシーが実現可能。
シングルルート I/O 仮想化 (SR-IOV) 拡張ネットワーキングで利用する。従来の仮想化ネットワークインターフェイスと比較し、I/O パフォーマンスが高く、CPU 利用率が低いデバイス仮想化の手法
例えるなら、普通のサイヤ人からスーパーサイヤ人になったインターフェース
ELB Connection Draining ELBから切り離してもリクエスト中のインスタンスへ指定秒数の間は通信は切れない機能
ALIASレコード Route53のDNSのAレコードに別名をつける仕組み。CNAMEと機能同じ。
メリットはAWSサービスをDNS名として登録できるため、CNAMEより解決する手間が少なくなり、早く呼び出せるのが特徴。
VPCエンドポイント VPC上のサービスからインターネットを経由せずに、直接AWSのサービス(S3とか)にアクセスできる機能。
例えるなら、自分の部屋からお風呂場までは廊下を歩く必要があるが、VPCエンドポイントを使うと、どこでもドアみたいに直接部屋が繋がるイメージ。
Route 53 Resolver オンプレミスの環境からVPCの名前解決ができる機能
通常Direct ConnectしていてもVPCの名前解決が利用できない。
DHCPオプション DHCP オプションはVPCのインスタンスに独自のドメイン名やNTPサーバ、netbiosを割り当てしたい時に使う設定
EC2インスタンスメタデータ EC2インスタンスに関するデータで、実行中のインスタンスを設定または管理するために使用するもの。
http://169.254.169.254/latest/meta-data/
X-Forwarded-For HTTPヘッダフィールドの1つで、ロードバランサなどの機器を経由して
Webサーバに接続するクライアントの送信元IPアドレスを特定する際のデファクトスタンダード
ProxyProtocol TCPでロードバランスをした時でも、クライアントの送信元IPが取得できる機能(HTTP,HTTPS以外は取得できなかったけどこれなら取得できる)
VPCエンドポイントゲートウェイ型 VPCエンドポイントのゲートウェイ型、対象サービスはS3とDynamoDBの2つのみ。送信元IPがグローバルIPになる
VPCエンドポイントインターフェース型 AWS PrivateLinkとも呼ばれる。プライベートIPでやり取りができる。
Lambda@Edge CloudFrontのエッジロケーションからコードを実行するLambda関数。
メリットはユーザから近い距離で関数を実行できるので、処理が早くなる。
Amazon AppStream 2.0 AWS上でアプリケーションのみを実行するサービス。
ワークスペースとの違いは、端末かアプリかという違い。
AWS Global Accelerator AWS内グローバルネットワークから通信することで、アプリケーションのグローバルな可用性とパフォーマンスを向上させるサービス。
NATGateway プライベートサブネットにあるインスタンスがインターネットに接続するためのサービス

気になった動作や用語を調べる

以下サイトで気になった動作や用語を調べてみました。

セキュリティグループに拒否設定はない

結構勘違いしがちな内容ですが、NACLには拒否設定はありますが、セキュリティグループには拒否設定はありません。

VPC のセキュリティグループ - Amazon Virtual Private Cloud
セキュリティグループを使用して、インスタンスのインバウンドトラフィックとアウトバウンドトラフィックをコントロールします。
connection drainingとは?

connection drainingとは既存の接続を開いたまま、Classic Load Balancerが登録解除中または異常なインスタンスへのリクエストの送信を停止するようにする機能

Site to Site VPNおよびDirectConnectのルート優先順位

「Site to Site VPN」と「DirectConnect」で、重複するルートが存在する場合にはVirtual Private Gateway(VGW)は以下の優先順位でルートを決定します。

  1. ロンゲストマッチ(宛先ネットワークがより詳細に絞り込まれているルート)
  2. DirectConnectとSite to Site VPNではDirectConnectが優先
  3. Site-to-Site VPN接続用に手動で設定したStaticルート
  4. Site-to-Site VPN 接続から BGP で伝播されたルート
  5. BGPルートの中ではAS PATHが最短のものが優先
  6. AS PATHが同じ場合はMEDが最小のものが優先

BGPのルート制御、AS PATH,MEDは小さいほうがルート優先する

Site-to-Site VPN のルーティングオプション - AWS Site-to-Site VPN
Site-to-Site VPN 接続を作成する場合、以下を実行する必要があります。
DHCP オプションの変更

DHCP オプションセットを作成後に変更することはできない。

VPCで異なるDHCPオプションセットが必要な場合は、別途作成してVPCに関連付ける必要があります。

複数セットのDHCP オプションを使用できるが、一度にVPCに関連付けることができる DHCP オプションセットは1つだけ。

1VPC=1DHCPオプション

Amazon VPC IPアドレス

VPCとサブネットのCIDRは「/16~/28」の範囲で指定する。
※AWSの仕様で決められている。

最低でも「/28」以上が必要。

サブネットのCIDRブロックのうち、5つは利用出来ない。
なぜなら、ネットワークアドレス、ブロードキャストアドレス、AWSの予約(ルーター、DNSサーバ、将来の利用)に使われるため。

例えば、「/28」の場合ホスト部は4ビットのため、利用できるIPは「16-5=11」IPしか利用できます。 

Direct Connectの接続要件

AWS Direct Connect を使用するには、ネットワークが以下のいずれかの条件を満たしている必要がある。

  • 1ギガビットイーサネットの場合は 1000BASE-LX (1310 nm) トランシーバー、10ギガビットイーサネットの場合は 10GBASE-LR (1310 nm) トランシーバー、100 ギガビットイーサネットの場合は 100GBASE-LR4 トランシーバーでシングルモードファイバーを使用する必要がある
  • ポートのオートネゴシエーションが無効になっている必要がある
    オートネゴシエーションがサポートされるのは、ポート速度が 1 Gbps の場合のみ
    ポート速度および全二重モードは手動で設定する必要がある

  • 802.1Q VLAN のカプセル化が、中間デバイスを含む接続全体でサポートされている必要がある
  • デバイスがボーダーゲートウェイプロトコル (BGP) と BGP MD5 認証をサポートしている必要がある

ネットワークの要件

ネットワークにおける各種上限値
  • NACL
名前 デフォルト上限値
VPC 当たりのネットワーク ACL の数 200
ネットワーク ACL 当たりのルールの数 20
  • BGP接続
名前 デフォルト上限値
プライベート仮想インターフェイスまたはトランジット仮想インターフェイスBGPのルート数 100(制限超えるとBGPがDownする)
パブリック仮想インターフェイスBGPルート数 1000
AWS Direct Connect のクォータ - AWS Direct Connect
AWS Direct Connect の制限について説明します。
ロードバランサーの比較

柔軟なアプリケーション管理が必要な場合は、Application Load Balancer の使用を推奨

非常に高度なパフォーマンスと静的 IP がアプリケーションで必要な場合は、Network Load Balancer の使用を推奨

特徴 - Elastic Load Balancing | AWS
ALBの色々なリクエストの振り分け

Application Load Balancerでは次のようなルールで振り分けが可能です。

  • HTTPヘッダ
  • HTTPリクエストメソッド
  • host-header
  • path-pattern
  • 文字列のクエリ
  • 送信元IP

使い分け方

ルール 動作
host-header ホスト名で振り分けが可能
複数のホストがいる時に利用する
path-pattern パス名で振り分けが可能
Direct Connectとサイト間 VPNの違い
項目 Direct Connect サイト間 VPN
接続 専用線 インターネット
料金 高い 安い
速度 最大100Gbps 最大1.25Gbpsのスループット
Direct Connect GatewayとTransit Gatewayの違い

Direct Connect GatewayとTransit Gatewayの使い分けが全然分からないと思ってましたが、ようやく理解できました。

そもそも、どちらのやり方でもオンプレと接続できるし、Transit GatewayはVPC間での通信もできるからTransit Gatewayだけでいいんじゃね?って思ってました。

よくよく構成を見てみると、どうやらオンプレとの接続部分が専用線かVPNかで違うんですね。

なので要件としては、次のような感じですかね?

要件 選択肢
オンプレと1つのVPCを安定した通信をしたい Direct Connect
オンプレと複数のVPCを安定した通信をしたい Direct Connect + Direct Connect Gateway
オンプレと複数VPCを安定した接続をして、VPC間でも通信したい Direct Connect + Direct Connect Gateway +Transit Gateway
VPC peeringはトランジット接続できない

VPC peeringはトランジット接続できない為、例えば、3つのVPC(A、B、C)があってVPC_AはVPC_B、VPC_CとVPC peering接続されている場合、接続できるVPCは次のようになる。

通信元 通信先 通信可否
VPC_A VPC_B 通信可
VPC_A VPC_C 通信可
VPC_B VPC_C 通信不可
EC2のifconfig/ipconfigをしてもElasticIPは見れない

AWSコンソールからはEC2に関連付けられているElasticIPは見れるが、ifconfig (Linux) または ipconfig (Windows) からはElasticアドレスは表示されない仕様。

EC2からインスタンスのElasticアドレスを確認したい場合は、インスタンスメタデータを使用する。

Route53のプライベートホストゾーンを使用する時の考慮事項

VPC設定:enableDnsHostnamesとenableDnsSupportを「True」にする

サブドメインの責任の委任:サブドメインの責任を委任する NS レコードをプライベートホストゾーンに作成することはできない

カスタム DNS サーバー:VPC 内のEC2インスタンスでカスタム DNS サーバーを設定した場合、プライベートDNSクエリをVPC用にAmazon が提供する DNS サーバーの IP アドレスにルーティングするようにDNS サーバーを設定する。IP アドレスは、VPC ネットワーク範囲のベースに「プラス 2」した IP アドレスです。例えば、VPC の CIDR 範囲が 10.0.0.0/16 である場合、DNS サーバーの IP アドレスは 10.0.0.2になる。

Route 53 ヘルスチェック

Route53のヘルスチェックはグローバルIPには使えるが、プライベートIPには利用できない。

DPD (Dead Peer Detection)とBFD(Bi-directional Forwarding Detection)の違い

DPDはIPSecの死活監視用。
「3回keepalive送ったけど応答がないからSAを消そう!!」って動きをする。

BFDは通信経路の障害を素早く検知して経路に切り替え用。
「あれ?いつものルートで障害が発生しているな。よし、別のルートに切り替えよう」って動きをする。

NAT Gatewayの特徴
  • 通信プロトコルとして TCP、UDP、ICMP をサポートする
  • IPv4 トラフィックしかサポートしていない
  • 5 Gbps の帯域幅をサポート。45 Gbps まで自動的に拡張する
  • 送信先別に最大 55,000 の同時接続をサポート
  • NACLは適用されるが、セキュリティグループは使えない
  • NAT ゲートウェイは、TCP または ICMP の IP フラグメンテーションをサポートしない
  • 350 秒以上アイドル状態のままになっていると、その接続はタイムアウトする
    回避策は350 秒未満の値で TCP キープアライブを有効にする

以上が気になった動作や用語でした。

まとめ

まだ、途中のため後ほど書きます。

以上です。ありがとうございました。

コメント

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