BGPにおける経路集約(aggregate-address)を徹底解説 Ciscoルータ

音声で聞く

読む前にこの記事のポイントを音声で確認できます。この音声は本記事をもとにAIツール(NotebookLM)で自動生成したもので、発音や言い回しが不自然な箇所や、内容の誤りが含まれる可能性があります。理解の補助としてご利用ください。

BGP では、複数の経路を 1 つにまとめて(集約して)広告できます。経路の数が減るので、受け取る側のルーティングテーブルを小さくでき、経路の管理も楽になります。この記事では、Cisco ルータの aggregate-address コマンドで経路を集約する方法を、設定と出力で確認します。

注意

aggregate-address で集約経路を作って広告するには、集約の範囲に入る個別経路が、少なくとも 1 つ BGP テーブルにある必要があります。1 つもないと、集約経路は作られません。

この記事でわかること
  1. 集約する前の個別経路を広告する
  2. aggregate-address で、4 つの /24 を /22 に集約する
  3. 集約経路に付く属性(AGGREGATOR と ATOMIC_AGGREGATE)を確認する

検証構成

R1 に 4 つのループバックを作り、network コマンドで BGP に載せます。この経路を aggregate-address で集約して、R2 に広告します。

AS 1 AS 2 R1 R2 .1 .2 192.168.12.0/24 集約経路と個別経路 172.16.0.0/22 と 172.16.0.0/24〜172.16.3.0/24 Loopback100〜103 172.16.0.0/24〜172.16.3.0/24
図1 検証構成

集約する前の経路を広告する

まず、集約する前の基本設定をします。

R1

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

R2(config)# router bgp 2
R2(config-router)# neighbor 192.168.12.1 remote-as 1

R2 の BGP テーブルを確認すると、R1 の 4 つのループバックの経路を受け取っています。

R2

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

aggregate-address で集約する

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 です。第 3 オクテットの 0〜3 は、2 進数で下位 2 ビットだけが違います。そのため、先頭の 22 ビットが共通になり、/22 でまとめられます。

経路172.16 の後の第 3 オクテット(2 進数)172.16.0.0/2400000000172.16.1.0/2400000001172.16.2.0/2400000010172.16.3.0/2400000011下位 2 ビットだけが違う(0〜3 の 4 通り)16 ビット+6 ビット=22 ビットが共通172.16.0.0/22
図2 4 つの /24 を /22 にまとめる

R1 で、4 つの経路を 172.16.0.0/22 に集約します。サブネットマスク 255.255.252.0 が /22 です。

R1

R1(config)# router bgp 1
R1(config-router)# aggregate-address 172.16.0.0 255.255.252.0

R2 の BGP テーブルを確認すると、集約経路 172.16.0.0/22 が増えています。

R2

R2# show ip bgp   
BGP table version is 6, 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.0.0/22    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
ポイント

aggregate-address にオプションを何も付けないと、集約経路に加えて、集約する前の個別経路(4 つの /24)も広告されます。R2 は、集約経路と個別経路の合わせて 5 つを受け取っています。

集約経路の属性を確認する

R2 で、集約経路 172.16.0.0/22 の詳細を確認します。

R2

R2# show ip bgp 172.16.0.0 255.255.252.0
BGP routing table entry for 172.16.0.0/22, version 6
Paths: (1 available, best #1, table default)
  Not advertised to any peer
  Refresh Epoch 1
  1, (aggregated by 1 172.16.3.1)
    192.168.12.1 from 192.168.12.1 (172.16.3.1)
      Origin IGP, metric 0, localpref 100, valid, external, atomic-aggregate, best
表示意味
(aggregated by 1 172.16.3.1)AGGREGATOR 属性。AS 1 のルータ 172.16.3.1(R1 のルータ ID)が作った集約経路であることを示す
atomic-aggregateATOMIC_AGGREGATE 属性。集約によって、個別経路の AS_PATH の情報が失われている可能性があることを示す
ポイント

集約経路を受け取ったら、属性も確認しておきます。aggregated by で、どのルータが集約したかがわかります。atomic-aggregate は、as-set を付けずに集約したときに付きます。

>> 参考:【BGP】経路集約(aggregate-address、as-set)

集約経路だけを広告する(summary-only)

aggregate-address は、既定では集約経路と個別経路の両方を広告します。集約経路だけを広告したいときは、summary-only を付けます。

R1

R1(config-router)# aggregate-address 172.16.0.0 255.255.252.0 summary-only

この設定で、R2 には集約経路 172.16.0.0/22 だけが広告されます。BGP テーブルの様子は、次の記事で確認しています。

>> 参考:BGP経路集約(aggregate-address、summary-only)の設定を解説 Ciscoルータ

まとめ

設定R2 に広告する経路
集約なし172.16.0.0/24〜172.16.3.0/24 の 4 つ
aggregate-address(オプションなし)集約経路 172.16.0.0/22 と、4 つの個別経路
aggregate-address … summary-only集約経路 172.16.0.0/22 だけ

aggregate-address には、summary-only のほかにも、広告する個別経路や集約経路の属性を変えるオプションがあります。目的に合わせて使い分けます。

コメント