FortiGate

FortiGateのSD-WAN設定について

この記事は投稿日から2年以上経過しています。

FortiGateのSD-WAN設定について

当記事では、FortiGateにおけるSD-WAN(software-defined wide area network)の設定方法について記載します。

若手エンジニア志望者を募集!支度金あり

前提条件

本記事内の環境は、FortiGateのwan1をISP①(192.168.110.0/24)、wan2をISP②(192.168.120.0/24)と仮定して設定します。

  • FortiOS
    • 7.0.8 build0418
  • 動作モード
    • NATモード

環境図については以下の通りです。

SD-WANとは

SD-WANとは、広域ネットワークをソフトウェアによって管理する技術となります。

ヘルスチェックやルールを用いて特定のトラフィックを自動的にルーティングし、ネットワークの負荷を低減します。

SD-WANの設定の流れ

FortiGateにてSD-WANを構築する場合、以下の設定をしていきます。

  1. SD-WANゾーンへの追加
  2. スタティックルートの設定
  3. パフォーマンスSLAの作成
  4. SD-WANルールの作成

SD-WANゾーンへの追加

デフォルトで作成されている[virtual-wan-link]に対してインターフェイスを追加します。

※インターフェイス設定については割愛しております。

  1. [ネットワーク] > [SD-WAN] > [SD-WANゾーン]に移動します。
  2. [新規作成] > [SD-WANメンバー]を選択します。
  3. インターフェイスを指定し、各項目を設定します。

wan1

wan2

  • ゲートウェイ:ゲートウェイIPを指定します。
    ※DHCP/PPPoEの場合は、ダイナミックまたは指定を選択します。
    基本的にダイナミックで問題ございません。
  • コスト:最小コスト(SLA)で使用する値となります。
  • プライオリティ:ルーティングのプライオリティを指定します。
    ※主に暗黙のルールに合致したトラフィックのルーティングに使用されます。

スタティックルートの設定

スタティックルートの設定を行います。

  1. [ネットワーク] > [スタティックルート]に移動します。
  2. [新規作成]を押下します。
  3. [virtual-wan-link]をインターフェイスに指定し、[OK]を選択します。

パフォーマンスSLAの作成

インターネット上のサーバに対して、各インターフェイスを介してリンクの正常性をモニタリング(ヘルスチェック)する設定となります。

インターフェイスがヘルスチェックに失敗した場合、そのインターフェイス上のルートはSD-WANグループから削除され、トラフィックは他のインターフェイスを介してルーティングされます。

今回はGoogle社のPublic DNSサーバに対してpingによるモニタリング設定を行います。

