みなさんこんにちは。先日、Alibaba Cloudとの接続例が公開されていましたので、IPsecでVPN接続しつつ、LAN内のマシンとECS (Elastic Compute Service)との間で相互に疎通が取れることを検証してみました。
今回の検証に用いたネットワーク構成
今回の検証は、以下図のようにVPC側は192.168.0.0/24、RTX830設置拠点は192.168.10.0/24というシンプルなネットワーク構成で行いました。RTX830のWAN側は、固定IPアドレスが/32で振られており、RTX830のLAN1のIPアドレスは192.168.10.1とします。
※ 実際のAlibaba Cloud VPCのアーキテクチャはVSwitch、ゲートウェイ、コントローラーの3つのコンポーネントで構成されていますが、ここでは図示を省略します。
Alibaba Cloud で VPC を作成する
Alibaba Cloudにログインし、VPCを作成します。
VPC作成
ログイン後、「製品(プロダクト)」->「ネットワークサービス」->「Virtual Private Cloud」の順にクリックします。
VPCのリージョンを日本(東京)に、「VPCの作成」をクリックします。
VPC作成時のパラメータを投入します。
パラメータの投入例は以下の通りです。
VPC
必須|任意 | パラメータ | 備考 | |
名前 | 必須 | YAMAHA-TEST-VPC | VPCであることがわかりやすいネーミングがよいです |
CIDR | 必須 | 192.168.0.0/16 | VPCが作成された時点で、CIDRを変更することはできません。 |
説明 | 任意 | – | – |
VSwitch
必須|任意 | パラメータ | 備考 | |
名前 | 必須 | YAMAHA-TEST-VSwitch | VSwitchであることがわかりやすいネーミングがよいです |
ゾーン | 必須 | Asia Pacific NE 1 Zone A | プルダウンから選択可能な中から、日本(東京)のゾーンを選びます |
CIDR | 必須 | 192.168.0.0/16 | VPCが作成された時点で、CIDRを変更することはできません。 |
説明 | 任意 | – | – |
ここまで投入したパラメータに問題がなければOKをクリックし、次の画面で「完了」をクリックします。

