仮想VPNルータ(VyOS)を使用してAzureとのSite-to-Site接続ができているので、Azure側の複数のVnetにHub&Spokeで接続する設定を行ってみます。
仮想ネットワークゲートウェイのあるVnetをハブとして、接続先の仮想マシンが配置してあるVnetをスポークとしたものです。
ハブとスポークのVnet間はピアリング設定で行います。大規模なネットワークの場合はネットワークマネージャーで簡単に設定ができますが、課金の関係で使用していません。
ネットワーク構成
Azure側のサーバの配置がVPNゲートウェイと異なったVnetとしています。
ローカルネットワークゲートウェイの設定
AzureのLocal Network Gatewayが意識しているのは、ネットワーク構成の赤字の箇所です。
エンドポイント | FQDN | IPアドレスを直接指定する場合は「IPアドレス」 |
FQDN | ダイナミックDNSで取得した | 今回はドメイン名を指定してみました |
アドレス空間 | 自宅側のサーバのネットワーク | 複数のセグメントがある場合は追加 |
仮想ネットワークゲートウェイの設定
ゲートウェイの種類 | VPN | VPNゲートウェイの作成 |
VPNの種類 | ルートベース | 接続が安定している |
SKU | Basic | 課金の関係 |
接続の設定
接続の種類 | サイト対サイト(IPsec) | IKE/IPsec接続 |
共有キー(PSK)の値を決めるのに迷ったらこのサイトを参考にしてください。
強力な事前共有キーの生成
ピアリングの設定
VPNゲートウェイのあるハブとなる仮想ネットワークから設定する方がやりやすい。
ハブの仮想ネットワークを開き「ピアリング」を選択します。
mada
まだ何も登録されていないので「追加」します。
ハブとスポークの情報を一緒に設定します。
ハブの「この仮想ネットワークのゲートウェイまたはルートサーバーを使用する」がポイントです。
全てのスポークとのピアリングを定義していきます。
スポーク側の仮想ネットワークにはハブとのピアリングが登録されています。
ルーティングの確認
スポークに配置した仮想マシンのネットワークインターフェイスの「有効なルート」を確認すると、自宅側ネットワークへ仮想ネットワークゲートウェイ経由で接続されることが確認できます。
VyOSの設定例(ルートベース、IKE v2)
VPNの設定箇所
set vpn ipsec esp-group AZURE compression disable
set vpn ipsec esp-group AZURE lifetime 3600
set vpn ipsec esp-group AZURE mode tunnel
set vpn ipsec esp-group AZURE pfs dh-group2
set vpn ipsec esp-group AZURE proposal 1 encryption aes256
set vpn ipsec esp-group AZURE proposal 1 hash sha1
set vpn ipsec ike-group AZURE dead-peer-detection action restart
set vpn ipsec ike-group AZURE dead-peer-detection interval 15
set vpn ipsec ike-group AZURE dead-peer-detection timeout 30
set vpn ipsec ike-group AZURE ikev2-reauth yes
set vpn ipsec ike-group AZURE key-exchange ikev2
set vpn ipsec ike-group AZURE lifetime 28800
set vpn ipsec ike-group AZURE proposal 1 dh-group 2
set vpn ipsec ike-group AZURE proposal 1 encryption aes256
set vpn ipsec ike-group AZURE proposal 1 hash sha1
set vpn ipsec ipsec-interfaces interface eth0
set vpn ipsec site-to-site peer 20.XXX.XXX.158 authentication mode pre-shared-secret
set vpn ipsec site-to-site peer 20.XXX.XXX.158 authentication pre-shared-secret (Azureと同じ文字列)
set vpn ipsec site-to-site peer 20.XXX.XXX.158 default-esp-group AZURE
set vpn ipsec site-to-site peer 20.XXX.XXX.158 ike-group AZURE
set vpn ipsec site-to-site peer 20.XXX.XXX.158 local-address 192.168.10.250
set vpn ipsec site-to-site peer 20.XXX.XXX.158 tunnel 1 local prefix 192.168.200.0/24
set vpn ipsec site-to-site peer 20.XXX.XXX.158 tunnel 1 remote prefix 172.16.0.0/16(スポークの仮想ネットワークを全て含んでいること)
ハブにも仮想マシンを配置している場合は、ハブとスポークの合わせたネットワークを指定します。この例では、172.0.0.0/8 といった設定になります。
コメント