※実運用において、宛先となるサーバは、可用性の高い複数のサーバに対して行うことが望ましいです。

  1. [ネットワーク] > [SD-WAN > [パフォーマンスSLA]に移動します。
  2. [新規作成]を押下します。
  3. 各項目を設定します。

    • 名前:任意
    • プローブモード:今回は[アクティブ]を設定します。
      • アクティブ:プローブを送信し、リンクの品質をモニタリングします。
      • パッシブ:トラフィックを利用してリンクの品質をモニタリングします。モニタリングする場合は、別途ポリシーにて[パッシブヘルスチェック]を有効化する必要がございます。
      • 優先パッシブ:アクティブモードとパッシブモードの組み合わせとなり、トラフィックが発生していない場合にプローブを送信します。
    • プロトコル:ヘルスチェックに利用するプロトコル指定します。
      今回は、[ping]を設定します。
      ※GUI上ではping、http、dnsのみ設定可能となりますが、CLI上では、更にtcp-echo、udp-echo、twamp、tcp-connect、ftpも指定することが可能です。
    • サーバ:プローブを送信する先のサーバを指定します。
      今回は[8.8.8.8]を設定します。
      ※1つのSLAに対して最大2つまで登録可能となります。
    • 参加インターフェイス:SLAにてチェックを行うインターフェイスを指定します。
    •  SLAターゲット:有効にすることでトラフィックが流れる経路を制御するためのしきい値を設定できます。
      • レイテンシ
      • ジッタ
      • パケットロス
    • リンクステータス:ステータスを確認する頻度と有効/無効の基準を設定します。
      • チェック間隔:プローブを送出する間隔
      • 非アクティブまでの失敗回数:非アクティブとなるまでの失敗回数
      • リンク回復までの回数:アクティブとなるまでの成功回数
    • スタティックルートのアップデート:非アクティブ時にスタティックルートを無効にするかを設定します。
  1. [OK]を選択すると設定したルールが追加されます。

SD-WANルールの作成

セッションをSD-WANメンバーにどのように配布するかを制御する設定となります。

  1. [ネットワーク[ > [SD-WAN > [SD-WANルール]に移動します。
  2. [新規作成]を押下します。
  3. 各項目を設定します。(発信インターフェイスの設定によって一部設定が異なります。)

    ※画像はベストクオリティの設定例となります。
  • 名前:任意
  • 送信元:送信元を指定します。
  • 宛先:宛先を指定します。
  • 発信インターフェイス:発信インターフェイスをどのように選択するかの方法を選択します。
    • マニュアル:送出するインターフェイスを手動(優先するインターフェイス/ゾーンプリファレンス)で設定します。
    • ベストクオリティ:計測された結果の良いインターフェイスを自動で選択します。
    • 最小コスト(SLA):SLAターゲットの条件を満たすインターフェイスのうち一番コストの低いインターフェイスを選択します。
    • 帯域幅の最大化(SLA):SLAターゲットの条件を満たすインターフェイス間でロードバランシングされます。
  • 優先するインターフェイス/ゾーンプリファレンス:ルールに該当した際にルーティングするインターフェイスまたゾーンを指定します。
  • 計測されたSLA:SLAを選択します。※ベストクオリティのみ
  • クオリティ基準:[レイテンシ][ジッタ][パケットロス][ダウンストリーム][アップストリーム][帯域幅][カスタマイズ]を選択します。
    ※ベストクオリティのみ
  • 必要なSLAターゲット:SLAを選択します。※最小コスト(SLA)/ 帯域幅の最大化(SLA)のみ
  • 順方向/逆方向DSCP:有効にするとDSCPの値を変更可能となります。
  1. [OK]を選択すると設定したルールが追加されます。

Tips

動作の確認

動作の確認は、以下の内容を確認します。

  • モニタリング状況の確認
# diagnose sys link-monitor interface [インターフェイス名]

# diagnose sys link-monitor interface wan1

Interface(wan1): state(up, since Sat Jan 28 19:52:33 2023), bandwidth(up:409555bps, down:1155589bps), session count(IPv4:1166, IPv6:0), tx(795393001901 bytes), rx(1772828492260 bytes), latency(6.68), jitter(4.15), packet-loss(0.00).




# diagnose sys link-monitor interface wan2

Interface(wan2): state(up, since Wed Jan 25 18:45:10 2023), bandwidth(up:327560bps, down:906788bps), session count(IPv4:3, IPv6:0), tx(304432497016 bytes), rx(705741824777 bytes), latency(1.62), jitter(0.23), packet-loss(0.00).




# diagnose sys sdwan health-check status

Health Check(HealthCheck):

Seq(1 wan1): state(alive), packet-loss(0.000%) latency(1.699), jitter(0.128) sla_map=0x1

Seq(2 wan2): state(alive), packet-loss(0.000%) latency(3.767), jitter(1.324) sla_map=0x1
  • SD-WANルールにおけるルーティングを行うインターフェイスの確認

GUI

※チェックがなく他の作成したルールに該当しない場合は、暗黙のルールによってインターフェイスを指定されます。

CLI

# diagnose sys sdwan service




Service(1): Address Mode(IPV4) flags=0x200 use-shortcut-sla

Gen(8), TOS(0x0/0x0), Protocol(0: 1->65535), Mode(priority), link-cost-factor(bibandwidth), link-cost-threshold(10), heath-check(Health_Check1)

Members(2):

1: Seq_num(1 wan1), alive, bibandwidth: 1997156Kbps, selected

2: Seq_num(2 wan2), alive, bibandwidth: 1997363Kbps, selected

Src address(1):

0.0.0.0-255.255.255.255




Dst address(1):

0.0.0.0-255.255.255.255

上記結果では、wan1の帯域幅よりもwan2の帯域幅の方が大きくなっておりますが、ルーティングされるインターフェイスとしては、wan1が選択されます。

理由としては、デフォルトで[link-cost-threshold]が10%となっており、seq_num(1)インターフェイスの値がseq_num(2)インターフェイスの値よりも10%下回るまでseq_num(1)インターフェイスが選択されるからです。

  • L2SWのGi1/0/1をシャットダウンした際の結果について(ネットワークの到達性がない場合を想定)
# diagnose sys sdwan service




Service(1): Address Mode(IPV4) flags=0x200 use-shortcut-sla

Gen(8), TOS(0x0/0x0), Protocol(0: 1->65535), Mode(priority), link-cost-factor(bibandwidth), link-cost-threshold(10), heath-check(Health_Check1)

Members(2):

1: Seq_num(2 wan2), alive, bibandwidth: 1998685Kbps, selected

2: Seq_num(1 wan1), dead

Src address(1):

0.0.0.0-255.255.255.255




Dst address(1):

0.0.0.0-255.255.255.255

特定の通信のみを指定のインターフェイスから送出する方法について

運用上、SaaSサービス側で片方の固定 IPアドレスのみ許可している場合やYouTubeやWeb会議通信といった大容量通信を特定のインターフェイスに制限する場合は以下のような設定を行います。

 

  1. 宛先を指定します。
  2. 発信インターフェイス[マニュアル]を選択します。
  3. 優先するインターフェイスで送出したいインターフェイスのみを選択します。

※上記設定を行ったとしても、指定したインターフェイスのヘルスチェックが失敗した場合、ルールとしてマッチされなくなり、他にマッチ可能なルールにて通信が行われます。(他にない場合、暗黙のルールにマッチされます。)

以上でFortiGateにおけるSD-WANの設定方法についての説明を終了いたします。

若手エンジニア志望者を募集!支度金あり

LogStare Collector 無償版

記載されている会社名、システム名、製品名は一般に各社の登録商標または商標です。

当社製品以外のサードパーティ製品の設定内容につきましては、弊社サポート対象外となります。

【FortiGate】トラフィックログ生成のタイミングについて前のページ

AWS Network Firewallの設定方法次のページ

ピックアップ記事

  1. ログフォワーダー「okurun.jar」について
  2. 自社製品をAMIにしてAWSマーケットプレイスへ出品
  3. Zabbixヒストリデータのレポート生成について
  4. IoT機器「Raspberry pi」とLogStare Collectorで温…

関連記事

  1. FortiGate

    FortiGateのメモリ使用率が高い時の対応

    FortiGate(フォーティゲート)のメモリ使用率の上昇時に確認する…

  2. NW機器

    OpenSSLの脆弱性(CVE-2022-0778)に対する各UTM/IPS/WAFの対応状況につい…

    セキュアヴェイルの新入社員となりました新社会人 0x90 がOpenS…

  3. NW機器

    FortiOS v5.6.6におけるログ出力仕様の変更について

    FortiOS v5.6.6より、従来のログ出力方式に仕様変更が行われ…

  4. NW機器

    FortiGate にSNMP (v1, v2c) / Syslog 設定を追加する

    当記事では、FortiGate からSNMP 並びにSyslog を取…

  5. FortiGate

    【現場SE奮闘記 vol.2 】「天狗となったエンジニア」~FortiGate NATの仕様編~

    筆致についてはタイトル毎に統一されていません。あらかじめご了承ください…

  6. FortiGate

    【禁断の異機種間HA】FortiGate-60F/60EでHAを組んでみた!

    こんにちは。takiです。タイトルの通り今回もやってみた系の記…

若手エンジニア志望者を募集!
LogStare Collector 無償版
クラウド活用の「困った」「焦った」事例
月額200円でM356の監査ログの運用レベルUP LogStare M365
AWSのログ分析・モニタリングに 次世代のマネージド・セキュリティ・プラットフォーム LogStare

  1. SNMPを触ってみた

    ログ分析・監視テクニック

    SNMPとは?新入社員が生まれてはじめて触ってみた!
  2. 実践記事

    DNSキャッシュポイズニングやってみた
  3. デフォルト画像イメージ

    FortiGate

    FortiGateのSD-WAN設定について
  4. ログ分析・監視テクニック

    nProbeであらゆる通信をログに記録し可視化する
  5. AWS/Azure

    AWSマーケットプレイス上から無償版のLogStare Collectorを試す…
PAGE TOP