NTT東日本 クラウドゲートウェイ アプリパッケージのOEM向け環境を検証してみた
ども、大瀧です。
先日発表されたNTT東日本クラウドゲートウェイ アプリパッケージは、フレッツ回線とAWSとの閉域接続を提供する画期的なサービスですね!
クラウドゲートウェイ アプリパッケージにはAWS環境側をパートナー企業が提供するというOEMメニューがあり、この環境を評価する機会をいただきましたので、レポートしてみたいと思います。
クラウドゲートウェイ アプリパッケージとは
企業や組織の拠点LANとAWSを閉域で繋ぐためには、自社で閉域網を敷設する他にキャリアのIP-VPN網サービスと組み合わせるのが一般的です。キャリアのIP-VPN網サービスでは、下図のようにIP-VPN網自体の利用契約のほか、アクセス回線とDirect Connect接続といったオプション契約が必要です。
クラウドゲートウェイ アプリパッケージは、フレッツ地域網に直結するNTT東日本のAWS Direct Connect接続サービスです。既にフレッツ光回線を敷設している拠点であれば、IP-VPNの契約なしでAWS東京リージョンのVPCに接続することができます。また、対象のフレッツ光回線には、回線認証という回線単位のアクセス制限をVPC *1とセットで設定するため、他のフレッツユーザーが契約者のAWS環境にアクセスすることはできません。
2つの提供タイプ
クラウドゲートウェイ アプリパッケージは、AWS環境を含めてNTT東が提供する直販タイプと、Direct Connect接続サービス部分をパートナーにOEMし、パートナーが販売するOEMタイプがあります。クラスメソッドはパートナーとしてOEMタイプの提供準備を進めていますので、ご興味のある方はお問い合わせください。OEMタイプでは、フレッツ地域網に接続するEC2インスタンスとしてWindows ServerとAmazon Linuxが提供されます。
設計とデプロイ
では、OEMタイプでどんなAWS構成が組めるのか検証していきます。
VPCのIPアドレス帯域
2016年9月現在、Amazon VPCのCIDRはサービス申し込み時にNTT東より/24
の帯域が指定され、任意のCIDRを選択することはできません。フレッツ網からは別途アサインされるIPv6アドレス(後述)にアクセスするので、問題になることはあまり無いと思います *2。
Direct Connect接続の承諾
フレッツ網とVPCを結ぶDirect Connect接続は、一般に言う共有型です。NTT東所有のAWSアカウントからVirtual Interfaceが2つ払い出されるので、これを承諾(Accept)し、VPCにアタッチしているVGWを選択します。
Direct Connectからのルーティング設定はBGPで広告されるので、VPCのルーティングテーブルの伝達設定が「はい」になっていることを確認しましょう。
IPv6アドレスの確認
EC2インスタンスは、Windows/Linuxそれぞれ初期設定が含まれたCloudFormationテンプレートを展開して作成します。 EC2からフレッツ網へのIPv6アクセスは、Direct Connect接続の先にあるNTT東のISATAPルーターとISATAPトンネルを確立して行います。
ISATAPトンネルインターフェースには、以下の形式でIPv6アドレスが設定されます。
<NTT東から提供されるIPv6プレフィックス>:0:5efe:<インスタンスのPrivate IP(IPv4)アドレス>
例(IPv6プレフィックスが2001:db8::/64、Private IPが10.216.0.101の場合): 2001:db8::0:5efe:10.216.0.101
Linuxの場合は初期設定により/etc/rc.local
ファイルに以下が記載され、毎起動時に/sbin/ip
コマンドが実行されます。
#!/bin/sh # # This script will be executed *after* all the other init scripts. # You can put your own initialization stuff in here if you don't # want to do the full Sys V style init stuff. touch /var/lock/subsys/local /sbin/ip tunnel add sit1 mode isatap local 10.216.0.101 /sbin/ip tunnel prl dev sit1 prl-default 192.168.103.254 /sbin/ip addr add 2001:db8::0:5efe:10.216.0.101/64 dev sit1 /sbin/ip link set sit1 up /sbin/route add -A inet6 default gw 2001:db8::0:5efe:192.168.103.254 sit1
sit1
がISATAPインターフェース名ですね。他のサービスに比べて起動時に実行する順番が遅いので、sit1
インターフェースの活性化に依存するサービスを利用する場合は注意が必要です。
$ ls -l /etc/rc3.d/S99local lrwxrwxrwx 1 root root 11 6月 21 20:10 /etc/rc3.d/S99local -> ../rc.local $
Windowsでは、ユーザーデータによって初回起動時にISATAPの設定が静的に投入されます。ISATAPインターフェースの設定はGUIでは確認できないことに注意しましょう。コマンドプロンプトでnetsh
ユーティリティなどで確認します。
C:\Users\Administrator> netsh interface ipv6 show addresses インターフェイス 1: Loopback Pseudo-Interface 1 アドレス種類 DAD 状態 有効期間 優先有効期間 アドレス ------------ ----------- ---------- ------------ --------------------- その他 設定 infinite infinite ::1 インターフェイス 14: isatap.ap-northeast-1.compute.internal アドレス種類 DAD 状態 有効期間 優先有効期間 アドレス ------------ ----------- ---------- ------------ --------------------- Manual 設定 infinite infinite 2001:db8:0:0:5efe:10.216.0.102 その他 設定 infinite infinite fe80::5efe:10.216.0.102%14 インターフェイス 13: ローカル エリア接続* 11 アドレス種類 DAD 状態 有効期間 優先有効期間 アドレス ------------ ----------- ---------- ------------ --------------------- Public 設定 infinite infinite 2001:0:5ef5:79fb:309c:14bb:53e7:ff99 その他 設定 infinite infinite fe80::309c:14bb:53e7:ff99%13 インターフェイス 12: イーサネット アドレス種類 DAD 状態 有効期間 優先有効期間 アドレス ------------ ----------- ---------- ------------ --------------------- その他 設定 infinite infinite fe80::4877:3c02:d790:1c2e%12 C:\Users\Administrator>
フレッツ網に接続する拠点のルーターではIPv6を有効にし、拠点LANのクライアントにIPv6アドレスが配布されることを確認しましょう。クライアントからEC2のIPv6アドレスを直に入力して接続するのは人類にはツラいと思いますので、必要に応じてDNSのAAAAレコードをIPv6アドレスに設定し、利用するのが良いでしょう。
なお、RDSやELBなどVPCに配置するAWSのマネージドサービスはISATAPトンネルを構成することができないため、フレッツ網からVPC内のそれらにIPv6で接続することはできません。
ファイヤーウォールの設定
Amazon VPCにはセキュリティグループとネットワークACLというフィルタ機能がありますが、フレッツ網からEC2へのトラフィックはISATAPトンネルを経由するため、それらの機能で対応することができません。iptablesなどOSのファイヤーウォール機能や市販のファイヤーウォール製品の利用を検討しましょう。
IPv4で接続するために
IPv4の拠点LANとVPCを相互接続したい、AWSのマネージドサービスを本サービス経由で使いたいという場合もあるかと思います。そんなときは、フレッツのIPv6網上にIPv4接続を確立するIPIP(IPv4 over IPv6)トンネルを検討することができます。拠点ルータとEC2間でIPIPトンネルを確立し、双方のネットワークのIPv4ルーティングを向けることで相互接続を実現します。拠点からの*.amazonaws.com
の名前解決をできるようにすれば、マネージドサービスへの接続も可能です。以下のブログ記事が参考になります。
まとめ
クラウドゲートウェイ アプリパッケージのOEMタイプについて解説してみました。Direct Connectを安価に利用できるサービスですので、制約や構成に気をつけつつ上手く活用していきたいですね。