はじめに
こんにちは。ネットワークエンジニアの「だいまる」です。
今回は、BGPシリーズのAttribute(属性)の1つである「Local Preference」について、まとめていきたいと思います。
Local Preference
概要
BGP Attribute(属性)の1つである「Local Preference」は、Cisco独自の「Weight」を除いた中で一番優先度が高いAttribute(属性)です。
このAttribute(属性)は、AS外部から受信した経路をAS内部に広報する際に利用することが多いです。

優先度が高いため、この値を変更するのはリスクが伴います
設定方法(Cisco IOS)
Weightは「Neighborへの設定」が可能でしたが、Local Preferenceは「Route-mapによる設定」のみとなります。
この設定では、Route-mapの利用と特定の経路のみ変更したい場合はPrefix-Listを利用します。

デフォルトの値は100です
#prefix-listの定義
ip prefix-list <リスト名> permit <IP Range>/<prefix>
#route-mapの定義
route-map <マップ名> permit 10
match ip address prefix-list <リスト名>
set local-preference <Local Prepference値>
#BGPへの設定適用
router bgp <AS番号>
neighbor <NeighborのIPアドレス> route-map <マップ名> in
動作確認
今回もCisco IOSを使った以下の検証構成で動作を確認していきたいと思います。
今回の動作確認はLocal Preference値によるベストパスの状態を変更します。
確認方法はAS200に属するルータ7宛の経路をルータ1やルータ2、ルータ3で確認していきます。
事前状態(ルータ3)
ルータ3では、ルータ1向けがベストパスになっています。
Router3#show ip bgp
Network Next Hop Metric LocPrf Weight Path
r>i 10.10.1.1/32 10.10.1.1 0 100 0 i
r>i 10.10.2.1/32 10.10.2.1 0 100 0 i
*> 10.10.3.1/32 0.0.0.0 0 32768 i
r>i 10.10.4.1/32 10.10.4.1 0 100 0 i
* i 10.20.5.1/32 10.10.2.1 0 100 0 200 i
*>i 10.10.1.1 0 100 0 200 i
* i 10.20.6.1/32 10.10.2.1 0 100 0 200 i
*>i 10.10.1.1 0 100 0 200 i
* i 10.20.7.1/32 10.10.2.1 0 100 0 200 i
*>i 10.10.1.1 0 100 0 200 i
*>i 10.30.8.1/32 10.10.2.1 0 100 0 300 i
*>i 10.40.9.1/32 10.10.1.1 0 100 0 400 i
*>i 10.40.19.1/32 10.10.1.1 0 100 0 400 i
Router3#show ip route
10.0.0.0/8 is variably subnetted, 17 subnets, 2 masks
O 10.1.0.0/30 [110/2] via 10.1.2.1, 2w1d, GigabitEthernet0/3
[110/2] via 10.1.1.1, 2w1d, GigabitEthernet0/2
C 10.1.1.0/30 is directly connected, GigabitEthernet0/2
L 10.1.1.2/32 is directly connected, GigabitEthernet0/2
C 10.1.2.0/30 is directly connected, GigabitEthernet0/3
L 10.1.2.2/32 is directly connected, GigabitEthernet0/3
C 10.1.3.0/30 is directly connected, GigabitEthernet0/1
L 10.1.3.1/32 is directly connected, GigabitEthernet0/1
O 10.10.1.1/32 [110/2] via 10.1.1.1, 2w1d, GigabitEthernet0/2
O 10.10.2.1/32 [110/2] via 10.1.2.1, 2w1d, GigabitEthernet0/3
C 10.10.3.1/32 is directly connected, Loopback0
O 10.10.4.1/32 [110/2] via 10.1.3.2, 2w1d, GigabitEthernet0/1
B 10.20.5.1/32 [200/0] via 10.10.1.1, 1w5d
B 10.20.6.1/32 [200/0] via 10.10.1.1, 1w5d
B 10.20.7.1/32 [200/0] via 10.10.1.1, 2w1d
B 10.30.8.1/32 [200/0] via 10.10.2.1, 1w1d
B 10.40.9.1/32 [200/0] via 10.10.1.1, 1w5d
B 10.40.19.1/32 [200/0] via 10.10.1.1, 1w1d
Router3#
設定変更(ルータ2)
以下の設定でルータ7が持つ「10.20.7.1」のLocal Prefrenceをルータ2で「200」に変更します。
Router2#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router2(config)#ip prefix-list AS200_R7_Prefix seq 10 permit 10.20.7.1/32
Router2(config)#route-map AS200_LP_IN permit 10
Router2(config-route-map)#match ip address prefix-list AS200_R7_Prefix
Router2(config-route-map)#set local-preference 200
Router2(config-route-map)#exit
Router2(config)#route-map AS200_LP_IN permit 20
Router2(config-route-map)#end
Router2(config)#router bgp 100
Router2(config-router)#neighbor 192.168.2.2 route-map AS200_LP_IN in
Router2(config-router)#end
事後確認
ルータ2
「show ip bgp」や「show ip bgp 10.20.7.1」の状態からルータ2経由の経路が「200」に変更されていることがわかります。
Router2#show ip bgp
Network Next Hop Metric LocPrf Weight Path
r>i 10.10.1.1/32 10.10.1.1 0 100 0 i
*> 10.10.2.1/32 0.0.0.0 0 32768 i
r>i 10.10.3.1/32 10.10.3.1 0 100 0 i
r>i 10.10.4.1/32 10.10.4.1 0 100 0 i
* 10.20.5.1/32 192.168.3.2 0 300 200 i
*> 192.168.2.2 0 200 i
* i 10.10.1.1 0 100 0 200 i
* 10.20.6.1/32 192.168.3.2 0 300 200 i
*> 192.168.2.2 0 0 200 i
* i 10.10.1.1 0 100 0 200 i
* 10.20.7.1/32 192.168.3.2 0 300 200 i
*> 192.168.2.2 200 0 200 i
* 10.30.8.1/32 192.168.2.2 0 200 300 i
*> 192.168.3.2 0 0 300 i
* 10.40.9.1/32 192.168.3.2 0 300 200 400 i
* 192.168.2.2 0 200 400 i
*>i 10.10.1.1 0 100 0 400 i
* 10.40.19.1/32 192.168.2.2 0 200 400 i
*>i 10.10.1.1 0 100 0 400 i
Router2#show ip bgp 10.20.7.1
BGP routing table entry for 10.20.7.1/32, version 21
Paths: (2 available, best #2, table default)
Advertised to update-groups:
2 3
Refresh Epoch 2
300 200
192.168.3.2 from 192.168.3.2 (10.30.8.1)
Origin IGP, localpref 100, valid, external
rx pathid: 0, tx pathid: 0
Refresh Epoch 3
200
192.168.2.2 from 192.168.2.2 (10.20.6.1)
Origin IGP, localpref 200, valid, external, best
rx pathid: 0, tx pathid: 0x0
Router2#
ルータ3
ルータ3でもLocal Preference値が200に変更になったことで、ECMPではなくルータ2のみがベストパスになっていることがわかります。
Router3#show ip bgp
Network Next Hop Metric LocPrf Weight Path
r>i 10.10.1.1/32 10.10.1.1 0 100 0 i
r>i 10.10.2.1/32 10.10.2.1 0 100 0 i
*> 10.10.3.1/32 0.0.0.0 0 32768 i
r>i 10.10.4.1/32 10.10.4.1 0 100 0 i
* i 10.20.5.1/32 10.10.2.1 0 100 0 200 i
*>i 10.10.1.1 0 100 0 200 i
* i 10.20.6.1/32 10.10.2.1 0 100 0 200 i
*>i 10.10.1.1 0 100 0 200 i
*>i 10.20.7.1/32 10.10.2.1 0 200 0 200 i
*>i 10.30.8.1/32 10.10.2.1 0 100 0 300 i
*>i 10.40.9.1/32 10.10.1.1 0 100 0 400 i
*>i 10.40.19.1/32 10.10.1.1 0 100 0 400 i
Router3#show ip route
10.0.0.0/8 is variably subnetted, 17 subnets, 2 masks
O 10.1.0.0/30 [110/2] via 10.1.2.1, 2w1d, GigabitEthernet0/3
[110/2] via 10.1.1.1, 2w1d, GigabitEthernet0/2
C 10.1.1.0/30 is directly connected, GigabitEthernet0/2
L 10.1.1.2/32 is directly connected, GigabitEthernet0/2
C 10.1.2.0/30 is directly connected, GigabitEthernet0/3
L 10.1.2.2/32 is directly connected, GigabitEthernet0/3
C 10.1.3.0/30 is directly connected, GigabitEthernet0/1
L 10.1.3.1/32 is directly connected, GigabitEthernet0/1
O 10.10.1.1/32 [110/2] via 10.1.1.1, 2w1d, GigabitEthernet0/2
O 10.10.2.1/32 [110/2] via 10.1.2.1, 2w1d, GigabitEthernet0/3
C 10.10.3.1/32 is directly connected, Loopback0
O 10.10.4.1/32 [110/2] via 10.1.3.2, 2w1d, GigabitEthernet0/1
B 10.20.5.1/32 [200/0] via 10.10.1.1, 1w5d
B 10.20.6.1/32 [200/0] via 10.10.1.1, 1w5d
B 10.20.7.1/32 [200/0] via 10.10.2.1, 00:03:01
B 10.30.8.1/32 [200/0] via 10.10.2.1, 1w1d
B 10.40.9.1/32 [200/0] via 10.10.1.1, 1w5d
B 10.40.19.1/32 [200/0] via 10.10.1.1, 1w1d
192.168.11.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.11.0/24 is directly connected, GigabitEthernet0/0
L 192.168.11.203/32 is directly connected, GigabitEthernet0/0
Router3#
最後に
今回は、BGPの5つあるAttribute(属性)の1つであるLocal Preference(LP)についてまとめてみました。
ブログの質もちょっとずつ改善していき、皆さんの有意義な情報源となれるよう頑張りたいと思います。


