DR/BDRとは

DR(Designated Router)/BDR(Backup Designated Router)とは、イーサネットなどのマルチアクセスネットワーク上で効率よくLSDBの同期をとるために選ばれるルータです。DRはマルチアクセスネットワークを代表するOSPFルータです。そして、BDRは、DRのバックアップです。もし、DRがダウンしたらBDRが次のDRとなります。なお、マルチアクセスネットワーク上で、DRでもBDRでもないOSPFルータはDROTHERです。

DRによって、マルチアクセスネットワーク上でLSDBの同期をとる仕組みを詳しく解説します。

DRは、「代表ルータ」「指名ルータ」「指定ルータ」などと日本語訳されます。

イーサネット(マルチアクセスネットワーク)上でのLSDBの同期

イーサネットのようなマルチアクセスネットワークには、2台以上のOSPFルータが接続される可能性があります。そして、マルチアクセスネットワーク上の各OSPFルータは、最終的にLSDBの同期を取ります。

簡単なマルチアクセスネットワークの例を考えます。以下の図では、イーサネット上にR1~R4の4台のOSPFルータが接続されています。それぞれのルータのLSDBには、はじめは自身のLSAのみが登録されています。それが、最終的には各ルータのLSDBの同期を取ります。R1~R4のLSDBには、R1~R4のすべてのLSAが登録されるようにします。

図 イーサネット上でのLSDBの同期
図 イーサネット上でのLSDBの同期
図のLSDBに含まれるLSAは簡略化して、LSAタイプ1のみを考えています。実際にはLSAタイプ2もLSDBに含まれることになります。

DRを介したLSDBの同期

このような同期をとるために、OSPFでは、マルチアクセスネットワーク上ではDRを選出します。DRとマルチアクセスネットワーク上のOSPFルータ間でアジャセンシーを確立します。各ルータは自身のLSAをDRに送信します。つまり、DRにすべてのLSAが集まることになります。

図 DRを介したLSDBの同期 その1
図 DRを介したLSDBの同期 その1

そして、不足しているLSAをDRから送ってもらうようにして、最終的にマルチアクセスネットワーク上のすべてのOSPFルータのLSDBの同期を取ります。

図 DRを介したLSDBの同期 その2
図 DRを介したLSDBの同期 その2
DRを介したLSDBの同期の図では、BDRは考慮していません。図の様子はわかりやすくしているため実際のLSAの送信の動作そのものではありません。図にあるように、複数のルータがタイミングを合わせてDRにLSAを送信しているわけではありません。
DRとABRを混同してしまっている人をときどき見かけますが、DRとABRはまったく違います。DRはマルチアクセスネットワークを代表するルータで、ABRはOSPFエリアを相互接続するルータです。

DRとネイバー/アジャセンシー

R1~R4のネイバーとアジャセンシーの関係は、以下のようになります。

図 DRとネイバー/アジャセンシー
図 DRとネイバー/アジャセンシー
ルータ同士の関係ルータ間
ネイバーR2-R3、R2-R4、R3-R4
アジャセンシーR1-R2、R1-R3、R1-R4
表 ネイバーとアジャセンシー

DRとなっているR1との間のみアジャセンシーとなります。その他のルータ間は単なるネイバーです。単なるネイバー関係のルータ同士は直接LSAを交換していないのですが、最終的には同じLSDBを持っています。

DR/BDRの選出

DR/BDRの選出は、次の2つのパラメータによって行われます。

  • ルータプライオリティ
  • ルータID

ルータプライオリティとルータIDは、ともにHelloパケットの中に含まれています。ルータプライオリティは、OSPFのインタフェースに対して設定されている8ビットの値です。10進数では0~255の範囲の値です。ルータプライオリティの値が最も大きいルータがDRになり、次に大きいルータがBDRになります。また、プライオリティ「0」はDR/BDRにならないということを意味しています。

ルータプライオリティが同じ値で、ルータプライオリティでDR/BDRが決められないときにルータIDによる選定を行います。ルータIDが最も大きいルータがDRになり、次にルータIDが大きいルータがBDRになります。ルータIDは一意なので、ルータIDによって最終的には、必ずDR/BDRが決まります。

DRの切り替え

DRを中心として、マルチアクセスネットワーク上でLSDBの同期を確保しています。DRが変更されてしまうと、LSDBの同期を保つことができずに、パケットをルーティングできなくなってしまうことがあります。そこで、いったん決まったDR/BDRはなるべく変更されないようにしています。あとから、ルータプライオリティが大きいルータが追加されても、既存のDR/BDRは変わりません。また、DRがダウンしたときにはBDRが新しいDRになります。

以下の図では、R1のルータプライオリティが5でDRとなり、R2のルータプライオリティが2でBDRとなっています。そこに、新しくルータプライオリティ10のR5を追加したとしても、DRおよびBDRは変わりません。

図 DRの切り替え その1
図 DRの切り替え その1

そして、DRであるR1がダウンすると、BDRであったR2が新しいDRになります。R5がDRになるわけではありません。BDRとは、現在のDRが利用できなくなったら次に必ずDRになるルータです。このとき、R5はBDRになります。

図 DRの切り替え その1
図 DRの切り替え その2

以上のように、なるべくDR/BDRの変更が起こらないような動作になっています。そのため、マルチアクセスネットワーク上に複数のOSPFルータが存在するとき、ルータの起動する順番を考えておく必要があります。DRにしたいルータの起動の順序が遅くなると、プライオリティが高くてもDRにならない場合があるからです。

DRの選出の例

さて、ここまでは1つのイーサネットネットワークを例にしてDR/BDRについて考えています。もう少し現実的な以下のようなネットワーク構成で、DRの選出を考えます。

図 DRの選出の例 その1
図 DRの選出の例 その1

この図のR1-R5間は、シリアル接続のポイントツーポイントネットワークです。ほかはすべてイーサネットのマルチアクセスネットワークとしています。また、OSPFのルータプライオリティは、記載していない部分はすべて1としています。

DR/BDRは、マルチアクセスネットワークごとに選出します。つまり、DR/BDRはルータ単位で考えるのではなく、OSPFを有効化しているイーサネットのインタフェースごとに考えます。ポイントツーポイントネットワークではDR/BDRの選出は不要です。この例での、DRの選出は以下のようになります。なお、話を簡単にするためにBDRは考慮しません。

ネットワークDR
192.168.12.0/24R2
192.168.134.0/24R1
192.168.15.0/24DRの選出不要(ポイントツーポイント)
192.168.2.0/24R2
192.168.3.0/24R3
192.168.4.0/24R4
192.168.5.0/24R5
表 DRの選出

192.168.12.0/24ではルータプライオリティが大きいR2がDRです。192.168.134.0/24ではルータプライオリティが大きいR1がDRです。そして、マルチアクセスネットワークでは、DRとの間でアジャセンシーとなりLSDBの同期を取ります。ポイントツーポイントネットワークでは、DRは選出していませんが、R1とR5はネイバーがすなわちアジャセンシーとなりLSDBの同期を取ります。最終的には、R1~R5のすべてのOSPFルータのLSDBが同期します。

図 DRの選出の例 その2

まとめ

ポイント

  • DR/BDRはイーサネットなどのマルチアクセスネットワーク上で効率よくLSDBの同期をとるために選出されるルータです。DR/BDRとの間でアジャセンシーを確立して、LSAを交換し、LSDBを同期します。
  • ポイントツーポイントネットワークではDR/BDRの選出は不要です。
  • DR/BDRはルータプライオリティととルータIDによって選出されます。DRがダウンすると、BDRが新しいDRになります。

OSPFの仕組み