OSPF設定ガイド

$Id: ospf-guide.html,v 1.1 $

OSPFの設定を行う上での基本的なガイドラインを示します。

OSPFを使用する

OSPFを使用するためには、ospf useコマンドを設定します。

	# ospf use on

ルータIDの決定

このルータのルータIDを決定します。デフォルトの状態では、ルータIDはイン タフェースに付与されているプライマリIPアドレスを使用します。インタフェー スは以下の順番でサーチします。

LAN1 → LAN2 → ... → LANn → PP1 → PP2 → ...

特定のインタフェースのIPアドレスをルータIDとして使用する場合には、 ospf router idコマンドを利用できます。

	# ospf router id 192.168.128.1

ospf router idコマンドでは、インタフェースに付与されていないIP アドレスをルータIDとして設定することもできますが、そのような設定は推奨 しません。

Ciscoなどとは違い、RTシリーズではインタフェースに付与されたIPアドレス にはたとえそのインタフェースがダウンしていても他のインタフェースから到 達可能であり、「安定したインタフェース」という概念は存在しません。その ため、CiscoでOSPFを利用する時の常套手段である、「ローカルインタフェー スを定義してそこにIPアドレスを付与することで、ダウンすることのない安定 したインタフェースのIPアドレスをルータIDとして利用する」というテクニッ クは必要ありません。

エリアの設定

このルータが含まれるエリアをospf areaコマンドで設定します。

ospf areaコマンドでは同時にエリアがスタブエリアであるかどうかを 設定できます。スタブエリアであるかどうかの設定はそのエリアに含まれるす べてのルータで一致している必要があります。

また、ospf areaコマンドでは、エリアで使用する認証の形式を設定す ることができます。認証にはプレーンテキスト認証とMD5認証がありますが、 ネットワークをモニタしていても認証鍵が分からないMD5認証の利用を推奨し ます。

このルータがエリア境界ルータである場合には、必ずバックボーンエリアも設 定します。エリア境界ルータは直接バックボーンエリアに接しているか、そう でない場合にも仮想リンクにより必ずバックボーンエリアと接続しているため です。

	# ospf area backbone	バックボーンエリア
	# ospf area 1 stub	エリア1はスタブエリア
	# ospf area 2 auth=md5	エリア2ではMD5認証を利用

エリアのネットワーク範囲の設定

エリア境界ルータでは、バックボーン以外のエリアに対して、エリア内のネッ トワークの範囲をospf area networkコマンドで設定できます。 ospf area networkは必ずしも必要な設定ではありませんが、このコマ ンドを設定しておくと、他のエリアへ経路を広告する時に、個々の経路を ospf area networkで設定したネットワーク経路に要約して広告してく れるため、他のエリアで扱う情報が少なくなるというメリットがあります。

また、restrictキーワードをつけたospf area networkコマン ドを設定しておくと、そのネットワークに含まれる経路は要約した経路も含め て一切、他のエリアに広告しなくなります。

	# ospf area network 1 192.168.128.0/20
		エリア1以外のエリアには、経路として192.168.128.0/20を広告する

インタフェースの設定

ヤマハRTシリーズの実装では、OSPFのエリアに属するインタフェースは必ずIP アドレスが設定された、numberedの形でなくてはいけません。そのため、 ip INTERFACE addressコマンドで適切なIPアドレスを 設定します。

OSPF特有の設定としては、そのインタフェースが属するエリアと、インタフェー スのタイプ、認証鍵、その他の各種パラメータをip INTERFACE ospf areaコマンドで設定します。

LANインタフェースの場合には、INTERFACEにはインタフェース名 (lan1, lan2...)が入ります。PPインタフェースの場合には、ppが入り、 pp selectコマンドで設定したPPインタフェースについての設定となり ます。

インタフェースのタイプについて

インタフェースのタイプはtypeパラメータで設定します。LANインタフェー スの場合にはブロードキャスト型を表すbroadcastのみが設定できます。 PPインタフェースの場合には、PPPを利用する場合にはポイント・ポイントを 表すpoint-to-pointのみが、FRを利用する場合にはNBMAを表す non-broadcastと、ポイント・マルチポイントを表す point-to-multipointが設定できます。

