Direct Connectを利用して専用線経由でS3やDyamoDBへアクセスする (AWS Direct Connect のパブリック接続)
エンタープライズ ソリューションアーキテクトの吉田です。
オフィスやデータセンターなどのオンプレミスの拠点とAWSを専用線で接続するサービス"AWS Direct Connect"ですが、今回は"パブリック接続"についてご紹介します。Direct Connectは、VPC上で作成したサブネットとの通信だけでなく、S3やDynamoDBといった従来インターネット経由でアクセスしていたAWSクラウド上のサービスも、Direct Connectの専用線を経由して直接通信することができます。 図のように、DirectConnectはそれぞれ通信先によって2種類に分かれます。
赤が今回解説するパブリック接続となります。 一例として、S3へのファイルアップロード・ダウンロードをDirect Connect経由でVPC上のEC2インスタンスを介して行っているケースもありますが、パブリック接続を利用することで直接通信可能となります。
動作の仕組み
パブリック接続は、お客様のオンプレミス環境にあるルータとAWSのインターネットルータを接続します。パブリックIPアドレスを使って、AWSとお客様のネットワークを直接接続し、他のプロバイダのネットワークを経由しないプライベートピア接続を行うことになります。AWSクラウド上のリソースとの通信はパブリックIP経由で行う必要があります。オンプレミスのプライベートIPアドレス上のノードから通信される場合は、プライベートIPアドレスのままでは通信できないため、通信したいホストにパブリックIPアドレスを割り当てるか、ルータの出口でNATを設定してください。 パブリックIPアドレスを割り振る方法は2つあり、すでに自社で保持しているパブリックIPアドレスをご利用する方法と、パブリックIPアドレスをお持ちでない場合はAWSからアドレスを払い出す方法があります。
保持しているパブリックIPアドレスを利用する場合
オンプレミスのルータとAWSのインターネットルータ間はBGP(Border Gateway Protocol)により接続し、ルート交換を行います。パブリック接続のBGPピアでは、AWSからはDirect Connectが接続されているリージョン内のAWSクラウド上で利用されているプレフィックスが広告されます。また、オンプレミスからはパブリック接続に利用するパブリックIPアドレスのプレフィックスを広告します。※:図中のAWS側のAS番号"7224"は現時点で東京リージョンで利用されている番号です。今後変更となる可能性もあり、他のリージョンは異なるAS番号となりますので、ご利用の前に現在利用中のAS番号をご確認ください。最新のAS番号はDirectConnectのVirtual Interface設定中のサンプルコンフィグレーションよりご確認いただけます。また、他のリージョンは異なるAS番号となります。
パブリック接続に必要な情報は以下となります。
設定項目 | 内容 |
---|---|
AS番号 | 組織ごとのネットワークを識別するための番号(Autonomous System番号)。DirectConnectのルーティングで採用されているBGP(Border Gateway Protocol)の設定で利用します。パブリックASとプライベート2種類があり、パブリックASはパグリックIPと同じようにJPNICなどの各団体から割り当てられ、プライベートは64512~65534の範囲の任意の値を利用することができます。 |
BGP認証キー | BGPで利用されている認証キー。BGP接続の両端のルータで同じキーを利用する必要があります。任意の6文字以上の文字列が指定可能です。 |
VLAN番号 | DirectConnectの物理線を論理的に区切るためのID。1つのDirectConnect接続の中でユニークである必要があります。通常ネットワークで利用されているVLANと同じく、1~4096の任意の値を利用することができます。 |
ルータ間IPアドレス | AWSルータとオンプレミス側のルータ同士が通信するためのIPアドレス。パブリックIPである必要があります。IPアドレスを節約するため/31でも可能ですが、ルータ側でRFC3021に対応している必要があります。 |
広告ネットワークアドレス | ブリック接続で利用するためのオンプレミス側のパブリックIPが含まれるネットワークアドレス。 |
パブリック接続では、広告ネットワークアドレスの設定が必要となります。また必要なIPアドレス(ルータ間接続、広告ネットワークアドレス)はすべてパブリックIPである必要があります。
通常のDirectConnectと同様に、AWS側とオンプレミス側でそれぞれ設定が必要です。
マネージメントコンソールの設定
プライベート接続と同じように、マネージメントコンソールの[Services]-[DirectConnect]-[Virtual Interface]の"Create Virtual Interface"から設定を行います。設定画面の一番上部にあるPrivate/Publicのボタンから"Public"を選択してください。その後、各設定を環境に合わせて設定してください。
オンプレミス側ではDirectConnectに接続しているルータの設定を行います。以下はCisco Systems社ルータの設定例となります。ご利用の環境に合わせて設定してください。
! interface GigabitEthernet 1 description "public-dx" encapsulation dot1Q <VLAN番号> ip address <ルータのIPアドレス> <ネットマスク> ! router bgp 65001 neighbor <AWSのVGW IPアドレス> remote-as 7224 neighbor <AWSのVGW IPアドレス> password <BGP認証キー> network <広告ネットワークアドレス>
AWSから割り当てられたパブリックIPアドレスを利用する場合
AWSからのパブリックIPアドレス割り当てをご希望の場合、AWSサポートが受付窓口となりますので、ご利用のアカウントからサポートにご連絡をお願いします。
サポート受付窓口はこちらAWSから払い出すパブリックIPアドレスは/31となり、2個のIPアドレスのみとなります。こちらのIPアドレスはAWSとオンプレミス間のBGP接続にご利用ください。また、広告ネットワークアドレスも/31のアドレスを設定し、AWSクラウドへ向かうトラフィックをオンプレミスのルータ側のIPアドレスでNATすることで通信が可能となります。 以下の設定例をご紹介します。AWSから203.0.113.0/31のアドレスを払いだされた場合の設定例となります。
項目 | 内容 |
---|---|
AS番号 | 65001 |
VLAN番号 | 100 |
AWSから払い出されたパブリックIPアドレス | 203.0.113.100/31 |
AWS側ルータのIPアドレス | 203.0.113.100 |
ルータのIPアドレス | 203.0.113.101 |
オンプレミス側のネットワークアドレス | 192.168.10.0/24 |
BGP認証キー | aws99999 |
同じようにマネージメントコンソールとオンプレミスのルータ設定について見て行きましょう。
マネージメントコンソールの設定
広告ネットワークアドレス(Prefixes you want to Advertise)は203.0.130.0/31のAWSから割り当てられたIPアドレスを設定します。
オンプレミスの設定
DirectConnectが接続されているインタフェースGigabitEthernet1にて、オンプレミスネットワークの192.168.10.0/24をNATするように設定します。また、GigabitEthernet1はVLANを設定するためにサブインタフェース1.100を設定しております。
! interface GigabitEthernet 1.100 description "public-dx" encapsulation dot1Q 100 ip address 203.0.113.101 255.255.255.254 ip nat outside ! interface GigabitEthernet 2 description "onpremise network" ip address 192.168.10.1 255.255.255.0 ip nat inside ! router bgp 65001 neighbor 203.0.113.100 remote-as 7224 neighbor 203.0.113.100 password aws99999 network 203.0.113.100/31 ! ip nat inside source list 10 interface GigabitEthernet 1 overload ! access-list 10 permit 192.168.10.0 0.0.0.255
最後に
既存のDirectConnectにもVirtual Interfaceを追加するだけで簡単にご利用いただけます。今までAWSクラウドのリソースへの通信経路で悩んでいた方は、ぜひご利用ください。
実際にDirect Connectを事前に検証したい方のために、「AWS 専用線アクセス体験ラボ」を開催しております。随時トレーニングも開催しておりますので、ぜひともご利用ください!
AWS 専用線アクセス体験ラボ吉田
コメント