自由気ままに書いちゃおう

好きなことをつらつらと・・・

【Azure】サイト間接続(S2S)の作成

過去の記事からの続きです。

www.guri2o1667.work

本記事の位置づけは上記記事の補足です。
(特にオンプレ側のVPN機器の設定については割愛していたので、本記事ではそこも記載しております。)

 

■はじめに

Azureの仮想ネットワーク(Vnet)とオンプレ環境を接続する際の、VPN接続について記載しております。(いわゆるサイト間接続です。)
そのため、ExpressRouteについては記載しておりません。。。

■大きな流れ

Azure環境で実施することとオンプレ側で実施することがあります。
その際の大きな流れは以下の通りです。
6のみオンプレ側の作業です。
1.仮想ネットワークとサブネットの作成(Azure)
2.DNSサーバの指定(Azure、オプション設定)
3.ゲートウェイサブネットの作成(Azure)
4.VPN Gatewayの作成(Azure)
5.ローカルネットワークゲートウェイの作成(Azure)
6.VPNデバイスの構成(オンプレ)
7.VPN接続の作成(Azure)

上記手順6と手順7は順番が逆でも大丈夫です。

各手順の概要は以下の通りです。
1.仮想ネットワークとサブネットの作成(Azure)
  ⇒ Vnetと仮想マシンを配置するためのサブネットの生成

2.DNSサーバの指定(Azure、オプション設定)
  ⇒ 名前解決を実施したい場合のみ実施

3.ゲートウェイサブネットの作成(Azure)
  ⇒ ルーティング用仮想マシンのサブネットを作成

4.VPN Gatewayの作成(Azure)
  ⇒ ルーティング用仮想マシンの生成

5.ローカルネットワークゲートウェイの作成(Azure)
  ⇒ オンプレ側のIPアドレス帯やグローバルIPアドレスを設定

6.VPNデバイスの構成(オンプレ)
  ⇒ オンプレ側のVPNデバイスの設定

7.VPN接続の作成(Azure)
  ⇒ VPN接続情報を設定


■1.仮想ネットワークとサブネットの作成(Azure)

割愛します。ただ、オンプレ側とAzure環境側で重複するIPアドレス帯は利用ができないため、事前にIPアドレス設計としてどの範囲のIPアドレスを利用するかは決めておいた方が良いです。

■2.DNSサーバの指定(Azure、オプション設定)

VPN接続するための必須設定ではありません。
ただ、Azure環境のホスト名を名前解決したい場合には、DNSサーバの設定(プライベートDNSゾーン)が必要です。

■3.ゲートウェイサブネットの作成(Azure)

VPN接続/ExpressRoute接続を実施する際には必須のサブネットです。
作成する際は、「仮想ネットワーク」>「サブネット」から「ゲートウェイサブネット」をクリックします。

f:id:guri2o1667:20211214133142p:plain

作成画面は以下の通りです。
※「名前」は固定です。また他の設定項目は通常のサブネットと同じです。

f:id:guri2o1667:20211214133204p:plain

次の手順4にて説明しますが、ゲートウェイサブネットを作成する理由は、ゲートウェイサブネットにルーティング用の仮想マシンを生成するためです。
※仮想マシンとはいえ、直接操作することはできません。あくまで手順4により自動的にルーティングテーブルが生成されます。

■4.VPN Gatewayの作成(Azure)

VPN接続/ExpressRoute接続を実施する際に必須の設定です。
Azureポータル上では、以下の通り検索すると表示される「仮想ネットワークゲートウェイ」というものがVPN Gatewayにあたります。
※用語の表記を統一してほしい。。。

f:id:guri2o1667:20211214133932p:plain

Azure VPN Gateway について | Microsoft Docs


VPN Gatewayですが、「VPN用」と「ExpressRoute用」の2種類があります。
そのため、「VPNも使うし、ExpressRouteも使う」というケースの場合、VPN Gatewayは見た目上2つ存在することになります。
仮想ネットワーク(Vnet)にアタッチできるVPN Gatewayは「VPN用」「ExpressRoute用」でそれぞれ一つずつです。
「VPN用」「ExpressRoute用」で用意したVPN Gatewayの内容によって、ゲートウェイサブネット(手順3で生成した)にルーティング用の仮想マシンが展開される流れとなります。
VPN Gateway設定時にパブリックIPアドレスが必要となり、VPN Gateway生成時に用意することもできますし、事前に作成した既存のものを利用することもできます。