PPPを利用する時には、ポイント・ポイント(point-to-point)をネットワーク タイプとして利用します。この時、近隣ルータのIPアドレスはip pp remote addressコマンドでの設定か、またはPPPのIPCP IPアドレスオプショ ンを利用して入手します。そのため、ポイント・ポイントを利用する場合には、 ip pp remote addressコマンドで接続相手のルータのIPアドレスを指 定するか、あるいはppp ipcp ipaddress onでIPCP IPアドレス オプションのネゴシエーションを行うよう設定します。

FRでNBMA(non-broadcast)を利用する時には、FRの各拠点間のすべての 間でPVCが設定されており、FRに接続された各ルータは他のルータと直接通信 できるような状態、すなわちフルメッシュになっている必要があります。また、 NBMAでは近隣ルータを自動的に認識することができないため、すべての近隣ルー タをip INTF ospf neighborコマンドで設定する必要が あります。

ポイント・マルチポイント(point-to-multipoint)を利用する場合には、 FRのPVCはフルメッシュである必要はなく、一部が欠けたパーシャルメッシュ、 あるいはスター状の形態でも利用できます。近隣ルータはInArpによって自動 的に認識するため、InArpの利用が必須となります。InArpを使うかどうかは fr inarpコマンドで制御できますが、デフォルトではInArpを使用する 設定になっているので、ip pp addressコマンドでインタフェースに適 切なIPアドレスを与えるだけでInArpを利用するかたちとなります。

ポイント・マルチポイント(point-to-multipoint)と設定されたインタ フェースでは、ip INTF ospf neighborコマンドの設定 は無視されます。

ポイント・マルチポイントの方がNBMAよりもネットワークの制約が少なく、ま た設定も簡単ですが、その代わりに回線を流れるトラフィックが大きくなりま す。NBMAでは、ブロードキャスト型と同じように指定ルータが選定され、 HELLOなどのOSPFトラフィックは各ルータと指定ルータの間だけに限定されま すが、ポイント・マルチポイントではすべての通信可能なルータペアの間にポ イント・ポイントリンクがあるという考え方なので、OSPFトラフィックもすべ ての通信可能なルータペアの間でやりとりされます。

また、ポイント・マルチポイントはすべてのOSPFルータで実装されているわけ ではありません。例えば、GateDのパブリックコードや初期のCisco IOSの実装 ではポイント・マルチポイントはサポートされていません。このような実装と 相互接続する場合にはNBMAを利用する必要があります。

認証鍵について

MD5認証の認証鍵は、md5keyパラメータで設定できます。

md5keyパラメータでは、鍵IDと鍵文字列の組を設定します。近隣ルー タとの間で双方が一致していなくてはいけません。また、md5keyパラ メータは同時に2つまで設定することができます。2つの鍵が設定された場合、 データの送信時にはデータを複製して、それぞれの鍵で認証したデータを2つ 送信します。データの受信時には鍵IDを調べて、一致する方の鍵で認証を確認 します。

このように2つの鍵を設定できるようにしているのは、認証鍵を変更する手 順を簡単にするためです。

通常の運用では、MD5認証鍵は1つだけ設定しておきます。MD5認証鍵を変更す る時は、まず1つのルータで新旧のMD5認証鍵を2つ設定し、その後、近隣ルー タでMD5認証鍵を新しいものに変更していきます。そして、最後に2つの鍵を設 定したルータで古い鍵を削除することで、通信を途絶させることなく鍵を変更 できます。

その他のパラメータについて

その他のパラメータには以下のものがあります。

priority
指定ルータ選定時の優先度。数値が大きいほど指定ルータに選ばれやすい。 0を設定すると指定ルータに選ばれなくなる
retransimit-interval
LSAを連続して送る時の再送間隔
transmit-delay
リンクの状態が変わってからLSAを送信するまでの時間
hello-interval
HELLOパケットの送信間隔
dead-interval
近隣ルータからHELLOを受け取れない時に、近隣ルータがダウンしたと判 断するまでの時間
poll-interval
非ブロードキャストリンクでのみ有効なパラメータで、近隣ルータがダウ ンしている時のHELLOパケットの送信間隔
authkey
プレーンテキスト認証の認証鍵を表す文字列

これらのパラメータはほとんどはデフォルトの設定値のまま運用できます。た だし、priorityパラメータは指定ルータになりたくない場合や、逆に 指定ルータになりたい場合には値を調整します。priorityパラメータ のデフォルト値は1です。

また、hello-intervaldead-intervalパラメータの値は近隣 ルータの間で一致している必要があります。これらのパラメータが食い違う HELLOパケットを受け取ると、OSPFルータはそれを無視するので、結果として 通信できないことになります。

