さくらのクラウド やってみたシリーズ(12) ローカルルータのスタティックルート設定で3つ目のネットワークの接続
前回の記事ではローカルルータのピア接続機能を用いて2つの異なるネットワークを接続しました。
文字だけでは説明が少しややこしいので図にすると以下になります。

スタティックルート機能
スイッチ+ルータにも同じく「スタティックルート機能」があり、上記の記事ではその設定を紹介しています。簡単に言えば、既存のネットワークに もう一つ異なるIPアドレスブロックを追加する ことができる機能です。スタティックルートを設定する際には、ネクストホップ(経由先)として、すでに接続されているネットワーク上のサーバを指定する必要があります。
この記事では以下のネットワークを新たに作成します。

ネットワークAに対してスタティックルート10.0.0.0/24を作成しサーバを1台10.0.0.4起動します。このスタティックルートのネクストホップは192.168.0.5になります。
さっそくやってみる
1. ローカルルータAでスタティックルート作成
ローカルルータAの詳細画面上部のスタティックルートをクリックします。

追加をクリックし以下のアドレスを設定します。

反映をクリックします。

2. 10.0.0.0/24へサーバの構築
今作成されたネットワーク10.0.0.0/24の中にサーバを起動します。IPアドレスは10.0.0.4とします。ゲートウェイはスタティックルートの10.0.0.1を指定します。
NICはスイッチAを選択します。

IPアドレスの設定は以下です。

名前は分かりやすく insidestaticroute とします(内部ネットワーク側のサーバを意味しています)。
ここで指定した 10.0.0.1 はまだ存在していませんが、次に作成する「ネクストホップ用サーバ」が 10.0.0.1 と 192.168.0.5 の両方のIPアドレスを持つことになります。
3. ネクストホップ用サーバの構築
次にスタティックルートで指定されている192.168.0.5のサーバを起動します。ゲートウェイにはローカルルータを設定するためIPアドレスの指定は以下にします。

名前はnexthopにします。
4. ネクストホップサーバのネットワーク設定
サーバー一覧は以下の様になります。

ネクストホップ用のサーバに以下のコマンドを実行します。
sudo ip addr add 10.0.0.1/24 dev eth0
こうすることで以下の状態となりネクストホップ用サーバとInsideStaticRouteサーバは疎通ができます。
ubuntu@ubuntu:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 9c:a3:ba:33:cd:32 brd ff:ff:ff:ff:ff:ff
altname enp0s3
altname ens3
inet 192.168.0.5/24 brd 192.168.0.255 scope global eth0
valid_lft forever preferred_lft forever
inet 10.0.0.1/24 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::9ea3:baff:fe33:cd32/64 scope link
valid_lft forever preferred_lft forever
しかしながら10.0.0.0→192.168.0.4は疎通が行えません。これは、ネクストホップとして指定した 192.168.0.5 のサーバが、まだルータとして動作していない(IP転送が無効な)ためです。以下のコマンドをネクストホップ用サーバで実行し、IP転送機能を有効化すると、ネットワーク間の疎通が可能になります。
sudo sysctl -w net.ipv4.ip_forward=1
実際の構成図はこうなります。

Discussion