【Fortigate】SD-WAN機能(WAN回線分散)の動作確認 FortiOS 7.01

企業のクラウドサービスの利用が増える中、WAN回線の最適化のため、SD-WANの需要が高まっています。FortigateにもSD-WAN機能として、WAN回線の負荷分散機能が実装されており、この記事で、設定と動作確認をします。

下記のように、インターネットへの接続をISP1、ISP2の2回線に収容する構成を考え、ポリシーにより、インターネットアクセスを最適な回線へ振り分け、かつ回線の冗長化を確認します。

WAN回線の最適化という意味では、インターネットブレークアウトにより特定のクラウドサービスは直接インターネットへアクセスさせる手段も有効です。

Fortigateで、インターネットブレークアウトをする方法として、下記、記事も合わせて参考にしてください。

  >> 参考記事 :  ISDBルーティング(インターネットブレークアウト)FortiOS6.4.2
スポンサーリンク

SD-WAN設定

WAN回線の設定

今回、WAN回線として、2本(ISP1向けのWAN1インタフェース、ISP2向けのWAN2インタフェース)を設定します。

それぞれDHCPでIPアドレスデフォルトゲートウェイを取得しているものとします。

SD-WANゾーン

SD-WANゾーンに、WAN1WAN2インタフェースをSD-WANメンバーとして登録することで、論理的なSD-WANインタフェースが作成されます。

ネットワーク >> SD-WAN より SD-WANゾーンタブから新規作成 >> SD-WANメンバーをクリックします。

wan1wan2インタフェースそれぞれをSD-WANゾーンvirtual-wan-link)として、設定します。ゲートウェイはDHCPで取得したデフォルトゲートウェイがダイナミックとして登録されています。(スタティックに設定する場合は、指定を選択し、登録します)

下記のように、virtual-wan-linkwan1wan2が追加されます。

スタティックルート

ネットワーク >> スタティックルートより新規作成をクリックし、SD-WAN論理インタフェースであるvirtual-wan-linkを宛先インタフェースとするデフォルトゲートウェイを設定します。

パフォーマンスSLA

SD-WANゾーンで登録したWAN回線が正常に接続できるかどうかのヘルスチェックを設定します。

いくつかのヘルスチェック設定がデフォルトであらかじめ用意されています。

ネットワーク >> SD-WAN よりパフォーマンスSLAタブから確認できます。

デフォルトでは、ヘルスチェックは動作していません

今回は、一番下にあるDefault_Office_365のヘルスチェックを有効にしてみます。該当リストをクリックし、参加インタフェースwan1wan2インタフェースを追加します。

少し待つと、ヘルスチェックの結果が表示されます。

デフォルトで準備されたものは使用せず、ヘルスチェック設定を自身で追加することもできます。Google (8.8.8.8)へpingによるヘルスチェックを実行する設定を追加してみます。

ネットワーク >> SD-WAN よりパフォーマンスSLAタブから新規作成をクリックします。

下記の通り設定します。

  • 名前:任意の名前。ping_googleとします。
  • プローブモードアクティブを選択し、ヘルスチェックのパケットを送信します。パッシブの場合は、プローブは送信せず、実際の通信トラフィックを見て、回線の状態を確認します。
  • プロトコルPing を選択
  • サーバ:ヘルスチェック先である8.8.8.8を設定
  • 参加インタフェース:指定によりwan1wan2を選択。今回、wan1とwan2しかSD-WANメンバーはいないため、すべてのSD-WANメンバーを選択しても問題ありません。

SLA監視をしたい場合は、SLAターゲット有効にします。(回線の生死監視だけなら、設定不要です)

ヘルスチェックの送信間隔も変更することができます。

OKをクリックすると、下記のとおり、ヘルスチェックの結果が表示されます。

SD-WANルール設定

どこからどこの通信に対して、WAN回線のパスをどのように分散させるかをSD-WANルールとして定義します。ここでは、マイクロソフト関連の通信に対しては、パフォーマンスのよい回線へ転送するよう、ルールを設定します。

カスタム設定

今回はすべての送信元からマイクロソフト通信に対して、SD-WANルールを設定します。

ネットワーク >> SD-WAN よりSD-WANルール >> 新規作成をクリックします。

下記のとおり設定します。

  • 名前:任意の名前。今回は、sd-wan-rule1 とします。
  • 送信元アドレスallを選択
  • インターネットサービスMicrosoft で検索し、結果すべてを登録

次に発信インタフェースの選択を設定します。

デフォルトではベストクオリティで、パフォーマンスの良い回線を自動選択します。デフォルトを採用します。

次に優先するインタフェースとSLAを選択します。

  • 優先するインタフェースwan1wan2を選択
  • 計測されたSLADefault_Office_365 を選択

