AWS 専用線アクセス体験ラボ ハンズオントレーニングで学んだことをまとめた

2019.09.25

おはようございます、もきゅりんです。

ちょっと前にハンズオンに参加してきました。

AWS 専用線アクセス体験ラボトレーニング

その後、用語などよくわからない点を再度調べて、整理もかねて記事としました。

ハンズオンそのものの紹介というよりは、ハンズオンで学んだことの整理とまとめです。

当ハンズオンに関して、最初に結論を述べさせていただければ、

Direct Connectって資料読んだりしても、何だかわかったような、わからんような...

でもわかるようになりたいなあ、という方は、「受けない理由が無い」ぐらいのハンズオントレーニングでした。

なお、ハンズオンの記事に関しては、過去の弊社記事にこのようなものがあります。

AWS専用線アクセス体験ラボ ハンズオントレーニング 参加レポート

【完全無料】AWS公式の専用線アクセス体験ハンズオンラボがごっつ良かった件

泣く子も黙るハマコーさんのブログで記載されている、おすすめポイントが、いやまさに!と、膝を叩くようなものだったので再掲させていただきます。

おすすめポイント1「Direct Connectの設定の一連の流れを把握できる」

一連の設定を自分の手で触って設定することで、どのように接続されているかのイメージがちゃんと作られました。

実際に自分の手で設定するというのは、百聞を凌駕します。

おすすめポイント2「ルーターコマンドを体験できる」

オンプレ側の設定が体験できるというのが良かったです。

おすすめポイント3「少人数参加者のなかでプロフェッショナルにあれこれ質問できる」

TAの方々が本当に親切で、快く質問に応答してくださるので、安心して進められます。 また、ちょっと気になったことや些細な質問でも真摯に明確に対応して下さいます。

まとめ「無料で質が高く専用線接続を体験するには最高のハンズオン」

いや、ホントその通りでした!間違いないです!

はい、おしまい。

...いや、これだとハマコーさんをわっしょいするだけのブログになってしまうので、ハンズオンで対応した内容と自分が学習した点をまとめていきます。

下記内容は、2019年9月に筆者が参加した時の内容を元に記載しております。ハンズオンの内容は今後も変わる可能性があることをご了承ください。

用語など

ASN(Autonomous System Number) :

自律システム番号のこと。(以下AS) ASに関しての詳細の定義については、RFC 1930に記載されていますが、イメージとしては、地方自治体です。それぞれの自治体で条例(ルーティングポリシー)を制定して運営されます。世界中の膨大なネットワーク内に、地方自治体(AS)が存在しており、各自治体に対して番号(ASN)が振られているというイメージです。それぞれの地方自治体で連絡網を敷いており、連絡を取り合っています。

BGP(Border Gateway Protocol):

上記、AS間のルーティングプロトコル。ASNを使ってルーティングします。BGPというプロトコルを使ってルーティングするルーターをBGPスピーカーといいます。

イメージとしては、地方自治体間の連絡手段をBGP、連絡網がBGPスピーカーと考えられます。

ピア :

自組織のBGPルータと接続先のBGPルータ間で経路の交換を行う設定のこと。ピアが確立した後は、経路情報を伝達するためのメッセージを定期的に交換し、お互いの持つ経路情報を保持、更新し続けます。VPCピアリングのピアですね。

AS_PATH属性 :

BGPでは、通過してきた経路情報のASNリストを作成します。そのリストのことです。 通常、同じ宛先への経路が複数ある場合、最短ルートを選択します。

また、ピアからメッセージを受け取った時にAS_PATH属性に自分のASNを含む経路は全て無視します。このことによりルーティングループを防ぐことができます。 つまり、自組織のASNと接続先のASNは同一だとダメということです。

なお、AWSではVGWの作成時にASNを設定します。そのASNが、AWS側のASNということになります。(ただし、後述しますが、DXGWを利用する場合は、DXGWのASNがAWS側のASNになります。)

2019年6月30日以降に作成されたVGWは、全リージョンでASNのデフォルトが64512です。

ハンズオンでやること

  • オンプレミスのサーバから、AWSのVPC内のサーバのプライベートIPに対してpingする
  • AWSのVPC内サーバから、オンプレミスのサーバのプライベートIPに対してpingする
  • DXGWを使って、オンプレミスのサーバから、AWSの別リージョンにあるVPC内のサーバのプライベートIPに対してpingする
  • DXGWを使って、AWSの別リージョンにあるVPC内のサーバから、オンプレミスのサーバのプライベートIPに対してpingする

全体像