hello-intervalのデフォルト値はインタフェースのタイプによって異 なります。インタフェースタイプがブロードキャスト(broadcast)また はポイント・ポイント(point-to-point)の場合、10秒に、インタフェー スタイプがNBMA(non-broadcast)またはポイント・マルチポイント (point-to-multipoint)の場合には30秒となっています。

dead-intervalのデフォルト値はhello-intervalの値の4倍です。

近隣ルータの設定

インタフェースタイプがNBMAの場合には、ip INTF ospf neighborコマンドで近隣ルータを指定します。近隣ルータはルータIDでは なく、NBMAネットワークに接続するインタフェースのIPアドレスを指定して下 さい。キーワードeligibleはその近隣ルータが指定ルータになれるこ とを示します。

	# ip pp ospf neighbor 192.168.128.25
	# ip pp ospf neighbor 192.168.128.26 eligible
	192.168.128.25と192.168.128.26は近隣ルータだが、192.168.128.26
		だけが指定ルータになり得る

インタフェースタイプがNBMA以外の場合には、ip INTF ospf neighborコマンドの設定は無視されます。

仮想リンクの設定

バックボーンエリア自身を除くすべてのエリアは、バックボーンエリアと接し ている必要があります。つまり、エリア境界ルータは必ずバックボーンエリア に属するインタフェースを持っています。

しかしながら、エリアの分割の仕方によってはバックボーンエリアと接してい ないエリアができてしまうことがあります。この時、エリア境界ルータは、バッ クボーンエリアに属するインタフェースを一つも持っていませんが、他のエリ ア境界ルータとの間で仮想リンクを設定することで、バックボーンエリアに仮 想的に所属する必要があります。仮想リンクは常にバックボーンエリアに属し ているとみなされます。

仮想リンクは2つのエリア境界ルータの間で設定されます。この2つのエリア境 界ルータは同じエリアに属している必要があります。つまり、仮想リンクはた だ1つのエリアを横断する形で存在します。

仮想リンクは、ospf virtual-linkコマンドで設定します。仮想リンク の相手となるルータのルータIDと、仮想リンクが横断するエリアを指定します。 その他に、インタフェースのパラメータと同様のパラメータが設定できます。

	# ospf virtual-link 192.168.1.1 10	エリア10を経由するルータ192.168.1.1への仮想リンク

仮想リンクは、一時的なものとして利用するべきです。仮想リンクを固定的に 使用するのは、OSPFトラフィックが増大し、また、設定を複雑にしてトラブル の要因が増えるだけで好ましいものではありません。仮想リンクが生じないよ うにエリア分割方式を見直すべきです。

外部プロトコルからの経路の導入

OSPFでは、OSPF以外のプロトコル(静的経路やRIP)によって得られた経路を外 部経路として他のOSPFルータに配布することができます。この機能を利用する と、ダイヤルアップ接続の先は静的経路を設定しておいて、それをOSPFで配布 したり、あるいはRIPしか使えないエリアとOSPFが使えるエリアの仲立ちをす ることができます。

外部プロトコルからの経路の導入は、ospf import fromコマンドで設 定します。パラメータとしてプロトコル名と、経路の導入の際に経路を選別す るフィルタ番号を指定できます。

	# ospf import from static		静的経路はすべて導入する
	# ospf import from rip filter 1		RIPによる経路はフィルタ1に合致するものだけ導入する

経路のフィルタはospf import filterコマンドで設定します。フィル タは、指定したネットワークアドレスに含まれる経路、指定したネットワーク アドレス自身をのぞき、それに含まれる経路、指定したネットワークアドレス に一致する経路、およびこれら3つの否定形が記述できます。

	# ospf import filter 1 include 192.168.0.0/24		192.168.0.0/24に含まれる経路、192.168.0.0/24自身を含む
	# ospf import filter 2 refines 192.168.0.0/24		192.168.0.0/24に含まれる経路、192.168.0.0/24自身を含まない
	# ospf import filter 3 equal 192.168.0.0/24		192.168.0.0/24自身
	# ospf import filter 4 not equal 192.168.0.0/24		192.168.0.0/24以外のすべて

OSPFの設定を有効にする

以上のOSPF関係の設定は、すべてospf configure refreshコマンドを 投入すると有効になります。OSPF関係の設定変更を行ったら必ずospf configure refreshコマンドを投入して下さい。

	# ospf configure refresh

関連文書