其实如何编写,每个人的习惯都是不同的.但如何高效的编写bgp的各种表项,却是该认真思考的问题,这里,俺只谈谈自己的想法,旨在抛砖引玉.
!
router bgp 30
no synchronization
bgp router-id 2.2.2.2
bgp log-neighbor-changes
neighbor 192.168.23.3 remote-as 30
neighbor 192.168.24.4 remote-as 100
neighbor 192.168.24.4 route-map r4 in[将route-map的名字命名为此邻居的主机名]
neighbor 192.168.24.4 filter-list 30 out [将as-path的数字对应要滤的as号]
neighbor 192.168.25.5 remote-as 200
neighbor 192.168.25.5 route-map r5 in[将route-map的名字命名为此邻居的主机名]
neighbor 192.168.25.5 filter-list 30 out[将as-path的数字对应要滤的as号]
no auto-summary
!
no ip http server
ip classless
!
ip as-path Access-list 30 permit ^$[此条只通告自己as的路由,所以表号写自己的as号30]
ip as-path access-list 50 permit _50$ [过滤源于as50的条目,表号也取50]
ip as-path access-list 75 permit _75$[同上]
!
!
!前面所做的工作,在这里就方便了:
route-map r4 permit 10[从r4来的通告,满足源于as50的,设权重为40000,这时你不需要再看as表50的内容了]
match as-path 50[也不需要看r4这个route-map对应哪个邻居了]
set weight 40000
!
route-map r4 permit 20 [从r4来的通告,满足源于as75的,设权重为60000,这时你不需要再看as表75的内容了]
match as-path 75[也不需要看r4这个route-map对应哪个邻居了]
set weight 60000 [显然想让源于as75的路由从r4走]
!
route-map r5 permit 10 [从r5来的通告,满足源于as75的,设权重为60000,这时你不需要再看as表75的内容了]
match as-path 50 [也不需要看r5这个route-map对应哪个邻居了]
set weight 60000 [显然想让源于as50的路由从r5走]
!
route-map r5 permit 20 [同上]
match as-path 75
set weight 40000