ナビゲーションに移動Ciscoを中心としたネットワーク技術をわかりやすく解説します。BGPルートフィルタのポイントFacebooktwitterHatenaPocketCopy目次1概要マルチホームASでのルートフィルタのポイントマルチホームASでのBGPルートのアドバタイズBGPルートのフィルタ方法の概要まとめ概要インターネット接続を冗長化したマルチホームASでは、適切なBGPルートのフィルタの設定が必要です。マルチホームASでのルートフィルタのポイントについて解説します。マルチホームASでのルートフィルタのポイントマルチホームASのBGPルータは、複数のISPのルータとBGPネイバーを確立します。ISPルータへBGPルートをアドバタイズするときに、以下のフィルタをかけます。自AS内のネットワークのみをISPルータにアドバタイズするこうしたマルチホームASでのBGPルートフィルタについて考えます。マルチホームASでのBGPルートのアドバタイズマルチホームASで複数のASのBGPルータとネイバーを確立すると、デフォルトではトランジットASとして動作してしまいます。BGPネイバーから受信したルートは、ベストパスであればさらに他のBGPネイバーにアドバタイズするからです。次の図のネットワーク構成を考えます。ネットワーク構成例マルチホームAS(AS1)内のR1がISP1、ISP2とEBGPネイバーを確立しています。ISP1からBGPで100.0.0.0/8のルート情報を受信すると、R1はBGPテーブルにそのルート情報を格納します。ルートがループしていなければ、ベストパスに選択されることになります。すると、R1はISP1から受信した100.0.0.0/8のルート情報をさらにISP2へとアドバタイズします。他のASのBGPルートをアドバタイズトランジットASとは他のAS間のパケットをルーティングする役割を持っているASです。R1のこのようなルート情報の送信は、ISP2に対して「100.0.0.0/8宛てのパケットをこちらに転送してきてもいい」といっていることになります。100.0.0.0/8のネットワーク宛てのパケットがR1(AS1)へルーティングされる可能性がありAS1がトランジットASになってしまうことになります。100.0.0.0/8はAS1の内部のネットワークではありません。ISPと契約してインターネットに接続する目的は、自分のASの中からインターネット上のネットワークとの相互通信ができるようにすることです。他のAS間のパケットのルーティングを行うために、ISPと契約してインターネットに接続しているわけではありません。インターネット上のネットワークと相互通信するためには、次の2つができればいいです。自AS内のネットワークのルート情報をISPへ送信ISPからインターネット上のネットワークのルート情報を受信つまり、他のASのネットワークのルート情報をISPにアドバタイズする必要はないのです。アドバタイズしてしまうとトランジットASの構成になり、他のASのネットワーク宛てのパケットが転送されてきてしまう可能性があるので望ましくありません。実際には、ISP側でそのようなルートはフィルタされることがほとんどなので、パケットが転送されることはまずありません。不要なルート情報をアドバタイズすることは、他のASに余計な負荷をかけることになります。そのため、マルチホームASではトランジットASにならないようにするためのルートフィルタが必要です。BGPルートをISPのルータにアドバタイズするときにフィルタをかけます。ISPへアドバタイズするルート情報は自AS内のネットワークのもののみに限定します。特定のBGPネイバーへアドバタイズするときのBGPルートのフィルタには次の4つあります。ディストリビュートリスト(distribute-list)プレフィクスリスト(prefix-list)フィルターリスト(filter-list)ルートマップBGPでもルートフィルタ機能として、ディストリビュートリストやプレフィクスリストを利用することができます。これらのフィルタは、ルート情報のネットワークアドレス(とサブネットマスク)に注目して許可/拒否するルートを指定します。これらを利用してもいいのですが、BGPルート特有のAS_PATHアトリビュートに注目したフィルターリストを利用する方が効果的なフィルタが可能です。ディストリビュートリストやプレフィクスリストといったネットワークアドレスをベースにしたフィルタは、フィルタ対象のルート数が多くなると、その分設定が面倒になります。それに対して、自AS内のルート情報のAS_PATHアトリビュートはすべて同じなので、AS_PATHアトリビュートをベースにしたフィルターリストは簡単に設定することができます。関連記事BGPのルートフィルタについてさらに詳細は、以下の記事をご覧ください。ネットワークのおべんきょしませんか?https://www.n-study.com/bgp-detail/bgp-route-filter-overview/BGPで特定のネイバーとルート情報を送受信する際にフィルタをかけられます。BGPでのルートフィルタでは、「どうやってルート情報を特定するか」が重要です。自ASのルートのみをアドバタイズするフィルタリストについて、以下の記事もあわせてご覧ください。ネットワークのおべんきょし...https://www.n-study.com/bgp-detail/bgp-route-filter-filter-list-as-path-acl/BGPルートフィルタのフィルタリストの設定と確認コマンドについて解説します。ACLによってフィルタするBGPルートを特定します。ACLでは、フィルタ対象のBGPルートのAS_PATHアトリビュートを正規表現により特定します。ACL)によるBGPルートフィルタの設定例です。正規表現でどのようにAS_PATHアトリビュートを表すかが大事なポイントです。まとめポイントマルチホームASでは、ISPルータへアドバタイズするBGPルートとして自AS内のネットワークのみにフィルタします。したルートフィルタを実現するためには、AS_PATHアトリビュートに基づいたフィルターリストの設定が効率的です。ネットワークのおべんきょしませんか?https://www.n-study.com/2022-pv-ranking/2022年「ネットワークのおべんきょしませんか?」コンテンツのページビューランキングTOP10です。ネットワーク技術解説記事のアップデートや新規記事をTwitterでお知らせしています。