BGPでは、複数の経路情報を集約することができます。コマンドはaggregate-addressを使用します。
aggregate-addressで指定する集約後のルート情報を広告するには、集約前の経路情報が少なくとも一つがBGPテーブルに存在する必要があります。
集約されたルートはaggregate-addressコマンドにより集約したルータから生成されたと見なされ、集約前の個別ルートに付与されたAS-PATH属性が反映されません。
集約ルートに対して、集約前の個別ルートに付与されたAS-PATH属性を反映させるには、aggregate-addressコマンドのオプションでas-setを使用します。
R1に4つのループバックアドレスを設定し、networkコマンドにより、R2で広告します。R2では、aggregate-addressコマンドで集約して、R3に広告します。まず、集約前の基本設定をします。
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-if)# exit 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(config-router)# neighbor 192.168.23.3 remote-as 3
R3(config)# router bgp 3 R3(config-router)# neighbor 192.168.23.2 remote-as 2
R2のBGPテーブルを確認すると、R1の4つのループバックへの経路が確認できます。
R2# show ip bgp BGP table version is 21, 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
R3のBGPテーブルもR2と同様に4つのループバックへの経路が確認できます。
R3# show ip bgp BGP table version is 5, local router ID is 3.3.3.3 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.23.2 0 2 1 i *> 172.16.1.0/24 192.168.23.2 0 2 1 i *> 172.16.2.0/24 192.168.23.2 0 2 1 i *> 172.16.3.0/24 192.168.23.2 0 2 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となります。
では、R2でaggregate-addressコマンドにより172.16.0.0/22を設定します。今回は集約ルートのみを広告したいので、summary-onlyをつけます。
R2(config)# router bgp 2 R2(config-router)# aggregate-address 172.16.0.0 255.255.252.0 summary-only
R2のBGPテーブルを確認すると、個別ルートがs(suppressed)と表記され、抑制されていることがわかります。
R2# show ip bgp BGP table version is 26, 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 s> 172.16.0.0/24 192.168.12.1 0 0 1 i *> 172.16.0.0/22 0.0.0.0 32768 i s> 172.16.1.0/24 192.168.12.1 0 0 1 i s> 172.16.2.0/24 192.168.12.1 0 0 1 i s> 172.16.3.0/24 192.168.12.1 0 0 1 I
BGPテーブルの詳細を確認すると、この集約ルートは、R2のローカルで生成されていることが確認できます。
R2# show ip bgp 172.16.0.0 255.255.252.0
BGP routing table entry for 172.16.0.0/22, version 22
Paths: (1 available, best #1, table default)
Advertised to update-groups:
1
Refresh Epoch 1
Local, (aggregated by 2 2.2.2.2)
0.0.0.0 from 0.0.0.0 (2.2.2.2)
Origin IGP, localpref 100, weight 32768, valid, aggregated, local, atomic-aggregate, best
R2はR3に対して、集約ルートである172.16.0.0/22のみ広告されています。
R2# show ip bgp neighbors 192.168.23.3 advertised-routes BGP table version is 26, 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 0.0.0.0 32768 i Total number of prefixes 1
R3のBGPテーブルを確認すると、AS-PATH属性として、R2のAS番号2と認識されています。
R3# show ip bgp
BGP table version is 10, local router ID is 3.3.3.3
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.23.2 0 0 2 i
R3# show ip bgp 172.16.0.0 255.255.252.0
BGP routing table entry for 172.16.0.0/22, version 10
Paths: (1 available, best #1, table default)
Not advertised to any peer
Refresh Epoch 2
2, (aggregated by 2 2.2.2.2)
192.168.23.2 from 192.168.23.2 (2.2.2.2)
Origin IGP, metric 0, localpref 100, valid, external, atomic-aggregate, best
集約前の個別ルートはR1であるAS番号1から生成されているが、集約することにより、R3から見ると生成元であるAS番号1が消えていることが確認できます。
個別ルートの生成元であるAS番号もAS-PATH属性として含めるには、summary-onlyと合わせて、as-setのオプションをつけます。
R2(config)# router bgp 2 R2(config-router)# aggregate-address 172.16.0.0 255.255.252.0 summary-only as-set
R2のBGPテーブルを確認すると、AS-PATH属性にAS1と記録されています。
R2# show ip bgp 172.16.0.0 255.255.252.0
BGP routing table entry for 172.16.0.0/22, version 27
Paths: (1 available, best #1, table default)
Advertised to update-groups:
1
Refresh Epoch 1
1, (aggregated by 2 2.2.2.2)
0.0.0.0 from 0.0.0.0 (2.2.2.2)
Origin IGP, localpref 100, weight 32768, valid, aggregated, local, best
R3のBGPテーブルを見ると、AS-PATHにAS1と2が存在することがわかります。
R3# show ip bgp
BGP table version is 11, local router ID is 3.3.3.3
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.23.2 0 0 2 1 i
R3# show ip bgp 172.16.1.0 255.255.252.0
BGP routing table entry for 172.16.0.0/22, version 11
Paths: (1 available, best #1, table default)
Not advertised to any peer
Refresh Epoch 2
2 1, (aggregated by 2 2.2.2.2)
192.168.23.2 from 192.168.23.2 (2.2.2.2)
Origin IGP, metric 0, localpref 100, valid, external, best
その他 BGP関連記事は >> ルーティングプロトコル(BGP)まとめ << より参照できます。
コメント