利用BGPorigin-code属性修改BGP选路

实验拓扑

创新互联长期为上1000家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为荆州企业提供专业的成都网站设计、成都网站建设,荆州网站改版等技术服务。拥有10余年丰富建站经验和众多成功案例,为您定制开发。

利用BGP origin-code 属性修改BGP选路

基本配置:

R1

L0:1.1.1.1/32

L1:11.1.1.1/32

E1/0:10.1.12.1/24

E1/1:10.1.14.1/24

R2

L0:2.2.2.2/32

L1:22.2.2.2/32

E1/0:10.1.12.2/24

E1/1:10.1.24.2/24

R4

L0:4.4.4.4/32

L1:44.4.4.4/32

E1/0:10.1.24.4/24

E1/1:10.1.14.4/24

配置IGP(RIP):

R1

router rip

 version 2

 network 1.0.0.0

 network 10.0.0.0

 no auto-summary

R2

router rip

 version 2

 network 2.0.0.0

 network 10.0.0.0

 no auto-summary

R4

router rip

 version 2

 network 4.0.0.0

 network 10.0.0.0

 no auto-summary

配置BGP:

router bgp 1

 bgp router-id 1.1.1.1

 bgp log-neighbor-changes

 network 1.1.1.1 mask 255.255.255.255

 network 2.2.2.2 mask 255.255.255.255 backdoor

 network 4.4.4.4 mask 255.255.255.255 backdoor

 network 11.1.1.1 mask 255.255.255.255

 neighbor 2.2.2.2 remote-as 23

 neighbor 2.2.2.2 ebgp-multihop 2

 neighbor 2.2.2.2 update-source Loopback0

 neighbor 4.4.4.4 remote-as 23

 neighbor 4.4.4.4 ebgp-multihop 2

 neighbor 4.4.4.4 update-source Loopback0

 

R2

router bgp 23

 bgp router-id 2.2.2.2

 bgp log-neighbor-changes

 network 1.1.1.1 mask 255.255.255.255 backdoor

 network 2.2.2.2 mask 255.255.255.255

 network 22.2.2.2 mask 255.255.255.255

 neighbor 1.1.1.1 remote-as 1

 neighbor 1.1.1.1 ebgp-multihop 2

 neighbor 1.1.1.1 update-source Loopback0

 neighbor 4.4.4.4 remote-as 23

 neighbor 4.4.4.4 update-source Loopback0

R4

router bgp 23

 bgp router-id 4.4.4.4

 bgp log-neighbor-changes

 network 1.1.1.1 mask 255.255.255.255 backdoor

 network 4.4.4.4 mask 255.255.255.255

 network 44.4.4.4 mask 255.255.255.255

 neighbor 1.1.1.1 remote-as 1

 neighbor 1.1.1.1 ebgp-multihop 2

 neighbor 1.1.1.1 update-source Loopback0

 neighbor 2.2.2.2 remote-as 23

 neighbor 2.2.2.2 update-source Loopback0

查看R1路由表:origin 为i,表示从IGP 学来的路由。

R1#sh ip bgp

BGP table version is 5, local router ID is 1.1.1.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

 r   2.2.2.2/32       4.4.4.4                                0 23 i

 r>                   2.2.2.2                  0             0 23 i

 r   4.4.4.4/32       4.4.4.4                  0             0 23 i

 r>                   2.2.2.2                                0 23 i

 *   22.2.2.2/32      4.4.4.4                                0 23 i

 *>                   2.2.2.2                  0             0 23 i

 *   44.4.4.4/32      4.4.4.4                  0             0 23 i

 *>                   2.2.2.2                                0 23 i

查看22.2.2.2 44.4.4.4的路由表:

R1#sh ip bgp 22.2.2.2

BGP routing table entry for 22.2.2.2/32, version 4

