BGPでは、複数の経路情報を集約することができます。コマンドはaggregate-addressを使用します。
aggregate-addressで指定する集約後のルート情報を広告するには、集約前の経路情報が少なくとも一つがBGPテーブルに存在する必要があります。
集約後のルートに対して、どのような属性(アトリビュート)を適用するかを設定するのに、attribute-mapを使用します。
R1に4つのループバックアドレスを設定し、networkコマンドを設定します。これからの経路をaggregate-addressコマンドで集約して、R2に広告します。まず、集約前の基本設定をします。
R1(config)# interface Loopback100 R1(config-if)# ip address 172.16.0.1 255.255.255.0 R1(config-if)# interface Loopback101 R1(config-if)# ip address 172.16.1.1 255.255.255.0 R1(config-if)# interface Loopback102 R1(config-if)# ip address 172.16.2.1 255.255.255.0 R1(config-if)# interface Loopback103 R1(config-if)# ip address 172.16.3.1 255.255.255.0 R1(config)# router bgp 1 R1(config-router)# network 172.16.0.0 mask 255.255.255.0 R1(config-router)# network 172.16.1.0 mask 255.255.255.0 R1(config-router)# network 172.16.2.0 mask 255.255.255.0 R1(config-router)# network 172.16.3.0 mask 255.255.255.0 R1(config-router)# neighbor 192.168.12.2 remote-as 2
R2(config)# router bgp 2 R2(config-router)# neighbor 192.168.12.1 remote-as 1
R2のBGPテーブルを確認すると、R1の4つのループバックへの経路が確認できます。
R2# show ip bgp BGP table version is 5, local router ID is 2.2.2.2 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, x best-external, a additional-path, c RIB-compressed, Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found Network Next Hop Metric LocPrf Weight Path *> 172.16.0.0/24 192.168.12.1 0 0 1 i *> 172.16.1.0/24 192.168.12.1 0 0 1 i *> 172.16.2.0/24 192.168.12.1 0 0 1 i *> 172.16.3.0/24 192.168.12.1 0 0 1 I
172.16.0.0/24、172.16.1.0/24、172.16.2.0/24、172.16.3.0/24を集約したルートは 172.16.0.0/22となります。
R1で集約ルートのみを広告する場合は、オプションにsummary-onlyをつけます。
R1(config)# router bgp 1 R1(config-router)# aggregate-address 172.16.0.0 255.255.252.0 summary-only
R1のBGPテーブルを確認すると、集約ルートが生成され、個別ルートがs(suppressed)と表記され、抑制されていることがわかります。
R1# show ip bgp BGP table version is 10, local router ID is 172.16.3.1 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, x best-external, a additional-path, c RIB-compressed, Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found Network Next Hop Metric LocPrf Weight Path s> 172.16.0.0/24 0.0.0.0 0 32768 i *> 172.16.0.0/22 0.0.0.0 32768 i s> 172.16.1.0/24 0.0.0.0 0 32768 i s> 172.16.2.0/24 0.0.0.0 0 32768 i s> 172.16.3.0/24 0.0.0.0 0 32768 I
R1のBGPテーブル(172.16.0.0/22)は、以下のような出力です。
R1# show ip bgp 172.16.0.0 255.255.252.0 BGP routing table entry for 172.16.0.0/22, version 28 Paths: (1 available, best #1, table default, not advertised to EBGP peer) Not advertised to any peer Refresh Epoch 1 Local, (aggregated by 1 172.16.3.1) 0.0.0.0 from 0.0.0.0 (172.16.3.1) Origin IGP, localpref 100, weight 32768, valid, aggregated, local, atomic-aggregate, best
R1からR2で広告されているルートを確認します。
R1# show ip bgp neighbors 192.168.12.2 advertised-routes BGP table version is 10, local router ID is 172.16.3.1 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, x best-external, a additional-path, c RIB-compressed, Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found Network Next Hop Metric LocPrf Weight Path *> 172.16.0.0/22 0.0.0.0 32768 i Total number of prefixes 1
R1からR2には集約ルートである172.16.0.0/22のみ広告されていることが確認できます。R2のBGPテーブルを確認しても集約ルート(172.16.0.0/22)のみであることが確認できます。
R2# show ip bgp BGP table version is 10, local router ID is 2.2.2.2 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, x best-external, a additional-path, c RIB-compressed, Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found Network Next Hop Metric LocPrf Weight Path *> 172.16.0.0/22 192.168.12.1 0 0 1 I
集約後のルートに対し、属性(アトリビュート)を設定するには、attribute-mapを使用します。
例えば、R1で集約ルートにno-exportコミュニティを設定するとします。
R1で集約ルートに対して、no-exportコミュニティを設定した場合、この集約ルートは、外部ASに広告されないため、R2では集約ルートを学習していないはずです。
まず、no-exportコミュニティを設定するルートマップを設定します。
R1(config)# route-map SET-COMMUNITY permit 10 R1(config-route-map)# set community no-export R1(config-route-map)# exit
上で設定したルートマップをaggregate-addressのattribute-mapで適用します。
R1(config)# router bgp 1 R1(config-router)# aggregate-address 172.16.0.0 255.255.252.0 summary-only attribute-map SET-COMMUNITY
R1のBGPテーブルを確認すると、集約ルートである 172.16.0.0/22 がリストされています。
R1# show ip bgp BGP table version is 32, local router ID is 172.16.3.1 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, x best-external, a additional-path, c RIB-compressed, Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found Network Next Hop Metric LocPrf Weight Path s> 172.16.0.0/24 0.0.0.0 0 32768 i *> 172.16.0.0/22 0.0.0.0 32768 i s> 172.16.1.0/24 0.0.0.0 0 32768 i s> 172.16.2.0/24 0.0.0.0 0 32768 i s> 172.16.3.0/24 0.0.0.0 0 32768 I
172.16.0.0/22の詳細を確認すると、コミュニティがno-exportであることが確認できます。
R1# show ip bgp 172.16.0.0 255.255.252.0
BGP routing table entry for 172.16.0.0/22, version 28
Paths: (1 available, best #1, table default, not advertised to EBGP peer)
Not advertised to any peer
Refresh Epoch 1
Local, (aggregated by 1 172.16.3.1)
0.0.0.0 from 0.0.0.0 (172.16.3.1)
Origin IGP, localpref 100, weight 32768, valid, aggregated, local, atomic-aggregate, best
Community: no-export
コミュニティがno-exportであるルートは外部ASに広告されませんので、R2には何もルートを学習していないことがわかります。
R2# show ip bgp R2#
次の記事は、attribute-mapで付与したコミュニティをネイバーに広告します。
その他 BGP関連記事は >> ルーティングプロトコル(BGP)まとめ << より参照できます。
コメント