OSPFでのルートフィルタの動作概要
OSPFは、ルータ同士でLSAを交換します。LSAの内容は、必ずしもネットワークアドレス/サブネットマスクではありません。この点が、RIPやEIGRPのディスタンスベクタ系ルーティングプロトコルと大きく違う点です。そして、OSPFのルートフィルタの動作がRIPやEIGRPのルートフィルタと異なる理由です。
ディストリビュートリストやプレフィクスリストは、permit/denyするネットワークアドレスやサブネットマスクを特定してフィルタをかけます。そのため、ネットワークアドレス/サブネットマスクが含まれているとは限らないLSAをフィルタすることができません。
ただ、ややこしいことに、ディストリビュートリストやプレフィクスリストがOSPFでまったく使えないわけではないです。OSPFでのディストリビュートリストの動作は、次のようになっています。
- インタフェースを対象としたout方向は機能しない
- in方向はルーティングテーブルにルートを登録するときに機能する
以降、簡単に解説します。
インタフェースを対象としたout方向のフィルタ
インタフェースを指定したoutの方向は、前述のようにディストリビュートリスト/プレフィクスリストでLSAのフィルタができないからです。
なお、outの方向でインタフェースを指定しない場合は、全インタフェースが対象です。このときもフィルタはかかりません。outのあとにルーティングプロトコルを指定することもあります。これは、OSPFへの再配送時のフィルタです。再配送時のフィルタは、LSAタイプ5のフィルタで、この場合はフィルタがかかります。再配送時のフィルタについては、あらためて解説します。
inの方向のフィルタ
inの方向でも、ディストリビュートリスト/プレフィクスリストではやはりLSAのフィルタはできません。受信したLSAはLSDB内に格納されます。LSDBから、SPFアルゴリズムでルーティングテーブルにルート情報を登録します。このときはネットワークアドレス/サブネットマスクの形になっているので、ディストリビュートリスト/プレフィクスリストでのフィルタが可能です。つまり、ルーティングテーブルに登録するかしないかを決めるのが、OSPFでのinの方向のフィルタです。
なお、in方向でインタフェースを指定した場合は、そのインタフェースが出力インタフェースとなるルートが対象です。
次回は、この動作を実際の実機で確認します。
わかりやすいGene解説のOSPF関連コンテンツ購入はこちらから!!







