Azure環境でHub&Spoke構成のネットワーク構築（２．S2S VPN構築編）

前回のAzure Hub&Spoke構成の記事でAzureネットワークの構成、VNETとSubnetの作成、およびVNET peeringの設定について説明をしました。

https://qiita.com/SatoshiKaneshiro/items/f15182c964e5270fcdda

---

今回はAzureとオンプレ環境をSite-to-Site（S2S）のIPsec/IKE（IKEv1またはIKEv2）VPNで接続する構築を紹介します。オンプレ環境は自宅環境で代替します。（自宅環境にあるPCはすべて物理PCです）

Azureとオンプレ環境の接続はS2S以外にP2S（Point to Site）とExpressRouteがあります。一般的には個人端末を直接にAzureに接続するにはP2Sを使用します。帯域幅の確保、セキュリティ対策という意味で専用線のExpressRouteを使うケースも多いです。3者の比較資料は下記MSドキュメントに記載してあります。

https://learn.microsoft.com/ja-jp/azure/vpn-gateway/vpn-gateway-about-vpngateways#planningtable

では、早速環境の説明からはじめたいと思います。

---------
## ■ 前提条件
1. 下記環境構成にあるAzureのネットワーク構成（VNETとSubnet）は構築済み
1. オンプレ側のルーターはインターネットとの通信が可能
1. オンプレとAzure双方のBGP広報はしない

## ■ 環境構成
Azureのネットワーク構成は1回目の記事で作成したものの中のHubVNET×1とSpokeVNET×1を使用します。また、オンプレ（自宅環境）は左側に配置しています。オンプレのネット環境はNTT光ユニット＋Softbank光を使っていて、ルーターはSynology社のRT2600acとなります。
（このルータは同僚が使っているものでとても優秀です）

今回新規デプロイするリソースは２つです。
手順は以下通りです。

=========
1. VPN Gatewayのデプロイ
1. Local Network Gatewayのデプロイ
1. オンプレのルーター(Synology）での接続設定
1. VPN Gateway/LGNでの接続設定

=========
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/959d9031-33b5-7395-5c7b-3b5a67d6ecea.png)
|:-:|

---
## ■ 構築手順

### 【Step1】VPN Gatewayのデプロイ

#### 1. 仮想ネットワーク ゲートウェイの一覧画面を開く
Azure Portal上部の検索欄に"VPN"を入力し、検索結果から「仮想ネットワーク ゲートウェイ」を選択します。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/d34cd41d-6aa6-96f2-3b90-b9f6a307fe91.png)
|:-:|

#### 2. 新規作成
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/e3095368-edea-e07f-5182-6a681bfe5ba8.png)
|:-:|

#### 3. 「基本」情報入力
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/943a8419-0a99-4fec-4b3d-87479ad08e37.png)
|:-:|

**※ VPN GWのSKUのドキュメント**

https://learn.microsoft.com/ja-jp/azure/vpn-gateway/vpn-gateway-about-vpngateways#benchmark

↓
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/6e24d90c-2876-e609-faf7-6ee56b00f3c3.png)
|:-:|

#### 4. 確認及び作成
「タグ」は入力不要で、「確認および作成」画面で"検証に成功しました"を確認します。
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/76ececa3-64e0-f1a2-70cc-9e248837b88c.png)
|:-:|

↓
「作成」をクリックしてデプロイを開始します
※Gatewayのデプロイは結構時間がかかり、一般的には15分～25分を目安にして頂ければと思います。
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/0fbcc275-50e9-288c-2e15-acca3d8fcb47.png)
|:-:|

↓
#### 5. デプロイ完了
デプロイ後のVPN Gatewayの概要画面は下記通りです。「パブリック IPアドレス」はStep3でオンプレ側のルーターに設定するので、メモしておきます。
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/2d1773b9-381b-4d63-501f-8faaf619bcb1.png)
|:-:|

---

### 【Step2】Local Network Gatewayのデプロイ
これからLocal Network Gateway（LNG）を構築します。

LNGはオンプレ側のルーターおよびルート情報をVPN Gatewayに提供する仲介役のようなリソースだと個人的に思います。LNG自身はIPアドレスを持たないので、VPN GWと違ってVNETやSubnetに属しません。

#### 1. ローカル ネットワークゲートウェイの一覧画面を開く
Azure Portalのホーム画面で"local"を入力し、検索結果から「ローカル ネットワークゲートウェイ」をクリックします。
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/0b622a70-5ed0-6650-a8d7-07aafcee4b74.png)
|:-:|

#### 2. 新規作成
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/d7bb0ba7-0895-66ed-c206-64b7d400df10.png)
|:-:|

#### 3. 「基本」情報入力
基本情報入力の画面でRGとLNGの名称を決めたあとに、オンプレ側のパブリックIPとプライベートIPを入力する項目があります。

<font color="Red">※プライベートIPは場合によって複数のIP空間が存在することがあります。その場合はこのS2S VPNを経由してAzure側と通信したいすべてのIP空間のCIDRを追加してください</font>

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/89d7cc49-0f1f-ec01-cb56-c7cc0f4eb297.png)
|:-:|

**★ パブリックIPは不明な場合は下記URLにて確認できます。**

https://www.cman.jp/network/support/go_access.cgi

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/518ca302-9788-e2f1-9952-a89317292d3a.png)
|:-:|

#### 4. 「詳細設定」情報入力
次は「BGP設定の構成」ですが、今回はBGP広報を使わない想定なので割愛します。使用の場合はこの設定を"はい"に設定し、「自律システム番号（ASN）」と「BGPピアのIPアドレス」を入力する必要があります。

＜BGP設定しない場合＞
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/64b27702-65f9-194b-fdda-411b60767aec.png)
|:-:|