作成していく環境です。

summary image

ハンズオンの流れ

  1. Self DXlabへのユーザ登録およびラボ環境作成
  2. 踏み台用VPC1環境の作成 / Virtual interfacesの承認
  3. VPC2環境の作成
  4. DXGWの作成 / Virtual interfacesの承認 VPCの設定
  5. オンプレミス側のルーターでDirect Connectの設定
  6. シンガポールリージョンのVPC作成とDXGW接続
  7. 動作確認

1. Self DXlabへのユーザ登録およびラボ環境作成

用意されたポータルサイトでユーザ登録を行って、ハンズオンで利用する環境を作成します。

ユーザ登録すると、IDが発行され、そのIDをVLAN-IDなどのリソース識別値としてハンズオンで利用されます。

なお、(自分は)何だかわからないうちに、ここでVIFが払い出され、Virtual Interfaces画面に確認待ちのVIFが出来てしまった、という印象でした。

vif build

TAの方に確認したところ、やっていることとしては、ポータルサイトで入力した情報を元にAPIを利用して、AWS Direct Connect パートナーからDirect Connectのホスト接続リクエストを自身のAWSアカウントに対して行っているようです。

AWS Direct Connect パートナー

実際にAWS Direct Connect 専用接続をリクエストする場合は、利用する予定のデータセンターを選択して接続を作成します。

connection setup1

connection setup2

接続を作成すると、そのリクエストが本当かどうかを確認するために、AWSからサインアップ時に使用した Eメールアドレスに送信されます。

確認に応答すると、AWS が Letter of Authorization and Connecting Facility Assignment (LOA-CFA) がダウンロード可能になるようです。

そのLOA(管理画面だとLoa)を元に、AWS Direct Connect パートナーまたはプロバイダが物理的な配線工事を行います。

connection setup3

完了すると、接続コンソールのrequestedが"available"になります。

connection setup4

その後、必要な項目を入力してVIFを作成します。

ここまでの対応を、ハンズオンという時間の制約上、自動で作成されています。

2. 踏み台用VPC1環境の作成 / Virtual interfacesの承認

こんな感じでどこの箇所を対応するかを明示してくれます。

env setup1

指定のCFnテンプレートでVPC、踏み台サーバ、VIFを接続するためのVGWを構築します。

ちなみに、VIFの状態推移は、pending -> down -> availableです。

(自分はdownしているのを見て、大丈夫?!って少し焦りました。)

3. VPC2環境の作成

setup2

VPC、VGW、EC2インスタンスを手動で作成していきます。

VGWをVPCにアタッチさせて、Route Tableにルーティング追加していきます。 VGWの宛先はオンプレミスです。

4. DXGWの作成 / Virtual interfacesの承認 VPCの設定

そもそもDirect Connect Gateway(DXGW)とは

setup3

DXGWを作成して、VGWとDirect Connectとに関連付けます。

最初に作成されて、確認待ちだった、2つのVIFを承認して、DXGWに接続します。

なお、前述しましたが、DXGWを利用する際は、DXGWがAWS側のASNとなりますので、DXGWのASNと接続先のASNとが重複しないように注意して下さい。

(DXGWに接続されるVGWのASNは同一でも特に支障ありません。)

Tokyo

tokyo vgw

Singapore

singapore vgw

5. オンプレミス側のルーターでDirect Connectの設定

AWSのVPC内の踏み台サーバからオンプレミスの踏み台に接続して、Juniper vSRXまたはCisco CSRのルータにログインして設定します。

下記はJuniper vSRXの図です。

onpre setup

ここはテキストに記載されたある通りに進めるだけで、自分には詳細は分かりませんでした。

とりあえず接続の設定を行っているという実感は湧きました。

ネットワークに精通している方だと楽しいひと時だと思われます。

6. シンガポールリージョンのVPC作成とDXGW接続

singapore vpc

VPC、サーバー、VGWをCFnテンプレートで作成します。

DXGWと、テンプレートで作成されたVGWを関連付けます。

7. 動作確認

確認例

ping test

冒頭、やること で記載した内容を確認します。

DXGWってすごいなあ、、、とアホのように感動しました。

参考情報として、1つのVPCに対して複数のBGPパスがある場合のトラフィックエンジニアリングの紹介もあって、もうお腹がいっぱいです。

なお、講師の方が(専用接続でなく)VPNでも良いから、冗長接続の設定については口すっぱくして推奨されておりました!!

楽しく、ためになるハンズオン(そして無料!)でした!!

以上です。

どなたかのお役に立てば幸いです。

参考: