仮想ルータ構築 2(vyos・その他のG/W)

3層Webシステム

本番サイト・ゲートウェイの構築

構成概要

本番サイト・ゲートウェイの構成は以下の通りです。

設定項目設定値
仮想ルータ名rt011(MASTER)
rt012(BACKUP)
本番サイト外側IPアドレス172.16.1.111/24(rt011)
172.16.1.112/24(rt012)
172.16.1.110/24(仮想)
本番サイト内側IPアドレス172.16.10.1/24(rt011)
172.16.10.2/24(rt012)
172.16.10.254/24(仮想)

仮想マシン作成

以下の設定で仮想マシンを作成してvyosをインストールします。

設定項目仮想ルータ(MASTER)仮想ルータ(BACKUP)
仮想マシン名(ホスト名)rt011rt012
ネットワークアダプタ1 ポートグループESXi Rooting NetworkESXi Rooting Network
ネットワークアダプタ2 ポートグループProduction MG Pub NetworkProduction MG Pub Network

参考:仮想マシン作成

参考:vyosインストール

本番サイト・ゲートウェイ外側インターフェース設定

ESXiブラウザ・コンソールからvyosアカウントでOSにログインします。

編集モードに遷移、本番サイト・ゲートウェイ外側のインターフェース(eth0)にIPアドレスを割り当ててデフォルトゲートウェイを設定します。

【rt011で設定】
-----------------------------------------------------------------------------
# 編集モードに移行
configure

# eth0にIPアドレスとサブネットマスク長を設定
set interfaces ethernet eth0 address 172.16.1.111/24


# デフォルトゲートウェイにESXiゲートウェイ内側の仮想IPアドレスを設定
set protocols static route 0.0.0.0/0 next-hop 172.16.1.10


# 設定変更を確定
commit


-----------------------------------------------------------------------------
【rt012で設定】
-----------------------------------------------------------------------------
configure
set interfaces ethernet eth0 address 172.16.1.111/24
set protocols static route 0.0.0.0/0 next-hop 172.16.1.10
commit

ESXiゲートウェイの構築ではこの段階でPCから仮想マシンにping疎通することができましたが、本番サイト外側のネットワーク・アドレス(172.16.1.0/24)がどこにあるのかをPCも室内のルータも知らないため、パケットが届きません。

どちらかのルーティングテーブルに経路情報を追加すればよいのですがルータに設定すると(戻りの経路が定義されて)ESXiゲートウェイ以外の仮想マシンからも自由にインターネットに接続できるようになってしまいます。これはあまりよろしくないのでPC側にESXi内部のネットワークへの経路情報を設定します。

管理者モードでPCのコマンドプロンプトを立ち上げてルーティング・テーブルにスタティック・ルートを追加します。

【PCで実行】
-----------------------------------------------------------------------------
route add 172.16.0.0 mask 255.255.0.0 192.168.11.200 -p

route printコマンドで追加したスタティック・ルートを確認します。

【実行結果】
-----------------------------------------------------------------------------
C:\WINDOWS\system32>route print
===========================================================================
Interface List
・・・
===========================================================================

IPv4 Route Table
===========================================================================
・・・
===========================================================================
Persistent Routes:
Network Address Netmask Gateway Address Metric
172.16.0.0 255.255.0.0 192.168.11.200 1
===========================================================================

IPv6 Route Table
===========================================================================
・・・
===========================================================================
Persistent Routes:
None

C:\WINDOWS\system32>

PCからrt011、rt012にpingを飛ばして疎通確認を行い、問題がなければブラウザ・コンソールに戻ってsshの有効化とホスト名を設定します。

【rt011で設定】
-----------------------------------------------------------------------------
# sshを有効化
set service ssh

# ホスト名を指定
set system host-name rt011

# 設定変更を確定
commit

# 設定を保存
save

-----------------------------------------------------------------------------
【rt012で設定】
-----------------------------------------------------------------------------
set service ssh
set system host-name rt012
commit
save

teratermを立ち上げてvyosアカウントでrt011(172.16.1.11)、rt012(172.16.1.12)にログインします。

teratermでログインできたらESXiのブラウザコンソールは不要です。exitコマンドを繰り返し入力してOSからログアウト、右上化の”×”ボタンをクリックしてブラウザコンソールを閉じます。

残りの作業をteratermで実行します。VRRPグループ を作成して通信を冗長化します。

【rt011で設定】
-----------------------------------------------------------------------------
# 編集モードに遷移
configure

# VRRPグループvlan11(vrid 11)を定義
set high-availability vrrp group vlan11 vrid 11

# vlan11のインターフェースにeth0を設定
set high-availability vrrp group vlan11 interface eth0

# 仮想ルータ接続用IPアドレスを定義
set high-availability vrrp group vlan11 address 172.16.1.110/24

# プライオリティを設定
set high-availability vrrp group vlan11 priority 200

# アドバタイズ間隔(秒単位)を設定
set high-availability vrrp group vlan11 advertise-interval 1

# 設定変更を確定
commit

-----------------------------------------------------------------------------
【rt012で設定】
-----------------------------------------------------------------------------
configure
set high-availability vrrp group vlan11 vrid 11
set high-availability vrrp group vlan11 interface eth0
set high-availability vrrp group vlan11 address 172.16.1.110/24
set high-availability vrrp group vlan11 priority 100
set high-availability vrrp group vlan11 advertise-interval 1
commit

rt011、rt012から仮想IPアドレス(172.16.1.110)にping疎通できることを確認します。

本番サイト・ゲートウェイ内側インターフェース設定

本番サイト・ゲートウェイ内側インターフェースにIPアドレスを割り当てて通信を冗長化します。

【rt011で設定】
-----------------------------------------------------------------------------
set interfaces ethernet eth1 address 172.16.10.1/24
set high-availability vrrp group vlan21 vrid 21
set high-availability vrrp group vlan21 interface eth1
set high-availability vrrp group vlan21 address 172.16.10.254/24
set high-availability vrrp group vlan21 priority 200
set high-availability vrrp group vlan21 advertise-interval 1
commit



-----------------------------------------------------------------------------
【rt012で設定】
-----------------------------------------------------------------------------
set interfaces ethernet eth1 address 172.16.10.2/24
set high-availability vrrp group vlan21 vrid 21
set high-availability vrrp group vlan21 interface eth1
set high-availability vrrp group vlan21 address 172.16.10.254/24
set high-availability vrrp group vlan21 priority 100
set high-availability vrrp group vlan21 advertise-interval 1
commit

設定した各IPアドレスにping疎通確認を行い、問題がなければ設定を保存して編集モードを終了します。

【rt011、rt012で実行】
-----------------------------------------------------------------------------
ping -c 2 172.16.10.1
ping -c 2 172.16.10.2
ping -c 2 172.16.10.254

save
exit

VRRPの状態を確認します。rt011がMASTER、rt012がBACKUPとなっていればOKです。

【rt011、rt012で実行】
-----------------------------------------------------------------------------
show vrrp

vlanの同期グループを設定します。

【rt011、rt012で設定】
-----------------------------------------------------------------------------
# 編集モードに遷移
configure

# 高可用性VRRPの編集
edit high-availability vrrp

# 同期グループMAINのメンバーにvlan11を設定
set sync-group MAIN member vlan11

# 同期グループMAINのメンバーにvlan21を設定
set sync-group MAIN member vlan21

# 設定変更を確定
commit

# 設定を保存
save

DNS設定

本番サイト・ゲートウェイのDNSを設定してフォワーダを構成します。

【rt011で設定】
-----------------------------------------------------------------------------
# 仮想ルータのDNSにESXiゲートウェイを設定
set system name-server 172.16.1.11

# 仮想ルータのDNSにESXiゲートウェイを設定
set system name-server 172.16.1.12

# DNSクエリ転送先に仮想ルータ自身のDNSを設定
set service dns forwarding system

# DNSクエリのリスニングアドレスを指定
set service dns forwarding listen-address 172.16.10.254

# DNSクエリのリスニングアドレスを指定
set service dns forwarding listen-address 172.16.10.1

# DNSクエリのクライアント許可
set service dns forwarding allow-from 172.16.10.0/24

# 設定変更を確定
commit


-----------------------------------------------------------------------------
【rt012で設定】
-----------------------------------------------------------------------------
set system name-server 172.16.1.11
set system name-server 172.16.1.12
set service dns forwarding system
set service dns forwarding listen-address 172.16.10.254
set service dns forwarding listen-address 172.16.10.2
set service dns forwarding allow-from 172.16.10.0/24
commit

NSLOOKUPでNICT公開NTPの名前解決ができることを確認します。

【rt011、rt012で実行】
-----------------------------------------------------------------------------
nslookup www.yahoo.co.jp

NTP設定

NTPサーバにrt001、rt002、優先NTPサーバにrt002を設定してNTPを構成します。

【rt011、rt012で設定】
-----------------------------------------------------------------------------
# NTPの設定を削除
delete service ntp

# 上位NTPサーバを指定(172.16.1.12に優先して時刻同期)
set service ntp server 172.16.1.11
set service ntp server 172.16.1.12 prefer

# 設定変更を確定
commit

chronyを再起動して時刻同期の状況を確認します。

【rt011、rt012で実行】
-----------------------------------------------------------------------------
sudo su - -c 'systemctl restart chrony.service'
chronyc sources


-----------------------------------------------------------------------------
【rt011実行結果】
-----------------------------------------------------------------------------
vyos@rt011# sudo su - -c 'systemctl restart chrony.service'
[edit]
vyos@rt011# chronyc sources
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^- 172.16.1.11 2 6 17 34 -44us[ -44us] +/- 4071us
^* 172.16.1.12 2 6 17 35 +2800ns[+2264ns] +/- 3939us
[edit]
vyos@rt011#

rt002との時刻同期が正常にできていることを確認できたら設定を保存します。

【rt011、rt012で実行】
-----------------------------------------------------------------------------
save

DRサイト・ゲートウェイの構築

構成概要

DRサイト・ゲートウェイの仮想ルータは1台ですが、将来のスケールアウトを考慮してVRRPを設定します。

設定項目設定値
仮想ルータ名rt021(MASTER)
DRサイト外側IPアドレス172.16.1.121/24(rt021)
172.16.1.120/24(仮想)
DRサイト内側IPアドレス172.16.20.1/24(rt021)
172.16.20.254/24(仮想)

仮想マシン作成

以下の設定で仮想マシンを作成してvyosをインストールします。

設定項目仮想ルータ(MASTER)
仮想マシン名(ホスト名)rt021
ネットワークアダプタ1 ポートグループESXi Rooting Network
ネットワークアダプタ2 ポートグループDRSite MG Pub Network

参考:仮想マシン作成

参考:vyosインストール

DRサイト・ゲートウェイ構築

本番サイト・ゲートウェイ(rt011)の設定値を次のように読み替えてDRサイト・ゲートウェイを構築します。

設定項目rt011設定値rt021設定値
interfaces ethernet eth0 address172.16.1.111/24172.16.1.121/24
system host-namert011rt021
eth0/ vrrp group(vrid)vlan11(11)vlan12(12)
vrrp group vlan1x address172.16.1.110/24172.16.1.120/24
interfaces ethernet eth1 address172.16.10.1/24172.16.20.1/24
eth1/ vrrp group(vrid)vlan21(21)vlan22(22)
vrrp group vlan2x address172.16.10.254/24172.16.20.254/24
dns forwarding listen-address172.16.10.1172.16.20.1
dns forwarding allow-from172.16.10.0/24172.16.20.0/24

クライアント接続用仮想ルータの構築

構成概要

クライアント接続用用仮想ルータ一は1台のみで冗長化を行わずNTPも構成しません。インターフェースのIPアドレスとデフォルトゲートウェイ、DNSのみ設定します。

仮想マシン作成

以下の設定で仮想マシンを作成してvyosをインストールします。なお、ここまで構築した仮想ルータのネットワーク・アダプタは2個でしたが、クライアント接続用仮想ルータには4個のネットワーク・アダプタを搭載します。

設定項目設定値
仮想マシン名rt111
ネットワークアダプタ1 ポートグループCompany Area1 Network
ネットワークアダプタ2 ポートグループCompany Area2 Network
ネットワークアダプタ3 ポートグループCompany Area3 Network
ネットワークアダプタ4 ポートグループESXi Rooting Network

参考:仮想マシン作成

参考:vyosインストール

クライアント接続用仮想ルータ設定

仮想マシンのインストール後、以下の通り設定して保存します。

【rt111で設定】
-----------------------------------------------------------------------------
configure
set interfaces ethernet eth0 address 172.16.110.1/24
set interfaces ethernet eth1 address 172.16.120.1/24
set interfaces ethernet eth2 address 172.16.130.1/24
set interfaces ethernet eth3 address 172.16.1.222/24
set protocols static route 0.0.0.0/0 next-hop 172.16.1.10
set service ssh
set system host-name rt111
set system name-server 172.16.1.11
set system name-server 172.16.1.12
commit
save

ルーティング設定

各仮想ルータはESXi Rootng Networkを通して互いに通信ができるようになっています。ただし本番サイト/DRサイトの内側にあるネットワーク(サイト内部の管理ネットワーク)についてはゲートウェイとなっている仮想ルータしか認識してません。

各ルータにルーティング情報を追加してすべてのネットワーク間で通信が可能となるよう設定します。

ESXiゲートウェイ・ルーティング設定

ESXiゲートウェイに本番サイト・管理ネットワーク、DRサイト・管理ネットワークへのスタティック・ルートを設定します。

【rt001、rt002で設定】
-----------------------------------------------------------------------------
configure
set protocols static route 172.16.10.0/24 next-hop 172.16.1.110
set protocols static route 172.16.20.0/24 next-hop 172.16.1.120
commit
save

PCのコマンドプロンプトから本番サイト・ゲートウェイ、DRサイト・ゲートウェイそれぞれの内側仮想IPアドレスにping疎通できることを確認します。

【PCから実行】
-----------------------------------------------------------------------------
ping /n 2 172.16.10.254
ping /n 2 172.16.20.254

本番サイト・ゲートウェイ・ルーティング設定

本番サイト・ゲートウェイにDRサイト・管理ネットワークへのスタティック・ルートを設定します。スタティック・ルート設定前後でtracerouteを実行して経路が切り替わっていることを確認します。

【rt011、rt012で設定】
-----------------------------------------------------------------------------
configure

# スタティック・ルート追加前の経路
traceroute 172.16.20.254

set protocols static route 172.16.20.0/24 next-hop 172.16.1.120
commit


# スタティック・ルート追加後の経路
traceroute 172.16.20.254
save

DRサイト・ゲートウェイのルーティング設定

DRサイト・ゲートウェイに本番サイト管理ネットワークへのスタティック・ルートを設定します。スタティック・ルート設定前後でtracerouteを実行して経路が切り替わっていることを確認します。

configure
-----------------------------------------------------------------------------
# スタティック・ルート追加前の経路
traceroute 172.16.10.254

set protocols static route 172.16.10.0/24 next-hop 172.16.1.110
commit

# スタティック・ルート追加後の経路
traceroute 172.16.10.254
save

仮想ルータのルーティング設定は以上で終了です。続けてopen-vm-toolsのインストールを行います。

コメント

タイトルとURLをコピーしました