CENとVPN-Gatewayを組み合わせて日中間のグローバルLAN環境を作ってみる!

皆さんはじめてまして。 昨年7月にSBクラウドへジョインしたSHUです。 人生初のテックブログ投稿です。 今回はネットワークプロダクトのCEN(Cloud Enterprise Network)と VPN-Gatewayを組み合わせた構成をご紹介します。

日々提案活動をしている中で、有り難いことに多くのお客様からネットワークプロダクトのご相談を受けることが多いため、今回はCENとVPN-Gatewayを組み合わせ、クライアントからCPEまでの日中間のLAN環境を簡易的に作成してみたいと思います。

CENとVPN-Gatewayのプロダクト詳細は以前の記事で紹介されているので、割愛させていただきます。

https://techblog.sbcloud.co.jp/2018/05/18/vpn-gateway-introduction/

https://techblog.sbcloud.co.jp/2018/08/01/cen-introduction/

今回、VPN-Gatewayは 上海-杭州 -> IPsec クライアントPC -> SSL-VPN

をそれぞれ使っていきたいと思います。

下記に ・利用想定構成 ・検証構成の完成図 ・ネットワーク確認項目 を載せておきます。

・利用想定構成

・検証構成の完成図

・ネットワーク確認項目

大まかな作業のステップを記載させていただきます。 少し長いですが、最後までお付き合いいただければ幸いです。

1.VPCの作成  1−1.東京にVPC/vSwitchの作成  1−2.上海にVPC/vSwitchの作成

2.ECSの作成  2−1.作成した東京vSwitch配下にECSインスタンスの作成  2−2.作成した上海vSwitch配下にECSインスタンスの作成  2−3.作成した杭州vSwitch配下にECSインスタンスの作成

3.CENの作成  3−1.CENインスタンスの作成  3−2.VPCのアタッチ  3−3.疎通確認

4.SSL-VPNの作成  4−1.VPN Gatewayインスタンスの購入  4−2.SSL Serverの作成  4−3.SSL 証明書の作成  4−4.クライアントPC(Mac)にTunnelblickのインストール  4−5.configファイルの設定  4−6.疎通確認

5.杭州リージョンの準備  5−1.杭州にVPC/vSwitchの作成  5−2.作成した杭州vSwitch配下にECSインスタンスの作成

6.VPN-Gatewayのデプロイ  6−1.杭州にVPN-Gatewayを作成  6−2.上海にVPN-Gatewayを作成  6−3.IPsecコネクションでトンネリングを作成  6−4.疎通確認

また、ルートテーブルの中のルートエントリを追加していくフローを割愛しています。 各VPCのエントリリストの完成形を載せますので、参考にしながら疎通確認時にルートテーブルにセグメント(CIDR)とネクストホップを設定ください。

加えて、CENをアタッチ時点で、双方のVPCのルートテーブルが自動で経路学習するものの、他のセグメントにも経路学習させるために、ルートステータスは必ず「公開」にしていただく必要があるので、ご注意ください。

1.VPCの作成 1−1.東京にVPC/vSwitchの作成 任意のVPC/vSwitchを作成します。 vSwitchのCIDRブロックは他のVPC内vSwitchと 重複するとコンフリクトし疎通しないのでご注意ください。

・VPC -> 名前:TOKYO-VPC-1 -> IPv4CIDRブロック:10.0.0.0/8

・vSwitch -> 名前:TOKYO-vSwitch-1 -> ゾーン:Tokyo Zone A -> IPv4CIDRブロック:10.0.0.0/24

1−2.上海にVPC/vSwitchの作成 同様に上海リージョンにもVPCを作成します。

・VPC -> 名前:SH-VPC-1 -> IPv4CIDRブロック:172.16.0.0/12

・vSwitch -> 名前:SH-vSwitch-1 -> ゾーン:Shanhai Zone A -> IPv4CIDRブロック:172.16.10.0/24

2.ECSの作成 2−1.作成した東京vSwitch配下にECSインスタンスの作成

