[新サービス] SORACOM Doorを試してみた #scd2016 #soracom
市田です。
本日開催されているイベント「SORACOM Discovery2016」にて発表された新サービス「SORACOM Door」を早速試してみたので、そのレポートをしたいと思います。
本記事はテストフェーズの環境で検証したものです。サービスのベータ/プレビューフェーズとは仕様が異なる場合があります
SORACOM Doorって?
こんなことができるようになります。
これまでのSORACOM Canalでは、VPCピアリングで自分のVPC環境とセキュアに接続することができましたが、VPCピアリングの為、異なるリージョン間では接続することができませんでした。
今回発表されたSORACOM Doorを使うと、SORACOMのVPCと自分のVPCをインターネットVPN経由で接続することができるので、異なるリージョン間でも利用することができるようになりました。
SORACOM Doorを確認するまでの流れ
- 自分のVPCにカスタマーゲートウェイとしてのVPNインスタンスを構築
- VyOS用にElatsic IPを払い出してSORACOM側でVPN Connectionを作成(ルータコンフィグを生成してダウンロード)
- 疎通確認用のインスタンスを作成(VyOS経由でアクセス)
- 3Gドングル経由でプライベートIPで上記インスタンスに接続確認
VPC環境の構築
下記のような環境を用意します。VPCは簡単にデフォルトVPCで作ってます。
VyOSインスタンスの作成
MarketplaceからVyOSインスタンスを作成します。インスタンスが作成できたら、まずは下記を設定しておきます。
- Elastic IPの付与
- SORACOM側にカスタマーゲートウェイとして登録する為です。
- 送信元/送信先チェックの無効化
VyOSバージョンアップ
MarketplaceのVyOSバージョンはバグがあるので、最新版にアップデートします。
VyOSにはvyosユーザでログインします。
ssh -i <VyOSインスタンスのSSH鍵> vyos@<VyOSのElastic IP>
最新バージョンをダウンロードしてバージョンアップします。
vyos@VyOS-AMI:~$ add system image http://packages.vyos.net/iso/release/1.1.7/vyos-1.1.7-amd64.iso
ここまでの状態では、まだver1.1.0のままです。デフォルトでver1.1.7として起動するように再起動します。
vyos@VyOS-AMI:~$ show system image The system currently has the following image(s) installed: 1: VyOS-1.1.7 (default boot) 2: 1.1.0 (running image)
VyOSを再起動します。
vyos@VyOS-AMI:~$ reboot Proceed with reboot? (Yes/No) [No] y
コンンフィグ投入
次にSORACOM側でVPN接続を作成して、VyOSのコンフィグをダウンロードします。
ダウンロードしたコンフィグは下記を修正します。
(変更前) set vpn ipsec site-to-site peer ***** local-address [VyOSのEIP] set protocols bgp 65000 network 0.0.0.0/0 (変更後) set vpn ipsec site-to-site peer ***** local-address [VyOSのプライベートIP] set protocols bgp 65000 network 172.31.0.0/20
今回は、VyOSを設置するサブネットがデフォルトVPCの為、アドバタイズするネットワークを上記のようにしていますが、設置するサブネットに合わせて修正してください。
ルーティングテーブルの設定
SORACOM側への戻りのルーティングがVyOSになるように設定します。
下記の図の「ターゲット」にvyosを指定します。「送信先」のSORACOM側のIPは自分の環境用のものを設定してください。
VPN接続の確認
VPN環境の設定が完了したら、VyOSからVPN接続の状況を確認します。
下記のように「State」が「up」になっていることを確認します。
vyos@VyOS-AMI:~$ show vpn ipsec sa Peer ID / IP Local ID / IP ------------ ------------- xx.xx.xx.xx 172.31.2.9 Description: VPC tunnel 1 Tunnel State Bytes Out/In Encrypt Hash NAT-T A-Time L-Time Proto ------ ----- ------------- ------- ---- ----- ------ ------ ----- vti up 4.3K/4.2K aes128 sha1 no 924 3600 all Peer ID / IP Local ID / IP ------------ ------------- xx.xx.xx.xx 172.31.2.9 Description: VPC tunnel 2 Tunnel State Bytes Out/In Encrypt Hash NAT-T A-Time L-Time Proto ------ ----- ------------- ------- ---- ----- ------ ------ ----- vti up 28.1K/27.3K aes128 sha1 no 2120 3600 all
apインスタンスの作成
最後に構成図にある「ap」インスタンスを作成します。
このインスタンスに対してSORACOM Door経由で疎通できることを確認したいだけなので、Amazon Linuxで構築します。中身は何も触っていません。
3Gドングル
ここまではVPCの設定でしたが、いよいよ本題に入っていきます。
今回は、自分のPCからSORACOM経由でapインスタンスにアクセスできることを確認したいので、SORACOMにアクセスできる3Gドングルを用意します。
早速ですが、今回はエイビット社のドングル「AK-020」を使いました。
AK-020ドングルSORACOMスターターキット5,980円で販売を始めました! - SORACOM Blog
中にはSORACOMのSIMを入れてます。
ドングルのセットアップは各環境毎に行ってください。
Mac OS XのEl Capitanを利用の場合は下記が参考になるかと思います。
AK-020 を Mac OS X 10.11 (El Capitan) で使う - Qiita
SORACOM Doorを試す!
それでは、実際にアクセスしてみたいと思います。
(上記リンクにあるドングルのセットアップが完了しているものとします。)
SORACOMに接続する
私のMacの環境では、ドングルをUSBポートに挿す度に「AK-020 Dialer」がCD-ROMとしてマウントされるので、これを取り出します。
次に接続アプリの「AK-020 Dialer」を起動して、右下の表示が「NTT DOCOMO」に変わるまで待ちます。最初は「ドングルが見つかりません」と表示されています。
表示が変わったら「AK-020 Dialer」はそのままにしておいて、OS の「システム環境設定」>「ネットワーク」を選択します。
ここで「USB Modem Port」を選択して、「接続」をクリックします。
接続が完了するとSORACOM側からプライベートIPが割り当てられます。
SORACOM DoorでVPCにアクセスする
これで準備が整いました。
下記のように、自分のPCからVPC上にあるapサーバにプラベートIPでアクセスできることを確認できれば完了です。
最後に
これまでは、自分のVPCをSORACOMと繋ぐ時は同じリージョン間に限られていましたが、SORACOM Doorを使えば、どこのリージョンでも自由に接続することができるようになりました。
まさに「どこでもドア!」といった感じですね。
以上になります。