BGP inject-map

BGP inject-mapとは

bgp inject-map コマンドは、BGPルーティングテーブルにおいて、特定の条件を満たすルートが存在する場合に、人工的にプレフィックスを生成して挿入するために使用されます。この機能は、BGPルートの管理を細かく制御するために役立ちます。inject-mapexist-map を組み合わせることで、ある条件が成立している場合に特定のルートをBGPテーブルに注入することができます。

BGP inject-mapの設定

基本構文

1.プレフィックスリストの作成

プレフィックス リストを設定します。
Router(config)#ip prefix-list list-name [seq seq-value ] {deny network / length | permit network / length } [ge ge-value ] [le le-value ]

2.ルートマップの設定

ルート マップを設定し、ルート マップ設定モードに入ります。
Router(config)#route-map map-tag [permit | deny ] [sequence-number ]

ルート受信に対する設定

より具体的なルートが挿入される集約ルートを指定します。
Router(config-route-map)#match ip address {access-list-numberaccess-list-nameprefix-list prefix-list-name }

ルートのソースを再配布するための一致条件を指定します。
Router(config-route-map)#match ip route-source {access-list-number | access-list-name } [access-list-number …| access-list-name …]

集約されているIPアドレスやどのネイバーから受信した集約ルートに対して設定をするかしていします。

挿入するルートの設定

挿入するルートを指定します。
Router(config-route-map)#set ip address {access-list-number [access-list-number … | access-list-name …] | access-list-name [access-list-number… | access-list-name ] | prefix-list prefix-list-name [prefix-list-name …]}

挿入されたルートの BGP コミュニティ属性を設定します。
Router(config-route-map)#set community {community-number [additive ] [well-known-community ] | none }

集約されているルート情報から具体的に生成するルート情報を指定します。

3.BGP inject-mapの設定

指定されたルーティング プロセスのルータ設定モードに入ります。
Router(config)#router bgp autonomous-system-number

条件付きルート注入の注入マップと存在マップを指定します。挿入されたルートが集約ルートの属性を継承することを指定するには、 copy-attributes キーワードを使用します。
Router(config-router)#bgp inject-map inject-map-name exist-map exist-map-name [copy-attributes ]

ルータ コンフィギュレーション モードを終了し、グローバル コンフィギュレーション モードに入ります。

設定例

Router1

hostname Router1

int g0/2
ip address 192.168.12.1 255.255.255.0
no shut

int lo1
ip address 1.1.1.1 255.255.255.0

ip bgp-community new-format

router bgp 65001
neighbor 192.168.12.2 remote-as 65002
neighbor 192.168.12.2 send-community
neighbor 192.168.12.2 route-map COM out
network 1.1.1.0 mask 255.255.255.0

access-list 1 permit 1.1.1.0 255.255.255.0

route-map COM permit 10
match ip address 1
set community 65001:100

Router2

hostname Router2

int g0/1
ip address 192.168.12.2 255.255.255.0
no shut

int g0/3
ip address 192.168.23.2 255.255.255.0
no shut

ip bgp-community new-format

router bgp 65002
neighbor 192.168.12.1 remote-as 65001
neighbor 192.168.23.3 remote-as 65002
network 192.168.12.0 mask 255.255.255.0
network 192.168.23.0 mask 255.255.255.0

Router3

hostname Router3

int g0/2
ip address 192.168.23.3 255.255.255.0
no shut

ip bgp-community new-format

router bgp 65002
neighbor 192.168.23.2 remote-as 65002

1.1.1.0/24のルート情報にはコミュニティ値65001:100が設定されています。

1.1.1.1のルータから受信した1.1.1.0/24というルート情報に対して1.1.1.0/30と1.1.1.4/30というルート情報を生成します。また生成したルート情報に対しては集約ルートの属性(コミュニティ)を継承します。

細分化されたルート情報がアドバタイズされるようになりました。

属性を確認すると、細分化されたルート情報には集約ルートのコミュニティ属性が継承されています。

Router2で細分化されたルート情報を確認すると、1.1.1.0/24から挿入されたことがわかります。