先程作成したVPCのvSwithc配下にECSをデプロイします。

リージョン: アジア東北 1 ゾーン A (1) インスタンスタイプ : Burstable Type t5 / ecs.t5-lc1m1.small(1vCPU 1GiB) VPC:TOKYO-VPC-1 VSwitch : TOKYO-vSwitch-1 インスタンス名 : ECS-TOKYO システムディスク : Ultra クラウドディスク 20GiB イメージ : CentOS 7.6 64bit

2−2.作成した上海vSwitch配下にECSインスタンスの作成

同様に、上海VPC内にもECSをデプロイします。

リージョン : 中国東部 2 ゾーン A (1) インスタンスタイプ:汎用タイプ n1 / ecs.n1.tiny(1vCPU 1GiB) VPC : SH-VPC-1/ vpc-uf639ob4nuen84t9pxqgs VSwitch : SH-vSwitch-1/ vsw-uf6d0eyjv89f8hgk6xzcg/ 172.16.10.0/24 インスタンス名 : ECS-SH システムディスク : Ultra クラウドディスク 20GiB イメージ : CentOS 7.6 64bit

 

先程作成したインスタンス情報をおひかえください。

3.CENの作成

3−1.CENインスタンスの作成

続いて、CENインスタンスを作成していきます。 CENコンソールへ遷移いただき、CENインスタンスを作成します。 作成時にVPCをアタッチする際、ひとまず東京側のVPCをアタッチさせます。

3−2.VPCのアタッチ CENコンソールからインスタンスを作成します。

インスタンスが作成されたことを確認し、上海側のVPCをアタッチします。

問題なくVPCがアタッチできたことを確認します。

CENは自動で経路学習してくれるので、vRouterのルートテーブルにも 自動でアタッチしたvSwitchのCIDRが反映されます。とても楽ですね。

3−3.疎通確認

では東京VPCのECSから上海VPCのECSのプライベートIP向けにpingで疎通確認をしてみます。 ちなみにCENはデフォルトでping疎通できる程度の帯域があるので、気軽に検証してみることが可能です。

問題なくpingが通りましたね! 2つのVPCがアタッチされたことが確認できました。

4.SSL-VPNの作成 4−1.VPN Gatewayインスタンスの購入

では続いて、東京リージョンにVPN-Gatewayを作成します。 VPCコンソール下部から、VPN-Gatewayを選択します。

作成画面では先程作成した東京のVPCにVPN-Gatewayインスタンスを紐付ける必要があるので、ご注意ください。 また、SSL-VPNを有効化させた状態で購入いたします。 東京のVPN-GatewayではIPsecを利用しないので、IPsecは無効化にして問題ありません。

少し時間がかかるので、VPN-Gatewayが作成されるまで少し待機しておきましょう。 問題なく作成されましたね。

4−2.SSL Serverの作成

先程作成したVPN-Gatewayインスタンスを選択します。 ローカルネットワークには紐づけたVPCのCIDRブロックを入力します。ここでは、東京VPCと中国VPCのサブネットをローカルネットワークに入力します。クライアントサブネットはクライアント側が接続するセグメントを指定できます。

ここではクライアントセグメントを192.168.0.0/28とします。

問題なくSSL Serverが作成できましたね。

4−3.SSL 証明書の作成

次に、クライアント側にインストールする証明書を作成します。 先程作成したSSL Serverに紐付ける必要があるのでご注意ください。

 

忘れずに証明書をローカルPCにダウンロートしましょう。

4−4.クライアントPC(Mac)にTunnelblickのインストール

次に、クライアントPC(今回はMacで・・・)にクライアントソフトをインストールします。 リファレンスを貼っておきますので、ソフトのインストールや設定手順は下記をご参考ください。 https://matome.naver.jp/odai/2143512841677670101?page=2

4−5.configファイルの設定 一通り設定を終えられたら、.ovpnファイルダブルクリックもしくはTunnelblickにドラッグ&ドロップして設定しましょう。