Paths: (2 available, best #2, table default)

  Advertised to update-groups:

     18        

  Refresh Epoch 1

  23

    4.4.4.4 (metric 1) from 4.4.4.4 (4.4.4.4)

      Origin IGP, localpref 100, valid, external

      rx pathid: 0, tx pathid: 0

  Refresh Epoch 1

  23

    2.2.2.2 (metric 1) from 2.2.2.2 (2.2.2.2)

      Origin IGP, metric 0, localpref 100, valid, external, best

      rx pathid: 0, tx pathid: 0x0

R1#sh ip bgp 44.4.4.4

BGP routing table entry for 44.4.4.4/32, version 5

Paths: (2 available, best #2, table default)

  Advertised to update-groups:

     18        

  Refresh Epoch 1

  23

    4.4.4.4 (metric 1) from 4.4.4.4 (4.4.4.4)

      Origin IGP, metric 0, localpref 100, valid, external

      rx pathid: 0, tx pathid: 0

  Refresh Epoch 1

  23

    2.2.2.2 (metric 1) from 2.2.2.2 (2.2.2.2)

      Origin IGP, localpref 100, valid, external, best

      rx pathid: 0, tx pathid: 0x0

origin皆为IGP。修改 bgp origin-clde 属性,使R1到R2的22.2.2.2 永久的从R4走,到R4的44.4.4.4永久的从R2走。

在R1上配置:

第一步:配置prefix-list

ip prefix-list 22 seq 5 permit 22.2.2.2/32

ip prefix-list 44 seq 5 permit 44.4.4.4/32

第二步:配置route-map

route-map ori-r2 permit 10

 match ip address prefix-list 22

 set origin incomplete

route-map ori-r2 permit 20

route-map ori-r4 permit 10

 match ip address prefix-list 44

 set origin incomplete

route-map ori-r4 permit 20

第三步:在BGP中,对相应的邻居in方向调用route-map。

neighbor 2.2.2.2 route-map ori-r2 in

neighbor 4.4.4.4 route-map ori-r4 in

第四步:重置BGP邻居,重新学习路由

clea ip bgp *

查看R1 BGP路由表:

R1#sh ip bgp

BGP table version is 16, local router ID is 1.1.1.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

 *>  1.1.1.1/32       0.0.0.0                  0         32768 i

 r   2.2.2.2/32       4.4.4.4                                0 23 i

 r>                   2.2.2.2                  0             0 23 i

 r   4.4.4.4/32       4.4.4.4                  0             0 23 i

 r>                   2.2.2.2                                0 23 i

 *>  11.1.1.1/32      0.0.0.0                  0         32768 i

 *>  22.2.2.2/32      4.4.4.4                                0 23 i

 *                    2.2.2.2                  0             0 23 ?

 *   44.4.4.4/32      4.4.4.4                  0             0 23 ?

 *>                   2.2.2.2                                0 23 i

此是,BGP表显示从R2学来的22.2.2.2路由,origin-code属性已改为?(incomplete),从R4学来的44.4.4.4路由,属性也改为?(incomplete),优先选择origin-clde为i的路由。

IGP(i)优于EGP(e)优于incomplete(?)的路由。

R1#sh ip bgp 22.2.2.2

BGP routing table entry for 22.2.2.2/32, version 16

Paths: (2 available, best #1, table default)

  Advertised to update-groups:

     18        

  Refresh Epoch 1

  23

    4.4.4.4 (metric 1) from 4.4.4.4 (4.4.4.4)

      Origin IGP, localpref 100, valid, external, best

      rx pathid: 0, tx pathid: 0x0

  Refresh Epoch 1

  23

    2.2.2.2 (metric 1) from 2.2.2.2 (2.2.2.2)

      Origin incomplete, metric 0, localpref 100, valid, external

      rx pathid: 0, tx pathid: 0

R1#sh ip bgp 44.4.4.4

BGP routing table entry for 44.4.4.4/32, version 15

Paths: (2 available, best #2, table default)

  Advertised to update-groups:

     18        

  Refresh Epoch 1

  23

    4.4.4.4 (metric 1) from 4.4.4.4 (4.4.4.4)

      Origin incomplete, metric 0, localpref 100, valid, external

      rx pathid: 0, tx pathid: 0

  Refresh Epoch 1

  23

    2.2.2.2 (metric 1) from 2.2.2.2 (2.2.2.2)

      Origin IGP, localpref 100, valid, external, best

      rx pathid: 0, tx pathid: 0x0

实验完成。


分享文章:利用BGPorigin-code属性修改BGP选路
当前网址:http://hbruida.cn/article/ijisci.html