FortiGateをリプレスしたら時々繋がらない


はじめに

専用線を使って本店と複数拠点繋いでいるという仮定環境での出来事。拠点側にはHA構成のFortiGateを設置。このFortiGateをリプレスしたら、複数拠点のうち2拠点(リプレイスした拠点ともう一拠点)において、通信が出来たり/出来なくなったりする問題が発生した。原因究明のためイロイロ調べたのでメモ。

環境イメージ

本店(L3スイッチ)-----[専用線]----- 複数拠点(FortiGate)

ハマった理由(言い訳)

  • FortiGateからFortiGateへのリプレイスだった。
  • 旧設定を踏襲していた。
  • リプレイスしていない拠点でも問題が発生していた。
  • リプレイス後の数時間は問題発生していなかった。

原因

2拠点のFortiGate間でMACアドレスが重複していた。
FortiGateではHA構成を組む際に仮想MACアドレスが生成されるが、これが一定のルールに基づいて割り当てられる。

メーカ資料より
https://docs.fortinet.com/document/fortigate/6.0.0/handbook/996579/cluster-virtual-mac-addresses

・How the virtual MAC address is determined
 The virtual MAC address is determined based on following formula:
 00-09-0f-09-<group-id_hex>-(<vcluster_integer> + <idx>)

今回の問題は複数拠点のうち2拠点(リプレイスした拠点ともう一拠点)において、FortiGateの仮想MACアドレスが同じものになり、本店(L3スイッチ)のARPテーブル上でMACアドレスが競合した結果発生した問題でした。

リプレイス後の数時間は問題発生していなかったのは、休日夜間のリプレイス作業だったので、たまたまリプレイスしていない方の拠点から通信が発生していなかっただけ。

反省点

社内ドキュメントには、FortiGateのHAのグループID(仮想MACアドレスの[group-id_hex]の部分)の管理表があったが確認していなかった、ということにしておく。(詳しく書けないので)