BFDを導入すべきケースと失敗しやすいポイント【設計判断から事故回避まで完全解説】

  • URLをコピーしました!

「OSPFやBGPのタイマーを短縮しても思ったほど速くならない」 「フェイルオーバーを1秒未満にしたい」 「回線断を即検知したい」

このような要件が出てきたときに候補に挙がるのが BFD(Bidirectional Forwarding Detection) です。

しかし、BFDは入れれば速くなる万能機能ではありません。 設計を誤ると、

  • 誤検知によるフラップ地獄
  • CPU高騰
  • 経路暴走
  • FWクラスタ崩壊

といった重大事故を引き起こします。

本記事では、

  • BFDを導入すべき具体的ケース
  • 導入すべきでないケース
  • 現場で実際に多い失敗パターン
  • 安全な設計・チューニング手順

まで網羅します。 この記事だけで、判断と設計ができる内容にしています。

目次

■ そもそもBFDとは何か?

BFDは、ルーティングプロトコルとは独立した「高速経路監視プロトコル」です。

通常のOSPF/BGPは秒単位〜十秒単位の検知ですが、 BFDはミリ秒単位でリンク障害を検知できます。

例)
送信間隔:300ms
検知倍率:3

→ 約900msで障害検知

■ BFDを導入すべきケース

① フェイルオーバーを1秒未満にしたい場合

FHRPだけでは片系断しか検知できません。 回線や上位装置断を即検知するにはBFDが有効です。

特に:

  • データセンター間接続
  • WAN冗長回線
  • 金融系・リアルタイム系

では導入価値が高いです。

② BGPを高速化したい場合

BGPはデフォルトで最大180秒かかります。 タイマー短縮だけでは限界があります。

BFDを併用すれば、

  • BGPタイマーは安全値のまま
  • 障害検知だけ高速化

が可能です。

③ L2延伸構成でブラックホールを防ぎたい場合

物理的にはリンクがUpだが、 実際は対向が応答しないケース。

このような「論理断」に強いのがBFDです。

④ FWを跨ぐ経路で即時収束が必要な場合

FWクラスタでセッション同期していても、 上位ルータが障害を遅延検知すれば意味がありません。

BFDで即座に経路引き下げすることで、 ブラックホール時間を最小化できます。

■ 導入すべきでないケース

① CPUに余裕がない装置

BFDは制御プレーン処理です。 セッション数が増えるとCPU負荷が急上昇します。

特に:

  • 小型ルータ
  • 仮想ルータ
  • FW上でのBFD

は要注意です。

② 不安定な回線

回線品質が悪いと、

  • 誤検知
  • 頻繁なルートフラップ

が発生します。

まずは回線品質改善が優先です。

③ ECMPが絡む複雑構成

経路が揺れる環境では、 BFD検知が経路変動を増幅させる場合があります。

■ 現場で多い失敗パターン

失敗①:タイマーを極端に短くする

interval 50ms
multiplier 3

→ 150ms検知

一見速いですが、 CPU負荷と誤検知リスクが爆増します。

現実的目安:

  • 300ms〜500ms
  • 検知倍率3〜5

失敗②:全セッションにBFD適用

BGPピア数が多い環境で全適用すると、 CPUが飽和します。

原則:

  • 重要経路のみ適用
  • コア間のみ適用

失敗③:FWでBFDを使って非対称化

BFDで経路が即切替 → セッションが別経路へ流れる → FWでセッション不一致 → 通信断

必ず:

  • セッション同期確認
  • 経路対称性確認

失敗④:BFDとOSPFタイマーを両方極小化

二重に検知が走るとフラップの原因になります。

基本原則:

  • 検知はBFDに任せる
  • OSPF/BGPは標準値寄りでOK

■ 安全な導入ステップ

Step1:対象経路を限定

  • コア間
  • WAN冗長回線
  • DC間接続

Step2:保守的なタイマーで開始

interval 300ms
multiplier 3

Step3:CPU監視

  • show process cpu
  • 制御プレーン利用率

Step4:フェイルオーバーテスト実施

  • 物理断テスト
  • 対向装置停止テスト
  • アプリ影響確認

■ BFD導入による期待効果

導入前導入後
OSPF Dead 40秒約1秒未満
BGP Hold 180秒約1秒未満
ブラックホール時間発生ほぼゼロ化

■ まとめ

BFDは「高速化の切り札」ですが、

  • 万能ではない
  • CPU負荷を伴う
  • 設計とセットで考えるべき

という前提を忘れてはいけません。

導入すべきケース:

  • 1秒未満収束が必要
  • BGP高速化
  • DC間やWAN冗長

注意すべきポイント:

  • タイマー極小化しすぎない
  • 全適用しない
  • FWとの相性確認

BFDは「速さのための道具」です。 安定性を犠牲にしない設計こそが、真の高速フェイルオーバーです。

目次