4−6.疎通確認 TunnelblickでVPN接続している状態でクライアント(Mac)から東京VPCのECSプライベートIPまで疎通するか確認します。

無事疎通が取れましたね。 クライアントPCと東京VPCまでの間にLAN環境が構築できました。

またまた疎通確認してみましょう。 次は、TunnelblickでVPN接続している状態でクライアント(Mac)から上海VPCのECSプライベートIPまで疎通するか確認します。

上海ECSも問題ないですね! 順調順調。笑

5.杭州リージョンの準備 5−1.杭州にVPC/vSwitchの作成

次に、杭州リージョンにVPCを作成します。 後述しますが、杭州リージョンはあくまでもCPE想定なので、上海VPC -> 杭州VPCはIPsecでトンネリングします。

ではVPCを作成していきましょう。

・VPC -> 名前:Hanzhou-VPC-1 -> IPv4CIDRブロック:172.16.0.0/12 ・vSwitch -> 名前:Hanzhou-vSwitch-1 -> ゾーン:Hanzhou Zone A -> IPv4CIDRブロック:172.16.20.0/24

5−2.作成した杭州vSwitch配下にECSインスタンスの作成

そのままECSも作成しちゃいましょう。先程作成したVPC内にデプロイします。

リージョン: 中国東部1ゾーンB インスタンスタイプ : Burstable Type t5 / ecs.t5-lc1m1.small(1vCPU 1GiB) VPC:Hanzhou-VPC-1 VSwitch : Hanzhou-vSwitch-1 インスタンス名 : Hanzhou-ECS システムディスク : Ultra クラウドディスク 20GiB イメージ : CentOS 7.6 64bit

先程作成したインスタンス情報をおひかえください。

6.VPN-Gatewayのデプロイ 6−1.杭州にVPN-Gatewayを作成

東京に作成したのと同様の手順で、VPN-Gatewayを杭州リージョンにデプロイします。作成画面では先程作成した杭州のVPCにVPN-Gatewayインスタンスを紐付ける必要があるので、ご注意ください。 また、IPsecを有効化させた状態で購入いたします。 杭州のVPN-GatewayではSSL-VPNを利用しないので、SSL-VPNは無効化にして問題ありません。

6−2.上海にVPN-Gatewayを作成

杭州同様に、上海リージョンにもVPN-Gatewayを用意します。

6−3.IPsecコネクションでトンネリングを作成

では次に、杭州VPN-Gatewayと上海VPN-Gatewayの間にIPsecを張りましょう。

まずカスタマーゲートウェイを作成します。 杭州リージョンのVPN-Gatewayから見た、宛先のgatewayに当たるアドレス=上海VPN-GatewayのIPアドレスを入力します。

@杭州リージョン

@上海リージョン

カスタマーゲートウェイがセットできたら、IPsec connectionを作成います。 セグメントが複数あるため、ikev2で対応します。 事前共有キーは任意のものをご入力ください。(※今回は検証なので簡易的に設定してあります。) SAライフサイクルなどの設定値は、今回はデフォルトの設定値でいきます。

 

@杭州リージョン

@上海リージョン

問題なくフェーズ2まで成功し、緑のランプが点灯したら完了です!

6−4.疎通確認 では杭州リージョンのECSにログインし、上海ECSのプライベートIPまで疎通確認を取りましょう。

問題なくpingが通りましたね!

では最終確認です! クライアントPC(Mac)から下記の経路を通り杭州VPC内ECSのプライベートIPまで疎通をとってみます。

問題なく疎通ができました!

最後に

検証からだいたい1時間半ほどで、クライアントPCからCPEまでのグローバルLAN環境を構築することができました。 非常に簡単なコンソール操作だけで専用環境を構築できるので、皆さまも是非お試しください! 今回ご紹介させていただいたネットワークプロダクト以外にも、Alibaba Cloudでは多数のプロダクトを用意してありますので、是非他にもいろいろな組み合わせを試していただければと思います。

ではまた次回!