大事なのでもう一度記載してしまいますが、
VPN Gatewayはあくまでゲートウェイサブネット上のルーティング用仮想マシンを「どういった設定(VPNなのかExpressRouteなのか、SKU)で展開するか」を設定する箇所です。
そのため、設定画面は以下のようになっております。
※「ゲートウェイの種類」でVPNかExpressRouteか選べますし、SKUも選べます。また、パブリックIPアドレスも新規/既存で選べます。

f:id:guri2o1667:20211214140250p:plain

f:id:guri2o1667:20211214140301p:plain


作成完了までに15分~20分かかりました。

■5.ローカルネットワークゲートウェイの作成(Azure)

Azureポータルで以下の通り検索すると表示されます。

f:id:guri2o1667:20211214140933p:plain

「ローカルネットワークゲートウェイ」はオンプレ側の情報を入力します。

設定画面は以下の通りです。

f:id:guri2o1667:20211214141123p:plain

「インスタンスの詳細」欄で記載の「IPアドレス」はオンプレ側のVPNデバイスのIPアドレスもしくはFQDNを指定します。
「アドレス空間」はオンプレ側のネットワーク範囲を指定します。

BGPの利用有無についても、下記の通り設定する箇所があります。

f:id:guri2o1667:20211214141537p:plain

f:id:guri2o1667:20211214141552p:plain

前述の通り、ローカルネットワークゲートウェイはオンプレ側の情報を入力するための設定箇所ということを忘れなければ何となく設定内容も想像がつくかと。

■6.VPNデバイスの構成(オンプレ)

この項目はオンプレ側での作業です。手順1~5はAzure側での設定(準備)だったのでここでやっとオンプレ側のVPN機器の設定に移ることになります。

とはいえ、オンプレ側のVPN機器についてはデバイスやメーカーごとに設定値が異なるため、以下のように「VPNデバイス構成スクリプト」をマイクロソフトで用意してくれています。
設定を一から書いてもいいですが、こういうスクリプトを利用するのも一つの手です。

S2S VPN 接続用の VPN デバイス構成スクリプトをダウンロードする - Azure VPN Gateway | Microsoft Docs

どのVPNデバイスでも
① 共有キー(PSK)
② VPN GatewayのパブリックIPアドレス(=ゲートウェイサブネットに用意されているルーティング用仮想マシンのIPアドレス)
が設定値として入ってくることは共通です。

①ですが、オンプレ側とAzure側で同じ文字列情報を設定できていればよいため、任意の英数字を使います。

■7.VPN接続の作成(Azure)

手順6でオンプレ側のVPN機器の設定も完了しているため、
Azure側でVPN接続

Azureポータルで以下の通り検索して表示される「接続」がVPN接続設定で利用するAzureサービスです。

f:id:guri2o1667:20211214142734p:plain

f:id:guri2o1667:20211214143749p:plain

f:id:guri2o1667:20211214143800p:plain

 

■まとめ

最後に各手順で何をやっているのかを再掲いたします。


1.仮想ネットワークとサブネットの作成(Azure)
  ⇒ Vnetと仮想マシンを配置するためのサブネットの生成

2.DNSサーバの指定(Azure、オプション設定)
  ⇒ 名前解決を実施したい場合のみ実施

3.ゲートウェイサブネットの作成(Azure)
  ⇒ ルーティング用仮想マシンのサブネットを作成

4.VPN Gatewayの作成(Azure)
  ⇒ ルーティング用仮想マシンの生成

5.ローカルネットワークゲートウェイの作成(Azure)
  ⇒ オンプレ側のIPアドレス帯やグローバルIPアドレスを設定

6.VPNデバイスの構成(オンプレ)
  ⇒ オンプレ側のVPNデバイスの設定

7.VPN接続の作成(Azure)
  ⇒ VPN接続情報を設定

以上です。

 

www.guri2o1667.work

www.guri2o1667.work

www.guri2o1667.work

www.guri2o1667.work

www.guri2o1667.work

www.guri2o1667.work