＜BGP設定する場合＞
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/e3d6d38a-2dca-7a15-309d-9a674283a0ec.png)
|:-:|

#### 5. 確認及び作成
検証結果は問題がなければ、「作成」ボタンをクリックします。
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/db3a0c47-7810-9ffd-def2-37ae211da71f.png)
|:-:|

#### 6. デプロイ完了
デプロイ後のLNGの概要画面ではオンプレ側のパブリックIP（項目「IPアドレス」）を確認できます。
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/ca14bacc-a03b-759b-1beb-d0636c1f7547.png)
|:-:|

---
### 【Step3】オンプレのルーター(Synology）での接続設定
これからオンプレ側のルーターのS2S設定を行います。

ルーターはメーカーが多く、それぞれの機能と画面は異なりますので、ここではあくまでも私が使用しているSynology社製の「RT2600ac」での設定手順を紹介します。

#### 1. ルーターのSite-to-Siteの設定画面を開く
Synologyの管理ポータルにログインします。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/0d203dc3-1727-1443-6ae9-ac50fb42ac0e.png)
|:-:|

↓
これはSynologyの管理ポータルのホーム画面ですが、対象アプリは「VPN Plus Server」となります。
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/7a7b632d-5599-27d9-2ca0-cb82a2e10dd2.png)
|:-:|

↓
「VPN Plus Server」をクリックして開きます。
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/ec08e6e8-3bba-6e45-a7fa-e3a3ea9f0038.png)
|:-:|

---
**＜参考＞**
もし、VPN Plus Serverはまだインストールされていない場合は「パッケージセンター」→ エクスプローラ「すぺて」→ VPN Plus Serverの操作順でインストールできます。
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/38b13be5-043b-0407-eb6d-eb1d55f43983.png)
|:-:|

↓
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/ffe69660-a74e-88ef-8a76-0c65472202e9.png)
|:-:|


#### 2. Site-to-Site接続の新規作成
サイドメニューの「Site-to-Site VPN」をクリックします。メイン画面で「追加」→「手動」の順をクリックします。
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/3dd0f6d0-778f-d27d-888d-edc1b846c96c.png)
|:-:|

#### 3. 「全般」情報入力
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/66db2856-4a90-03f6-8a58-d34fac4f2c9b.png)
|:-:|

↓
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/7432341e-1408-5cb4-d30e-cfb630dc7ffa.png)
|:-:|

#### 4. 「暗号化」情報設定
暗号化の設定は必要に応じて変更してもいいが、私の設定は下記通りになります。設定後に「OK」をクリックしてデプロイします。
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/0275aff5-d1fb-9055-e5e9-fa8bc6ab8d69.png)
|:-:|

#### 5. デプロイ後の状態
デプロイ後の「状態」は"接続中"となっています。その後のVPN Gateway側の接続設定が完了したら、状態が更新されます。
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/b2998382-cfa4-2df6-59d1-96b6302cfdda.png)
|:-:|

---

### 【Step4】VPN Gatewayでの接続設定
Step3でオンプレのルーター側の接続設定を行いました。次にAzureのVPN Gateway側の接続設定を行います。

接続設定画面はStep1でデプロイしたVPN Gatewayからでも、Step2でデプロイしたLNGからでもアクセスできます。

**＜VPN Gatewayの場合＞**
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/101b430e-b825-1c96-4fd3-ede6c619cd54.png)
|:-:|

**＜LNGの場合＞**
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/a2da6ab5-6e3e-77e1-a9a2-75b3e28d2475.png)
|:-:|

#### 1. 接続の追加
「追加」をクリックして接続設定画面を開きます。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/4e2eb897-647b-cac3-4a58-1012422f4a6d.png)
|:-:|

#### 2. 「基本」情報入力
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/e1239168-e69f-84a0-ac6f-78fc6c4d4715.png)
|:-:|

#### 3. 「設定」情報入力
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/76c94a31-7e94-f5b4-31b8-0c521ca970cf.png)
|:-:|

#### 4. 確認及び作成
「タグ」は入力不要で「確認および作成」画面で"検証に成功しました"を確認できたら、「作成」をクリックします。
<font color="Red">※ここで共有キーの中身はマスキングせずに表示されるので、ご注意ください。</font>
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/c199d05d-037f-d0c0-43c5-13e4de940aaa.png)
|:-:|

#### 5. デプロイ後の状態
デプロイ後にVPN GWまたはLNGの「接続」画面で接続状態が確認できます。場合によっては"接続済"になるまで多少のタイムラグがあるので、5分ほど経過してから再度確認したほうがいいかもしれないです。

概要画面の「状態」は"接続済"になっていることを確認できます。
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/20092599-0a23-d354-cf1d-6871c33f68bc.png)
|:-:|

---

### 【Step5】オンプレのルーターでS2S接続状態の確認
上記手順はすべて完了できたら、再度オンプレのルーター（Synology）のSite-to-Siteの画面に移動し接続状態を確認します。
※Step3でS2S接続をデプロイした直後の状態は"接続中"です。

接続状態は"接続済"になったことを確認できます。
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985687/7ebb1600-2704-0827-0cd2-7a3e69e6274f.png)
|:-:|

---

## ■ まとめ

以上でオンプレ側とAzure間のS2S VPN接続の設定手順を紹介しました。オンプレ側のルーターのメーカーと型番によって設定画面と項目は変わることがありますが、Azure側の設定は基本的に上記説明でいけると思います。

次回は今回設定した環境を使って、Azure Firewall（AFW）のデプロイとオンプレ⇔AzureのAFW経由の双方向通信の設定について紹介します。

引き続き、よろしくお願いいたします。

以上