VPN Gateways作成
VPC作成後、VPNゲートウェイを作成します。
VPNゲートウェイ作成画面では、以下のパラメータを投入します。
基本設定 | リージョン | 日本 (東京) を選択する |
インスタンス名称 | (VPNゲートウェイであることがわかりやすい名前) | |
VPC | 先程構築したVPCを選択sする | |
ピーク帯域幅 | 10Mbps か 100Mbps から選択する | |
機能設定 | IPsec-VPN | 有効化 |
SSL-VPN | 無効化 | |
購入プラン | 請求サイクル | 時間別 |
「今すぐ購入」をクリック後、「注文の確認」画面へ遷移しますので、「利用規約とSLAに同意する」にチェックを入れ、「有効化」をクリックします。
「発注は完了しました」画面へ遷移するので、「コンソール」をクリックします。
コンソールへ戻った後、「プロダクトとサービス」から「Virtual Private Cloud」をクリックします。
再度「VPN Gateways」からステータスを確認してみます。VPNゲートウェイは作成に時間がかかりますので、作成直後のステータスが準備中でも、一旦先に進みます。
Customer Gateway作成
VPNゲートウェイの次に、カスタマーゲートウェイを作成します。画面左の「Customer Gateways」をクリックします。
次に「カスタマー ゲートウェイ」画面に遷移するので、「カスタマーゲートウェイの作成」をクリックします。
ここで、カスタマーゲートウェイの名前と、RTX830設置拠点のグローバルIPアドレスを入力します。
作成後、表示されているIPアドレスが正しいことを確認して、次へ進みます。
IPsec Connections作成
次に、画面左側「IPsec Connections」をクリックし、IPsecコネクションを作成します。
パラメータの投入例は以下の通りです。
必須|任意 | パラメータ | 備考 | |
名前 | 必須 | YAMAHA-TEST-IPsecConnection | IPsec接続であることがわかりやすい名前にするとよいでしょう。 |
VPN Gateway | 必須 | 先ほど「VPN Gateways作成」で作成したものを選択します。 | – |
カスタマーゲートウェイ | 必須 | 先ほど「Customer Gateway作成」で作成したものを選択します。 | – |
ローカルネットワーク | 必須 | 192.168.0.0/24 | VPC作成時に決定したパラメータを投入します。 |
リモートネットワーク | 必須 | 192.168.10.0/24 | RTX830設置拠点のネットワークを投入します。 |
直ちに有効 | 選択必須 | はい | – |
高度な構成 | 必須 | 右側にスライドする | – |
事前共有鍵 | 必須 | 任意の文字列 | |
バージョン | – | Ikev1 | デフォルト値 |
ネゴシエーションモード | – | Main | デフォルト値 |
暗号化アルゴリズム | – | aes | デフォルト値 |
認証アルゴリズム | – | sha1 | デフォルト値 |
DHグループ | – | group2 | デフォルト値 |
SAライフサイクル (秒) | – | 86400 | デフォルト値 |
すべてのパラメータを投入してOKをクリックします。IPsec Connectionsの画面に戻ると「IKE トンネルネゴシエーションのフェーズ1 失敗」と表示されますが、これはまだRTX830側の設定を投入していないためですので、ここでは無視して先に進みます。
VPNゲートウェイ IPアドレス確認
RTX830側の設定に必要なため、VPNゲートウェイのIPアドレスを確認します。
VPN Gatewaysをクリックし、VPNゲートウェイの一覧から、IPアドレスの列を控えておきます。
RTX830側 VPN設定
次にRTX830側のVPN設定を行います。あらかじめ次の3点のパラメータを確認しておきましょう。
- RTX830側 グローバルIPアドレス
- VPNゲートウェイ グローバルIPアドレス
- 事前共有鍵
以下、投入するコマンドを列挙します。IPアドレスおよび事前共有鍵の行は適宜置き換えてください。また、事前共有鍵に特殊文字を含む場合は、ダブルクォートで囲ってあげましょう。
# NATの設定 nat descriptor type 1 masquerade nat descriptor address outer 1 N.N.N.N # RTX830設置拠点のグローバルIPアドレス nat descriptor masquerade static 1 2 192.168.10.1 udp 500 nat descriptor masquerade static 1 3 192.168.10.1 esp nat descriptor masquerade static 1 4 192.168.10.1 udp 4500
# DHCPの設定 dhcp service server dhcp server rfc2131 compliant except remain-silent dhcp scope 1 192.168.10.2-192.168.10.191/24
# ゲートウェイの設定 ip route 192.168.0.0/24 gateway tunnel 1
# VPN(IPsec)の設定 tunnel select 1 description tunnel “Alibaba Cloud” ipsec tunnel 1 ipsec sa policy 1 1 esp aes-cbc sha-hmac ipsec ike encryption 1 aes-cbc ipsec ike group 1 modp1024 ipsec ike hash 1 sha ipsec ike keepalive use 1 off ipsec ike local address 1 192.168.10.1 ipsec ike local id 1 192.168.10.0/24 ipsec ike nat-traversal 1 on ipsec ike payload type 1 3 ipsec ike pfs 1 on ipsec ike pre-shared-key 1 text “****************” # 事前共有鍵 ipsec ike remote address 1 N.N.N.N # アリババクラウド VPCのグローバルIPアドレス ipsec ike remote id 1 192.168.0.0/24 ip tunnel tcp mss limit auto tunnel enable 1
# VPN(IPsec)の設定 (共通項目) ipsec auto refresh on |
config投入後 save コマンドで保存します。
ECS (Elastic Compute Service) インスタンス作成とルーティング設定
ECSのインスタンスを作成する
LAN内のPCと疎通試験をするため、ECSのインスタンスを1台、最低限のスペックで構築します。コンソールから「Elastic Compute Service」をクリックし、次の画面で「インスタンスを作成」をクリックします。
今回はすぐに使い捨てるインスタンスにしますので、「従量課金」を選択します。
vCPUは1を、メモリは0.5GBを選択します。
イメージのプラットフォームはCentOS、バージョンは7.4 64bitを選択し、「次のステップ : ネットワーク」をクリックします。
ネットワークは、先ほど作成したVPCとVSwitchを選択し、セキュリティグループではICMPプロトコルと22,3389ポートにチェックが入っていることを確認し、「次のステップ : システム構成」をクリックします。
デフォルトではキーペアですが、今回は一時的なインスタンスということもあり、パスワード認証を選択し、パスワードを打ち込んで「次のステップ : グループ化」にすすみます。
ここでは任意の名前をつけ、「次のステップ : プレビュー」にすすみます。
「ECS SLAと利用規約に同意する」にチェックを入れ、「インスタンスの作成」をクリックします。
インスタンスが作成されはじめましたので、コンソールに戻ります。
ルーティングの設定を行う
さて、ECSのインスタンスは起動しましたが、IPsec Connectionsの接続ステータスでは「IKE トンネルネゴシエーションのフェーズ2 成功」になっているにもかかわらず、つまりVPNの疎通が取れているにもかかわらず、SSH接続ができません。
これまでの設定ではルーティングを行っていなかったので、アクション列にある「ルーティンググループの設定」をクリックします。
ここでは、ECSに関連付けられたセキュリティグループを使用するので、あらかじめコンソールから確認しておきましょう。
投入するパラメータは以下の通りです。
項目 | パラメータ | 備考 |
セキュリティグループ | sg-XXXX | ECSに関連付けられたセキュリティグループをプルダウンメニューから選択 |
ルールの方向 | イントラネット入力 | |
権限付与ポリシー | 許可 | |
プロトコルタイプ | すべて | |
ポート | -1 | |
優先度 | 1 | |
認証タイプ | アドレス | |
ENIタイプ | 内部 | |
許可されたIPアドレス | 192.168.10.0/24 | プルダウンメニューから選択 |
これらパラメータを投入後、「確定」ボタンをクリックします。
接続試験
まずは、RTX830からECSインスタンスに向けてPingを飛ばしてみます。ご覧の通り、応答があることがわかります。
次に、LAN内のWindows10上のWSL (Windows Subsystem for Linux) 環境 Ubuntu 18.04から、ECSインスタンスにSSH接続してみましょう。ご覧のように問題なくログインできました。
さらに、ECSから、RTX830設置拠点LAN内にあるLinuxマシンへSSH接続してみましょう。こちらも問題なくログインできました。
いかがでしたでしょうか。Alibaba CloudのVPC、VPN構築は ユーザー固有のパラメータを除きほぼ初期値のままで、そしてRTX830側の設定もわずか28行追加するだけで、簡単にVPN接続ができました。Alibaba Cloudとヤマハルーターの組み合わせは、越境ECを手がける企業にとって魅力的なソリューションではないでしょうか。
関連記事
- なかせのコラム ヤマハのコラム 更新情報
ヤマハ株式会社が「Interop Tokyo 2023」に出展!SCSKも参加予定です!
- さくらのコラム ヤマハのコラム 更新情報
ヤマハ出展の「第14回 EDIX(教育総合展)東京」 訪問レポート
- おがわのコラム ヤマハのコラム 技術コラム
ヤマハNWファンミーティング2023 Spring @Youtubeライブ アンケートQ&A その3
- かとうのコラム コラム はじめてのヤマハUTX ヤマハのコラム 更新情報
はじめてのヤマハUTX 第3回 ~UTXシリーズ紹介②~
- かとうのコラム コラム はじめてのヤマハUTX ヤマハのコラム 更新情報
はじめてのヤマハUTX 第3回 ~UTXシリーズ紹介①~