BGPを使用したネットワークにおいてどのようなロジックで経路選択を行っているかを説明します。今まで解説してきたようにBGP自体は非常に単純なプロトコルですが、それ故非常に柔軟な設定を行うことが可能です。ここでBGPの基本動作についておさらいしましょう。BGPルータのルート交換はBGPピア同士がUPDATEメッセージを送ることで行う。受け取ったUPDATEメッセージから、そのUPDATE情報に基づいたポリシーやフィルタリングを施し他のBGPピアへ送信する。通常BGPルータは同じ宛先への複数のルート情報を受け取った場合、すべてのルート情報を送るのではなく、最適なルート情報のみを送る。BGPルータはBGPピアから学習したルート情報から最適なルート情報のみ自身のルーティングテーブルに取り込む。BGPはAS_PATH属性内に自AS番号が存在すると(iBGPで学んだ経路は)、経路がループしていると判断し取り込まない。BGPピアからもらったルート情報は、そのBGPピアには返さない。AS20内のNetwork172.16.1.0/24に対してAS10内のルータRTBは、RTD経由とRTA経由から経路をもらいます。RTBは2つのルート情報を比較し最適なルート(この場合はRTDからのルート)を自身のルーティングテーブルに取り込みます。RTDは自身の中で最適なルート情報のみをピアに送るためRTD経由のルート情報をRTAには送りません。BGPは様々なパスアトリビュートやルートマップを使用してルーティングを思い通りに制御することができます。特定のネットワークのみを取り込みたいときや、一部のネットワークを広告したくない場合などに使用する。フィルタリングの方法として以下のような方法がある。PREFIX長をもとにフィルタリングを行う方法。上図のようにAS20内のネットワーク172.16.1.0/24をRTAへ伝搬させたいが、AS10からAS30へは伝搬させたくないといったとき、RTBにてPrefixListをしようしてフィルタリングを行います。PrefixListは通常のAccess-listと同様にリストの最後には暗黙のDenyがあるためすべてのアップデートを許可する設定を入れています。equal)、つまりすべてのネットワークを表します。ASパスフィルタは文字通りASパス情報に基づきフィルタリングを行います。上図でAS20から生成された情報をAS30に送信しないようにするには、RTBにてASパスフィルタリングを行います。終わる($)パス情報を含む更新をすべて拒否することを示しています。「で終わる」を意味します。経路情報にあるCommunity属性に基づきフィルタリングを行います。Communityフィルタについても、上図構成でAS20内で生成された172.16.1.0/24をAS30に送信しないようにするための設定を解説します。そのためにはRTCにてコミュニティアトリビュートを設定します。mapを定義し、コミュニティno-exportを設定しています。含む更新を受信したRTAは、その更新を外部ピアのRTDに伝搬しません。-ルートマップ-メールマガジンネットワ-ク初心者のみなさま。「初心者にも理解できるネットワーク技術」これを読めばネットワークの基礎が分かる!!ネットワーク関連の仕事に就きたいとお考えの学生の方や、ネットワークに興味があって転職を考えている社会人の方、まずは登録してみてください。ネットワークエンジニアを目指して。