FortiGate の VRRP 設定について

FortiGate で Virtual Router Redundancy Protocol(以下、VRRP)を設定する方法と、その動作を確認する手順について解説します。

VRRP とは

VRRP は、ネットワークにおいて高可用性を提供するためのプロトコルです。このプロトコルは、複数のルーターやスイッチを仮想的に 1 つのデバイスとして動作させ、主装置(Primary)がダウンした場合にバックアップ(Backup)装置が自動的にトラフィックを引き継ぐ機能を提供します。

HA との違い
FortiGate には、高可用性ソリューションとして HA(High Availability)もあります。HA と VRRP の違い、およびそれぞれが適している状況は、以下の表のとおりです。
項目HAVRRP
同期性設定、セッション情報、ログ等を完全に同期設定やセッション情報は通常同期されない
フェイルオーバーの性質スムーズなフェイルオーバーシンプルな IP レベルでのフェイルオーバー
互換性FortiGate 専用、他メーカーのデバイスとは非互換オープンスタンダード、多メーカー対応
スケーラビリティ通常は2台で動作、クラスタで多数のデバイスも可能単一の仮想 IP、スケーラビリティは限定的
どのような状況で使うか設定やセッション情報の同期が必要、高度なオプション複数メーカー混在、単純な IP フェイルオーバー
関連記事

ネットワークのダウンタイムは、ビジネスに多大な影響を与える可能性があります。そこで注目されるのが High Availability(以下、HA)です。本記事では、FortiGate での HA の基本概念、および設定方法について紹介しま[…]

VRRP 設定例

VRRP の設定

config system interface
edit "port3"
set vdom "root"
set ip 192.168.100.251 255.255.255.0
config vrrp
edit 1
set vrip 192.168.100.254
set priority 255
set vrdst 8.8.8.8
end
config system interface
edit "port3"
set vdom "root"
set ip 192.168.100.252 255.255.255.0
config vrrp
edit 1
set vrip 192.168.100.254
set priority 100
end

リンクモニタリングの設定

config system link-monitor
edit "poc_link_monitor"
set srcintf "port3"
set server "8.8.8.8"
set interval 1000
end

コマンドの解説

VRRP のコマンド解説

インターフェースの設定モードに入ります。

config system interface

port3 という名前のインターフェースを編集します。

edit "port3"

VDOM(Virtual Domain)を root に設定します。

set vdom "root"

インターフェースの IP アドレスを設定します。

set ip 192.168.100.251 255.255.255.0

VRRP の設定モードに入ります。

config vrrp

VRRP のインスタンス ID 1 を編集します。

edit 1

仮想 IP アドレスを設定します。

set vrip 192.168.100.254

このインスタンスの優先度を 255(最高値)に設定します。

set priority 255

監視対象となるリモート IP アドレス(ここでは Google の DNS)を設定します。

set server "8.8.8.8"
Link Monitor のコマンド解説

Link Monitor の設定モードに入ります。

config system link-monitor

Link Monitor の名前(ここでは poc_link_monitor)を設定します。

edit "poc_link_monitor"

監視対象となるソースインターフェース(port3)を設定します。

set srcintf "port3"

監視対象となるリモートサーバ(ここでは Google の DNS)の IP アドレスを設定します。

set server "8.8.8.8"

監視間隔を 1000ミリ秒(1秒)に設定します。

set interval 1000

確認コマンド

VRRP の状態確認

VRRP の状態を確認するには、get route info vrrp コマンドを実行します。

FG01 (root) # get router info vrrp
Interface: port3, primary IP address: 192.168.100.251
  UseVMAC: 0, SoftSW: 0, EmacVlan: 0 BrPortIdx: 0, PromiscCount: 0
  HA mode: primary (0:0:1) VRRP primary number: 1
  VRID: 1 verion: 2
    vrip: 192.168.100.254, priority: 255 (255,0), state: PRIMARY
    adv_interval: 1, preempt: 1, ignore_dft: 0 start_time: 3
    primary_adv_interval: 100, accept: 1
    vrmac: 00:0c:29:62:62:4b
    vrdst: 8.8.8.8
    vrgrp: 0
FG02 (root) # get router info vrrp
Interface: port3, primary IP address: 192.168.100.252
  UseVMAC: 0, SoftSW: 0, EmacVlan: 0 BrPortIdx: 0, PromiscCount: 0
  HA mode: primary (0:0:1) VRRP primary number: 0
  VRID: 1 verion: 2
    vrip: 192.168.100.254, priority: 1 (1,0), state: BACKUP
    adv_interval: 1, preempt: 1, ignore_dft: 0 start_time: 3
    primary_adv_interval: 100, accept: 1
    vrmac: 00:0c:29:9a:f3:3d
    vrdst:
    vrgrp: 0

Link Monitor の状態確認

Link Monitor の状態を確認するには、diagnose sys link-monitor status コマンドを実行します。

FG01 (root) # diagnose sys link-monitor status

Link Monitor: poc_link_monitor, Status: alive, Server num(1), cfg_version=0 HA state: local(alive), shared(alive)
Flags=0x1 init, Create time: Sun Sep  3 00:42:00 2023
Source interface: port2 (6)
VRF: 0
Interval: 1000 ms
Service-detect: disable
Diffservcode: 000000
Class-ID: 0
  Peer: 8.8.8.8(8.8.8.8)
        Source IP(100.64.1.251)
        Route: 100.64.1.251->8.8.8.8/32, gwy(100.64.1.1)
        protocol: ping, state: alive
                Latency(Min/Max/Avg): 3.636/14.128/4.665 ms
                Jitter(Min/Max/Avg): 0.010/10.279/1.588 ms
                Packet lost: 0.000%
                MOS: 4.400
                Number of out-of-sequence packets: 0
                Fail Times(0/5)
                Packet sent: 18416, received: 18366, Sequence(sent/rcvd/exp): 18417/18417/18418
ルーティングテーブルの状態確認

ルーティングテーブルの状態を確認するには、get router info routing-table all コマンドを実行します。

FG01 (root) # get router info routing-table all
Codes: K - kernel, C - connected, S - static, R - RIP, B - BGP
       O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
       V - BGP VPNv4
       * - candidate default

Routing table for VRF=0
S*      0.0.0.0/0 [10/0] via 100.64.1.1, port2, [1/0]
C       10.9.6.0/24 is directly connected, port1
C       100.64.1.0/24 is directly connected, port2
C       192.168.100.0/24 is directly connected, port3
C       192.168.100.254/32 is directly connected, port3

以上

参考書籍

created by Rinker
¥3,080 (2024/05/27 00:34:19時点 楽天市場調べ-詳細)