BGP(コミュニティの確認)

 COMMUNITY属性には、定義済みのものがいくつかあります。

no-export他ASに経路情報を転送しない。
no-advertise他ルーターに経路情報を転送しない。
local-as外部のサブASに、アドバタイズしない。
no-export-subconfedコンフェデレーションにおいて、他メンバーASに経路情報をアドバタイズしない。
internet経路のフィルタリングは行われません。

ここでは、コミュニティ属性に「no-export」を付随させてみます。

コミュニティ属性を付随させる

まず、「no-export」を付随させる前に、現在のRouter_EのBGPテーブルを確認しておきます。

Router_E#show ip bgp
BGP table version is 5, local router ID is 30.30.30.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop          Metric LocPrf Weight Path
*  10.10.10.0/24    172.18.0.2                           0 100 i
*>                  172.16.0.2                           0 100 i
*> 20.20.20.0/24    172.16.0.2                           0 100 i
*                   172.18.0.2                           0 100 i
*> 30.30.30.0/24    0.0.0.0                0         32768 i

「10.10.10.0/24」の経路を「172.16.0.2」と「172.18.0.2」の2つから受信しています。

それでは、

  Router_Aでコミュニティ属性に「no-export」を付随させ、Router_Bへのアップデートに「no-export」を付随させた経路情報をアドバタイズさせます。

アクセスリストで、「10.10.10.0/24」を定義し、それをルートマップと関連付けて「no-export」を付随させます。

 送信側でで付随させたコミュニティ属性は、デフォルトでアップデートに付随されないので、アップデートにコミュニティ属性を付随させるには以下のコマンドを設定します。

Router_A(config-router)#neighbor 172.19.0.1 send-community

 最後に、作成したルートマップ「Peer-Router_B」を「neighbor 172.19.0.1 route-map Peer-Router_B out」コマンドで、Router_Bに経路情報を送る(out)際に適用するように指示します。

Router_Aに以下の設定を追加します。

Router_A(config)#access-list 1 permit 10.10.10.0 0.0.0.255
Router_A(config)#route-map Peer-Router_B permit 10
Router_A(config-route-map)#match ip address 1
Router_A(config-route-map)#set community no-export
Router_A(config-route-map)#exit
Router_A(config)#router bgp 65000
Router_A(config-router)#neighbor 172.19.0.1 send-community
Router_A(config-router)#neighbor 172.19.0.1 route-map Peer-Router_B out

設定が完了したら、Router_BのBGPテーブルをクリアします。

Router_B#clear ip bgp *

 Router_Bで「no-export」が付随した経路を受信しているかを確認します。Router_Bで以下のコマンドを入力します。

Router_B#show ip bgp community no-export


Router_B#show ip bgp community no-export
BGP table version is 4, local router ID is 172.19.0.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*>i10.10.10.0/24    172.19.0.2               0    100      0 i

ちゃんと「10.10.10.0/24」の経路を受信していますね。

「10.10.10.0/24」経路の詳細を確認します。

Router_B#show ip bgp 10.10.10.0

Router_B#show ip bgp 10.10.10.0
BGP routing table entry for 10.10.10.0/24, version 2
Paths: (1 available, best #1, not advertised to EBGP peer)
  Advertised to non peer-group peers:
    172.17.0.2
  Local
    172.19.0.2 from 172.19.0.2 (172.19.0.2)
      Origin IGP, metric 0, localpref 100, valid, internal, best, ref 2
      Community: no-export

Router_Bは、「no-export」が付随した「10.10.10.0/24」経路を受信していることが確認できます。

Router_EのBGPテーブルを確認します。

Router_E#show ip bgp
BGP table version is 9, local router ID is 30.30.30.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop          Metric LocPrf Weight Path
*> 10.10.10.0/24    172.18.0.2                           0 100 i
*> 20.20.20.0/24    172.16.0.2                           0 100 i
*                   172.18.0.2                           0 100 i
*> 30.30.30.0/24    0.0.0.0                0         32768 i

「10.10.10.0/24」の経路は、「172.18.0.2」からしか受信しなくなりました。

Router_Bから、「10.10.10.0/24」の経路が送られなくなったことが確認できました。

 Router_Dで「no-export」が付随した経路を受信しているかを確認します。Router_Dで以下のコマンドを入力します。

Router_D#show ip bgp community no-export

Router_D#show ip bgp community no-export
Router_D#

Router_Dでは、「no-export」が付随した経路を受信していないことが確認できました。

 つまり、Router_Dは、「no-export」が付随した「10.10.10.0/24」の経路情報を持っていないため、Router_Eに、「10.10.10.0/24」の経路をアドバタイズしているのです。

そこで、Router_Bから、Router_Dにコミュニティ属性の付随した経路情報をアドバタイズするようにします。

Router_Bで以下の設定を追加します。

Router_B(config)#router bgp 65000
Router_B(config-router)#neighbor 172.17.0.2 send-community

設定が完了したら、Router_CのBGPテーブルをクリアします。

Router_B#clear ip bgp *

 Router_Dで「no-export」が付随した経路を受信しているかを確認します。Router_Dで以下のコマンドを入力します。

Router_D#show ip bgp community no-export

Router_D#show ip bgp community no-export
BGP table version is 4, local router ID is 172.20.0.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 10.10.10.0/24    172.17.0.1               0    100      0 (65000) i

Router_Dでは、「no-export」が付随した「10.10.10.0/24」経路を受信していることが確認できます。

Router_EのBGPテーブルを確認します。

Router_E#show ip bgp
BGP table version is 10, local router ID is 30.30.30.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop          Metric LocPrf Weight Path
*> 20.20.20.0/24    172.16.0.2                           0 100 i
*                   172.18.0.2                           0 100 i
*> 30.30.30.0/24    0.0.0.0                0         32768 i

「10.10.10.0/24」の経路情報がなくなりました。

Router_B、Router_Dから、「10.10.10.0/24」の経路情報がアドバタイズされなくなったからです。