22. OSPF
OSPF はインテリアゲートウェイプロトコルの一種で、グラフ理論をベースとしたリンク状態型の動的ルーティングプロトコルであ る。
22.1
OSPF の有効設定
[ 書式 ] ospf configure refresh
[ 設定値 ] なし
[ 説明 ] OSPF 関係の設定を有効にする。OSPF 関係の設定を変更したら、本製品を再起動するか、あるいはこのコマン
ドを実行しなくてはいけない。
22.2
OSPF の使用設定
[ 書式 ] ospf use use no ospf use [use]
[ 設定値 ] ○use
●on... OSPF を使用する
●off... OSPF を使用しない
[ 説明 ] OSPF を使用するか否かを設定する。
[ ノート ] いずれかのインタフェースにセカンダリアドレスを割り当てた場合、OSPF を使用することはできない。
[ 初期値 ] off
22.3
OSPF による経路の優先度設定
[ 書式 ] ospf preference preference no ospf preference [preference]
[ 設定値 ] ○preference...OSPF による経路の優先度 (1 以上の数値 )
[ 説明 ] OSPF による経路の優先度を設定する。優先度は 1 以上の数値で表され、数字が大きい程優先度が高い。OSPF
と RIP など複数のプロトコルで得られた経路が食い違う場合には、優先度が高い方が採用される。優先度が同じ 場合には時間的に先に採用された経路が有効となる。
[ ノート ] 静的経路の優先度は 10000 で固定である。
[ 初期値 ] 2000
22.4
OSPF のルータ ID 設定
[ 書式 ] ospf router id router-id no ospf router id [router-id]
[ 設定値 ] ○router_id...IP アドレス
[ 説明 ] OSPF のルータ ID を指定する。
[ 初期値 ] LAN インタフェースの中でインタフェースの若いものから順にサーチして、 プライマリ IP アドレスがついてい
るインタフェースの IP アドレスをルータ ID とする
22.5
OSPF で受け取った経路をルーティングテーブルに反映させるか否かの設定
[ 書式 ] ospf export from ospf filter filter_num...
no ospf export from ospf [filter filter_num...]
[ 設定値 ] ○filter_num... ospf export filterコマンドのフィルタ番号
[ 説明 ] OSPF で受け取った経路をルーティングテーブルに反映させるかどうかを設定する。指定したフィルタに一致す
る経路だけがルーティングテーブルに反映される。コマンドが設定されていない場合には、すべての経路がルー ティングテーブルに反映される。
[ ノート ] このコマンドは OSPF のリンク状態データベースには影響を与えない。つまり、OSPF で他のルータと情報をや
り取りする動作としては、このコマンドがどのように設定されていても変化は無い。OSPF で計算した経路が、
実際にパケットをルーティングするために使われるかどうかだけが変わる。
[ 初期値 ] すべての経路がルーティングテーブルに反映される
22.6
外部プロトコルによる経路導入
[ 書式 ] ospf import from protocol [filter filter_num...]
no ospf import from [protocol [filter filter_num...]]
[ 設定値 ] ○protocol... OSPF の経路テーブルに導入する外部プロトコル
●static... 静的経路
●rip... RIP
●bgp... BGP
○filter_num... フィルタ番号
[ 説明 ] OSPF の経路テーブルに外部プロトコルによる経路を導入するかどうかを設定する。導入された経路は外部経路
として他の OSPF ルータに広告される。
filter_numは ospf import filterコマンドで定義したフィルタ番号を指定する。外部プロトコルから導入されよう とする経路は指定したフィルタにより検査され、フィルタに該当すればその経路は OSPF に導入される。該当す るフィルタがない経路は導入されない。また、filterキーワード以降を省略した場合には、すべての経路が OSPF に導入される。
経路を広告する場合のパラメータであるメトリック値、メトリックタイプ、タグは、フィルタの検査で該当した ospf import filterコマンドで指定されたものを使う。filterキーワード以降を省略した場合には、以下のパラ メータを使用する。
●metric = 1
●type = 2
●tag = 1
[ 初期値 ] 外部経路は導入しない
188 22.OSPF
22.7
OSPF で受け取った経路をどう扱うかのフィルタの設定
[ 書式 ] ospf export filter filter_num[nr] kindip_address/mask...
no ospf export filter filter_num[...]
[ 設定値 ] ○filter_num...フィルタ番号
○nr...フィルタの解釈の方法
●not... フィルタに該当しない経路を導入する
●reject...フィルタに該当した経路を導入しない
●省略時は、フィルタに該当した経路を導入する
○kind... フィルタ種別
●include...指定したネットワークアドレスに含まれる経路 ( ネットワークアドレス自身を含む )
●refines...指定したネットワークアドレスに含まれる経路 ( ネットワークアドレス自身を含まない )
●equal...指定したネットワークアドレスに一致する経路
○ip_address/mask...ネットワークアドレスをあらわす IP アドレスとマスク長
[ 説明 ] OSPF により他の OSPF ルータから受け取った経路を経路テーブルに導入する際に適用するフィルタを定義す
る。このコマンドで定義したフィルタは、ospf export fromコマンドの filter 項で指定されてはじめて効果を 持つ。
ip_address/maskでは、ネットワークアドレスを設定する。これは、複数設定でき、経路の検査時にはそれぞれ
のネットワークアドレスに対して検査を行う。
nrが省略されている場合には、一つでも該当するフィルタがある場合には経路が導入される。
not指定時には、すべての検査でフィルタに該当しなかった場合に経路が導入される。reject指定時には、一つで も該当するフィルタがある場合には経路が導入されない。
kindでは、経路の検査方法を設定する。
●include...ネットワークアドレスと一致する経路および、ネットワークアドレスに含まれる経路が該 当となる
●refines...ネットワークアドレスに含まれる経路が該当となるが、ネットワークアドレスと一致する 経路が含まれない
●equal...ネットワークアドレスに一致する経路だけが該当となる
[ ノート ] not指定のフィルタを ospf export fromコマンドで複数設定する場合には注意が必要である。not指定のフィル タに合致するネットワークアドレスは、そのフィルタでは導入するかどうかが決定しないため、次のフィルタで 検査されることになる。そのため、例えば、以下のような設定ではすべての経路が導入されることになり、フィ ルタの意味が無い。
ospf export from ospf filter 1 2
ospf export filter 1 not equal 192.168.1.0/24 ospf export filter 2 not equal 192.168.2.0/24
1 番のフィルタでは、192.168.1.0/24 以外の経路を導入し、2 番のフィルタで 192.168.2.0/24 以外の経 路を導入している。つまり、経路 192.168.1.0/24 は 2 番のフィルタにより、経路 192.168.2.0/24 は 1 番のフィルタにより導入されるため、導入されない経路は存在しない。
経路 192.168.1.0/24 と経路 192.168.2.0/24 を導入したくない場合には以下のような設定を行う必要があ る。
ospf export from ospf filter 1
ospf export filter 1 not equal 192.168.1.0/24 192.168.2.0/24 あるいは、
ospf export from ospf filter 1 2 3
ospf export filter 1 reject equal 192.168.1.0/24 ospf export filter 2 reject equal 192.168.2.0/24 ospf export filter 3 include 0.0.0.0/0
[ 初期値 ] フィルタは設定されていない
22.8
外部経路導入に適用するフィルタ定義
[ 書式 ] ospf import filter filter_num [nr] kind ip_address/mask...[parameter...]
no ospf import filter filter_num [[not] kind ip_address/mask...[parameter...]]
[ 設定値 ] ○filter_num... フィルタ番号
○nr... フィルタの解釈の方法
●not... フィルタに該当しない経路を広告する
●reject... フィルタに該当した経路を広告しない
●省略時は、フィルタに該当した経路を広告する
○kind
●include... 指定したネットワークアドレスに含まれる経路 ( ネットワークアドレス自身を含む )
●refines... 指定したネットワークアドレスに含まれる経路 ( ネットワークアドレス自身は含まない )
●equal... 指定したネットワークアドレスに一致する経路
○ip_address/mask... ネットワークアドレスをあらわす IP アドレスとマスク長
○parameter... 外部経路を広告する場合のパラメータ
●metric... メトリック値 (0..16777215)
●type... メトリックタイプ (1..2)
●tag... タグの値 (0..4294967295)
[ 説明 ] OSPF の経路テーブルに外部経路を導入する際に適用するフィルタを定義する。このコマンドで定義したフィル
タは、ospf import fromコマンドの filter項で指定されてはじめて効果を持つ。
ip_address/maskでは、ネットワークアドレスを設定する。 これは、複数設定でき、経路の検査時にはそれぞれ
のネットワークアドレスに対して検査を行い、1 つでも該当するものがあればそれが適用される。
nrが省略されている場合には、一つでも該当するフィルタがある場合には経路を広告する。not指定時には、すべ ての検査でフィルタに該当しなかった場合に経路を広告する。reject指定時には、 一つでも該当するフィルタがあ る場合には経路を広告しない。
kindでは、経路の検査方法を設定する。
●include... ネットワークアドレスと一致する経路および、ネットワークアドレスに含まれる経路が該 当となる
●refines... ネットワークアドレスに含まれる経路が該当となるが、ネットワークアドレスと一致する 経路が含まれない
●equal... ネットワークアドレスに一致する経路だけが該当となる
kindの前に notキーワードを置くと、該当 / 非該当の判断が反転する。例えば、not equalでは、ネットワークアド レスに一致しない経路が該当となる。
parameterでは、該当した経路を OSPF の外部経路として広告する場合のパラメータとして、メトリック値、メト
リックタイプ、タグがそれぞれ metric、type、tagにより指定できる。これらを省略した場合には、 以下の値が 採用される。
●metric = 1
●type = 2
●tag = 1
[ ノート ] not指定のフィルタを ospf import fromコマンドで複数設定する場合には注意が必要である。not指定のフィル タに合致するネットワークアドレスは、そのフィルタでは導入するかどうかが決定しないため、次のフィルタで 検査されることになる。そのため、例えば、以下のような設定ではすべての経路が広告されることになり、フィ ルタの意味が無い。
ospf import from static filter 1 2
ospf import filter 1 not equal 192.168.1.0/24 ospf import filter 2 not equal 192.168.2.0/24
1 番のフィルタでは、192.168.1.0/24 以外の経路を広告し、2 番のフィルタで 192.168.2.0/24 以外の経 路を広告している。つまり、経路 192.168.1.0/24 は 2 番のフィルタにより、経路 192.168.2.0/24 は 1 番のフィルタにより広告されるため、広告されない経路は存在しない。
経路 192.168.1.0/24 と経路 192.168.2.0/24 を広告したくない場合には以下のような設定を行う必要があ る。
ospf import from static filter 1
ospf import filter 1 not equal 192.168.1.0/24 192.168.2.0/24