[Network]災対環境グローバルIP固定化&IPv6バックボーン分離

抱えていた悩み事

自宅のネットワーク構造をここ数カ月間に渡りかなり弄っています。

ここ最近、IPv6経路のHomenocへ切り替えを行いました。それにより、既存で所有していたHurricane Electronics Tunnel Broker(以降、HETBと略す)の経路があまり必要ではなくなってきました。ただ、IHANetとの接続で当面は欠かせない接続になります。

また、HETBとHomenocのアドレス体系の間をOSPFv3+RIPngで内部ルーティングできるようにしています。

そこで以下の弱点にふと気づきました。

  • 災対サイト側のIPv6通信のインターネットゲートウェイがHQ側にある。
    • その為、HQ側で何らかの障害が発生した場合、IPv6通信が不可能になります。
  • 災対サイト側のIPアドレスが変動制である
    • その為、HQ側で何もかもがぶっ潰れた場合、DR側でのサービス公開も検討する必要が出てきますが、それが基本できなくなります。
    • DDNSを使うことで回避することも可能ですが、その場合DDNS可能なサービスとの連携を考えなければならず、FQDNの見直し等が必要になる可能性があります。
  • 現状、IPsecで繋いでる拠点間VPNはメインモードを使用しており、災対サイトの接続ポイントはnetvolante頼りになっている
    •  その為、YAMAHAルーターから構成を変えることがほぼ不可能な状態になっています。
    • IPアドレスが変動するたび、IPsecが切断され、1分程度疎通不能な状態になります。この状態が不定期に発生します。
    • 大容量ファイルを同期している最中でこれが発生した場合、特にWindows環境では再コピーが開始されてしまい、ジョブが中々終了しないという悲惨な状況が発生する可能性があります。

そこで、以下のことを考えつきました。

  • 災対拠点のIPアドレス固定化
  • ほぼ不要になりつつあるHETB経路の移転(HQ⇒災対拠点)

というわけで、まずは災対サイトのIPを固定化についてプロバイダの情報を調べてみた所、なんと1つのIPv4グローバルアドレスであれば、月額500円の増額で実装できることが確認できました(なお、8IPアドレスは流石に1万円以上した・・・)。そこで、父に頼み込んで、IPv4グローバルアドレスの固定化の了承を得、IPの固定化及びHETBの移転作業を実施しました。

月額費用の増額分ですが・・・・復職の暁に年払いとさせてください・・・とお願いしました。父、苦笑。嫁様、おこ。我慢できなくてごめんなさいごめんなさい。

プロバイダの手続き

災対サイトはQTNetさんのBBIQを使用しており、IPの固定化は非常に簡単です。以下の手順で固定化を行いました。

  • BBIQ会員ポータルへ移動
  • ログインする
  • 固定IPメニューへ移動
  • 必要固定IP数を指定して手続き
  • 一通り完了すると、固定IPが1つ割り当てられる
  • 災対側ルーターを再起動する
  • PPPoEセッションを再接続した段階で固定IPが反映されている

HETBの設定変更

次に、HETBの設定を変更します。Tunnel Brokerのサイトでログインします。

変更対象のトンネルインタフェースを「Configured Tunnels」の一覧からクリックします。

「Client IPv4 Address(下図赤枠箇所)」をクリックし、BBIQより払い出された固定IPを入力します。成功すると、この欄の下に変更が反映された旨のメッセージが出力されますので、それを確認します。

この時点で、HETB側は受付IPの変更が反映され、既存トンネルは切断されることになります。

HQ側RTX-3000の設定削除

HQ側に設置しているRTX-3000の設定を全削除し、HETB経路を削除します。

災対側RTX-1100側にHETB設定を追加

HETBへ接続するためのトンネルインタフェースを追加し、HETBとの接続を確立します。(★箇所は、HETB側で表示されたIPアドレスを指定すること)

tunnel select 6
 tunnel encapsulation ipip
 tunnel endpoint address <ローカルIPアドレス> <Server IPv4 Address★>
 ipv6 tunnel address <Client IPv6 Address★>
 ipv6 tunnel secure filter in **** **** **** **** ****
 ipv6 tunnel secure filter out **** dynamic *** *** .....
 tunnel enable 6

HETBローカル側のアドレスはすでに設定済みなので、別段設定することはありません。なお、secure filterの設定については、各自別途設計の上実装するようにしませう。

各ルーターの経路見直し

RTX-3000側の設定は以下を削除し、OSPFに従うよう設定します。

# no ipv6 route default gateway tunnel 6

RTX-1100側の設定は以下を追加し、デフォルトゲートウェイをtunnel 6を通すようにします。

# ipv6 route default gateway tunnel 6

HETBアドレス体系側のルーティングはRIPngで制御しています。が、双方ルータの設定を変える必要がありましたのでそれをやってます(IPv6の制御を、拠点間は当初スタティックで対応していたため)。対象はInternet VPNの設定です。

tunnel select 1
 ipv6 tunnel rip send on
 ipv6 tunnel rip receive on

動作確認

双方のルーターで試しにwww.iij.ad.jpへIPv6ベースでpingをしてみました。どうやら大丈夫そうです。

RTX-3000側

YOMOGI# ping6 www.iij.ad.jp
2001:240:bb81::10:1から受信, シーケンス番号=0 hlim=57 時間=55.841ミリ秒
2001:240:bb81::10:1から受信, シーケンス番号=1 hlim=57 時間=56.360ミリ秒
2001:240:bb81::10:1から受信, シーケンス番号=2 hlim=57 時間=56.682ミリ秒
2001:240:bb81::10:1から受信, シーケンス番号=3 hlim=57 時間=55.620ミリ秒

4個のパケットを送信し、4個のパケットを受信しました。0.0%パケットロス
往復遅延 最低/平均/最大 = 55.620/56.125/56.682 ミリ秒

RTX-1100側

SOBA# ping6 www.iij.ad.jp
2001:240:bb81::10:1から受信, シーケンス番号=0 hlim=58 時間=22.308ミリ秒
2001:240:bb81::10:1から受信, シーケンス番号=1 hlim=58 時間=22.020ミリ秒
2001:240:bb81::10:1から受信, シーケンス番号=2 hlim=58 時間=22.691ミリ秒
2001:240:bb81::10:1から受信, シーケンス番号=3 hlim=58 時間=21.833ミリ秒
2001:240:bb81::10:1から受信, シーケンス番号=4 hlim=58 時間=22.205ミリ秒
2001:240:bb81::10:1から受信, シーケンス番号=5 hlim=58 時間=31.783ミリ秒

6個のパケットを送信し、6個のパケットを受信しました。0.0%パケットロス
往復遅延 最低/平均/最大 = 21.833/23.806/31.783 ミリ秒

どうやら大丈夫そうです。何故かTunnel Broker側のほうが遅延が遅いのは、中継しているSEIL/x86がMastodon等のアクセスをさばきながら対応しているからかなぁ・・・・という気がしないでもないですが、まぁ取り敢えずはなんとか。

最終的な構成

こうなりました。

というわけで、HQ側環境に左右されないIPv6通信構成ができました。これである意味ホントのDRに取り組むことができそうに思えます。Mastodonインスタンスやブログサーバの構成等を踏まえ、より迅速なDR対応が取れるよう、今後も内容は精査していきたいと思います。

今回は実家に幾許かの迷惑をかけることになりました。申し訳ないです。