OKをクリックすると、下記のように登録されます。

暗黙のルール

カスタムで設定したSD-WANルールに引っかからない通信は、暗黙のルールが適用されます。

暗黙のルールをクリックすると、選択できる負荷分散のアルゴリズムが確認できます。

デフォルトでは、送信元IPのハッシュに応じて回線を分散させます。送信元-宛先IPのハッシュに応じて分散させることもできます。

セッション通信量の割合を指定し、回線分散させることもできます。

また、スピルオーバとして、指定したしきい値を越えると、他の回線に分散する設定もできます。

今回は1つの送信元からのみ接続する環境で、WAN回線が分散されている様子を確認したいため、送信元-宛先IPを選択します。

ファイアウォールポリシー設定

発信インタフェースにvirtual-wan-linkを指定することで、SD-WANインターフェース発信のポリシーを設定します。

今回は検証目的に、アプリケーションを識別したいため、SSL証明書インスペクションとアプリケーションコントロールを有効にしておき、トラフィックログもすべて取得しておきます。

スポンサーリンク

回線分散確認

端末かマイクロソフトサイト等、複数サイトへ接続し、ログ&レポート >> 転送トラフィックより、トラフィックログを確認します。(出力されるカラムは、変更しています。

マイクロソフト関連サイトへの接続は、カスタムで設定したSD-WANルールが適用されており、レーテンシを計測し、最適とされるwan1インタフェース(Port3)へ転送されていることが確認できます。

また、マイクロソフトとは関連のないサイトへのアクセスは、wan1、および wan2インタフェースの両方を使用していることが確認できます。

スポンサーリンク

回線障害

ISP1(wan1インタフェース側)に障害を発生させ、ISP2(wan2インタフェース側)へ経路が切り替わることを確認します。

障害発生

回線が障害となった場合にヘルスチェックがNGとなり、その回線は分散対象から外れます。

端末からping 8.8.8.8を実行し、トラフィックログを確認すると、wan1インタフェースから発信されていることをあらかじめ確認しておきます。

では、wan1の回線をダウンさせます。すると、一時的にpingが途切れ復旧します。

ネットワーク >> SD-WAN よりパフォーマンスSLAよりヘルスチェック状態を確認すると、wan1インタフェースがダウンしていることがわかります。

トラフィックログより宛先インタフェースもwan2に変更されています

障害復旧

wan1の回線を復旧させます。ヘルスチェックを確認すると、レイテンシとジッターは正常表示に戻ります。

パケットロス割合はしばらくすると、0%になります。

スポンサーリンク

帯域制御

SD-WANとセットで帯域制御を使用するパターンも多く見受けられます。重要なアプリケーションには、最低保証の帯域を設定したり、優先度の低いアプリケーションは、最大帯域を設定したりすることで、帯域や通信品質を確保します。

今回、実務ではありえませんが、テスト的に、マイクロソフト通信を100Kbp上限に設定し、その他アプリケーションを保護してみます。

ポリシー&オブジェクト >> トラフィックシェーピングより、 トラフィックシェーパー >>  新規作成をクリックし、100Kbpsを上限にするシェーパを作成します。

下記のとおり設定します。

  • タイプ共有を選択
  • 名前:任意の名前。今回はMax_100kbpsとします。
  • トラフィック優先度Lowを選択
  • 帯域幅の単位kbpsを選択
  • 最大帯域幅100kbpsに設定

設定後、OKをクリックします。

次に、マイクロソフト通信を100kbps上限にするトラフィックシェーピングポリシーを設定します。ポリシー&オブジェクト >> トラフィックシェーピングより、 トラフィックシェーピングポリシー >>  新規作成をクリックします。

ポリシーを設定します。

  • 名前:任意の名前。今回は、Microsoft_Max_100kbps とします。

トラフィックが一致する条件を設定します。

  • 送信元all を選択
  • 宛先Microsoft関連のアプリケーションを選択

次にアクションを設定します。

  • 発信インタフェース:SD-WANインタフェースであるvirtual-wan-linkを選択
  • Apply shaper有効
  • 逆方向シェイパーMax_100Kbpsを選択(ダウンロード通信に適用)

設定後、OKをクリックします。

端末からマイクロソフト関連のサイトへアクセスすると、明らかなレスポンス低下が確認されます。

トラフィックシェーパーを確認すると、利用帯域幅が制限されており、超過パケットがドロップされていることが確認できます。

IPSecインタフェースをSD-WANインタフェースのメンバーとして、パフォーマンスSLAを使用したSD-WANルールを適用する場合は、下記の記事を参考にしてください。

  >> 参考記事 :  IPSec + SD-WAN機能の動作確認

コメント