BFDとは
BFDは、さまざまなメディアタイプやカプセル化、トポロジ、ルーティングプロトコルに対応し、高速に転送パスの障害を検出するためのプロトコルです。
ネットワーク管理の効率化: BFDを使用することで、ネットワークのプロファイリングと計画が容易になり、コンバージェンス時間を一貫して予測できるようになります。
一貫性のある障害検出: BFDは、ネットワーク管理者に対し、複数のルーティングプロトコルの可変なhelloメカニズムではなく、統一されたレートで障害を検出する手段を提供します。
BFDの動作について
BFDの動作について以下にその主要なポイントを示します。
- 検出の対象: インターフェイス、データリンク、転送プレーンを含む転送パスの障害を短期間で検出します。
- 動作モード: シスコでは、BFD非同期モードをサポートしています。このモードでは、2つのルータ間でBFDネイバーセッションを維持するために、BFD制御パケットを定期的に送信します。
- 設定の必要性: BFDセッションを作成するには、両方のルータでBFDを有効にする必要があります。これにより、BFDタイマーがネゴシエートされ、指定された間隔でBFD制御パケットが交換されます。
- ルーティングプロトコルのサポート: 適切なルーティングプロトコルに対して、インターフェイスレベルおよびルータレベルでBFDを有効にすると、BFDセッションが自動的に開始されます。
BFDのインターフェイスでの設定
基本構文
インターフェイスで BFD を有効にします。
Router(config)#interface type number
Router(config-if)#bfd interval tx-interval min_rx rx-interval multiplier interval-multiplier
| 項目 | 意味 |
|---|---|
| tx-interval | 送信間隔(ミリ秒) |
| rx-interval | 受信間隔(ミリ秒) |
| interval-multiplier | BFDセッションがダウンと見なされる前に受信を期待するBFDパケットの数。 |
設定例
50ミリ秒ごとにBFDパケットを送信し、受信インターバルも50ミリ秒、3回の受信失敗でダウンとみなす設定例です。
R1(config)#interface GigabitEthernet0/2
R1(config-if)#bfd interval 50 min_rx 50 multiplier 3
BFDの各プロトコルに対する設定
BFDはBGP,EIGRP,OSPF,HSRPで個別に設定することが出来ます。
基本構文(BGP)
BGPに対して、フェールオーバーに対する BFD サポートをイネーブルにします。
Router(config)#router bgp as-tag
Router(config-router)#neighbor ip-address fall-over bfd
設定例(BGP)
ルータは192.168.12.2のBGPネイバーとのセッションに対してBFDを使用して障害検出を行います。BFDセッションがダウンした場合、BGPはすぐにネイバーシップをダウンさせ、迅速なコンバージェンスを可能にします。
R1(config)#router bgp 65001
R1(config-router)#neighbor 192.168.12.2 fall-over bfd
基本構文(EIGRP)
EIGRPに対して、インターフェイスを指定してBFDを有効にします。
Router(config)#router eigrp as-number
Router(config-router)#[bfd all-interfaces | bfd interface type number]
項目 意味 bfd all-interfaces すべてのインターフェイスで、BFD を有効にします。 bfd interface type number 1つ以上のインターフェイスに対して、BFDを有効にします。
設定例(EIGRP)
EIGRPが有効なすべてのインターフェースでBFDを有効にします。
R1(config)#router eigrp 1
R1(config-router)#bfd all-interfaces
基本構文(OSPF)
すべてのインターフェイスで、BFD を有効にする場合
OSPF ルーティング プロセスに関連付けられたすべてのインターフェイスで、BFD を有効にします。
Router(config)#router ospf process-id
Router(config-router)#bfd all-interfaces
1つ以上のインターフェイスに対して、BFDを有効にする場合
OSPF ルーティング プロセスに関連付けられた 1 つ以上のインターフェイスに対して、インターフェイスごとに BFDを有効にします。
Router(config)#interface type number
Router(config-if)#ip ospf bfd
設定例(OSPF)
OSPFが有効なすべてのインターフェースでBFDを有効にします。
R1(config)#router ospf 1
R1(config-router)#bfd all-interfaces
基本構文(HSRP)
すべてのインターフェイスで、BFD を有効にする場合
すべてのインターフェイスで BFD に対する HSRP を有効にします。
Router(config)#standby bfd all-interfaces
1つ以上のインターフェイスに対して、BFDを有効にする場合
インターフェイスで BFD に対する HSRPを有効にします。
Router(config)#interface type number
Router(config-if)#standby bfd
設定例(HSRP)
GigabitEthernet0/2でHSRPをBFDでサポートする設定です。
R1(config)#interface GigabitEthernet0/2
R1(config-if)#standby bfd
BFD設定のオプション
BFD 低速タイマーの設定
BFD の slow timer を設定します。
Router(config)#bfd slow-timer milliseconds
BFD エコー モードのディセーブル化
ルータからエコー パケットが送信されず、ルータはネイバー ルータが受信した BFD エコー パケットを転送しません。
Router(config)# [no] bfd echo
エコーパケットとはBFDセッションで使用される制御パケットの一種で、デバイス(ルータなど)が自分自身に対して送信し、対向のデバイスによってそのパケットがリフレクト(反射)されて返ってくることで、転送パスが正常であるかを確認します。
BFD テンプレートの作成と設定
Router(config)#bfd-template single-hop template-name
Router(config-bfd)#interval min-tx tx-interval min-rx rx-interval multiplier interval-multiplier
| 項目 | 意味 |
|---|---|
| tx-interval | 送信間隔(ミリ秒) |
| rx-interval | 受信間隔(ミリ秒) |
| interval-multiplier | BFDセッションがダウンと見なされる前に受信を期待するBFDパケットの数。 |
インターフェイス コンフィギュレーション モードを開始します。
Router(config)#interface type number
インターフェイスで BFD テンプレートを有効にします。
Router(config-if)#bfd template template-name
BFDテンプレートの設定例
TEST という名前のBFDテンプレートを作成して、Gi0/2に適応させます。この作成したテンプレートはほかのIFでも使用することが出来ます。
R1(config)#bfd-template single-hop TEST
R1(config-bfd)#interval min-tx 50 min-rx 50 multiplier 3
R1(config-bfd)#exit
R1(config)#interface GigabitEthernet0/2
R1(config-if)#bfd template TEST
R1(config-if)#
*Aug 25 07:37:38.966: %BFD-6-BFD_IF_CONFIGURE: BFD-SYSLOG: bfd config apply, idb:GigabitEthernet0/2