一.需求

1.使用PreVal策略,确保R4通过R2到达192.168.10.0/24
2.使用As_Path策略,确保R4通过R3到达192.168.11.0/24
3.配置MED策略,确保R4通过R3到达192.168.12.0/24
4.使用Local Preference策略,确保R1通过R2到达192.168.1.0/24
5.使用Local Preference策略,确保R1通过R3到达192.168.2.0/24
6.配置负载均衡,确保R1通过R2和R3到达192.168.3.0/24
7.使用As策略,AS 500不接受任何始发于AS 123的路由
8.使用自定义Community策略,确保192.168.3.0/24路由不会被发布到AS 500
9.IBGP使用环回接口建邻,EBGP使用物理接口建邻
10.修改AS 123中的用户网段为Broadcast,方便后续在BGP中宣告
11.BGP宣告路由时,仅宣告24网段的用户路由
二.需求分析
1.R4 通过 R2 访问 192.168.10.0/24,需要在 R2 上提高该路由的 PreVal 值
2.R4 通过 R3 访问 192.168.11.0/24,需要在 R3 上给该路由添加额外 AS 号
3.R4 通过 R3 访问 192.168.12.0/24,需要在 R3 上降低该路由的 MED 值
4.让 R1 通过 R2访问不同网段,在对应路由器上提高目标路由的 Local Preference 值
5.让 R1 通过 R3访问不同网段,在对应路由器上提高目标路由的 Local Preference 值
6. R1 通过 R2 和 R3 同时访问 192.168.3.0/24,需要在 R1 上启用 BGP 多路径功能
7.AS 500 不接受 AS 123 的路由,需要在 AS 500 边界路由器上过滤包含 AS 123 的路由
8. 阻止 192.168.3.0/24 路由进入 AS 500,需要给这个路由打特定标签,在 AS 500 边界路由器上过滤该标签
9.IBGP 配置时指定环回接口为源接口,EBGP 直接用物理接口 IP
10.将 AS 123 用户网段设为广播类型,需要在接口配置中设置链路协议为广播类型
11. 路由使用前缀列表过滤,只允许 / 24 网段通过
三.配置
R1
[r1]interface GigabitEthernet 0/0/0
[r1-GigabitEthernet0/0/0]ip address 24.0.0.1 24
[r1]interface GigabitEthernet 0/0/1
[r1-GigabitEthernet0/0/1]ip address 34.0.0.1 24
[r1]interface GigabitEthernet 0/0/2
[r1-GigabitEthernet0/0/2]ip address 15.0.0.1 24
[r1]interface LoopBack 0
[r1-LoopBack0]ip address 1.1.1.1 32
[r1]interface LoopBack 1
[r1-LoopBack1]ip address 192.168.100.1 24
[r1-LoopBack1]ospf network-type broadcast
[r1]ospf 1 router-id 1.1.1.1
[r1-ospf-1]area 0
[r1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[r1-ospf-1-area-0.0.0.0]network 192.168.100.0 0.0.0.255
[r1-ospf-1-area-0.0.0.0]network 24.0.0.1 0.0.0.0
[r1-ospf-1-area-0.0.0.0]network 34.0.0.1 0.0.0.0
[r1]bgp 123
[r1-bgp]router-id 1.1.1.1
[r1-bgp]peer 15.0.0.5 as-number 500
[r1-bgp]peer 2.2.2.2 as-number 123
[r1-bgp]peer 2.2.2.2 connect-interface LoopBack 0
[r1-bgp]peer 2.2.2.2 next-hop-local
[r1-bgp]peer 3.3.3.3 as-number 123
[r1-bgp]peer 3.3.3.3 connect-interface LoopBack 0
[r1-bgp]peer 3.3.3.3 next-hop-local
[r1-bgp]network 192.168.100.0 24
[r1]ip ip-prefix pref_r2 permit 192.168.1.0 24
[r1]route-policy pref_r2 permit node 10
[r1-route-policy]if-match ip-prefix pref_r2
[r1-route-policy]apply local-preference 200
[r1-bgp]peer 2.2.2.2 route-policy pref_r2 import
[r1]ip ip-prefix pref_r3 permit 192.168.2.0 24
[r1]route-policy pref_r3 permit node 10
[r1-route-policy]if-match ip-prefix pref_r3
[r1-route-policy]apply local-preference 200
[r1-bgp]peer 3.3.3.3 route-policy pref_r3 import
[r1-bgp]maximum load-balancing 2
[r1]ip ip-prefix community_filter permit 192.168.3.0 24
[r1]route-policy community_policy deny node 10
[r1-route-policy]if-match ip-prefix community_filter
[r1-route-policy]apply community no-export
[r1-route-policy]route-policy community_policy permit node 20
[r1-bgp]peer 15.0.0.5 route-policy community_policy export
R2
[r2]interface GigabitEthernet 0/0/0
[r2-GigabitEthernet0/0/0]ip address 12.0.0.2 24
[r2]interface GigabitEthernet 0/0/1
[r2-GigabitEthernet0/0/1]ip address 24.0.0.2 24
[r2]interface LoopBack 0
[r2-LoopBack0]ip address 2.2.2.2 32
[r2]interface LoopBack 1
[r2-LoopBack1]ip address 192.168.20.1 24
[r2-LoopBack1]ospf network-type broadcast
[r2]ospf 1 router-id 2.2.2.2
[r2-ospf-1]area 0
[r2-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0
[r2-ospf-1-area-0.0.0.0]network 192.168.20.0 0.0.0.255
[r2-ospf-1-area-0.0.0.0]network 24.0.0.2 0.0.0.0
[r2]bgp 123
[r2-bgp]router-id 2.2.2.2
[r2-bgp]peer 12.0.0.4 as-number 400
[r2-bgp]peer 1.1.1.1 as-number 123
[r2-bgp]peer 1.1.1.1 connect-interface LoopBack 0
[r2-bgp]peer 1.1.1.1 next-hop-local
[r2-bgp]network 192.168.20.0 24
[r2]ip ip-prefix med_r4 permit 192.168.12.0 24
[r2]route-policy med_r4 permit node 10
[r2-route-policy]if-match ip-prefix med_r4
[r2-route-policy]apply cost 200
[r2-bgp]peer 12.0.0.4 route-policy med_r4 export
[r2-bgp]peer 1.1.1.1 advertise-community
R3
[r3]interface GigabitEthernet 0/0/0
[r3-GigabitEthernet0/0/0]ip address 13.0.0.3 24
[r3]interface GigabitEthernet 0/0/1
[r3-GigabitEthernet0/0/1]ip address 34.0.0.3 24
[r3]interface LoopBack 0
[r3-LoopBack0]ip address 3.3.3.3 32
[r3]interface LoopBack 1
[r3-LoopBack1]ip address 192.168.30.1 24
[r3-LoopBack1]ospf network-type broadcast
[r3]ospf 1 router-id 3.3.3.3
[r3-ospf-1]area 0
[r3-ospf-1-area-0.0.0.0]network 3.3.3.3 0.0.0.0
[r3-ospf-1-area-0.0.0.0]network 34.0.0.3 0.0.0.0
[r3-ospf-1-area-0.0.0.0]network 192.168.30.0 0.0.0.255
[r3]bgp 123
[r3-bgp]router-id 3.3.3.3
[r3-bgp]peer 1.1.1.1 as-number 123
[r3-bgp]peer 1.1.1.1 connect-interface LoopBack 0
[r3-bgp]peer 1.1.1.1 next-hop-local
[r3-bgp]peer 13.0.0.4 as-number 400
[r3-bgp]network 192.168.30.0 24
[r3]ip ip-prefix med_r4 permit 192.168.12.0 24
[r3]route-policy med_r4 permit node 10
[r3-route-policy]if-match ip-prefix med_r4
[r3-route-policy]apply cost 20
[r3-bgp]peer 13.0.0.4 route-policy med_r4 export
[r3-bgp]peer 1.1.1.1 advertise-community
R4
[r4]interface GigabitEthernet 0/0/0
[r4-GigabitEthernet0/0/0]ip address 12.0.0.4 24
[r4]interface GigabitEthernet 0/0/1
[r4-GigabitEthernet0/0/1]ip address 13.0.0.4 24
[r4]interface LoopBack 0
[r4-LoopBack0]ip address 4.4.4.4 32
[r4]interface LoopBack 1
[r4-LoopBack1]ip address 192.168.1.1 24
[r4]interface LoopBack 2
[r4-LoopBack2]ip address 192.168.2.1 24
[r4]interface LoopBack 3
[r4-LoopBack3]ip address 192.168.3.1 24
[r4]bgp 400
[r4-bgp]router-id 4.4.4.4
[r4-bgp]peer 12.0.0.2 as-number 123
[r4-bgp]peer 13.0.0.3 as-number 123
[r4-bgp]network 192.168.1.0 24
[r4-bgp]network 192.168.2.0 24
[r4-bgp]network 192.168.3.0 24
[r4]ip ip-prefix pre_r2 permit 192.168.10.0 24
[r4]route-policy pre_r2 permit node 10
[r4-route-policy]if-match ip-prefix pre_r2
[r4-route-policy]apply preferred-value 100
[r4-bgp]peer 12.0.0.2 route-policy pre_r2 import
[r4]ip ip-prefix as_path_r3 permit 192.168.11.0 24
[r4]route-policy as_path_r3 permit node 10
[r4-route-policy]if-match ip-prefix as_path_r3
[r4-route-policy]apply as-path 123 123 500 overwrite
[r4-bgp]peer 13.0.0.3 route-policy as_path_r3 import
R5
[r5]interface GigabitEthernet 0/0/0
[r5-GigabitEthernet0/0/0]ip address 15.0.0.5 24
[r5]interface LoopBack 0
[r5-LoopBack0]ip address 5.5.5.5 32
[r5]interface LoopBack 1
[r5-LoopBack1]ip address 192.168.10.1 24
[r5]interface LoopBack 2
[r5-LoopBack2]ip address 192.168.11.1 24
[r5]interface LoopBack 3
[r5-LoopBack3]ip address 192.168.12.1 24
[r5]bgp 500
[r5-bgp]router-id 5.5.5.5
[r5-bgp]peer 15.0.0.1 as-number 123
[r5-bgp]network 192.168.10.0 24
[r5-bgp]network 192.168.11.0 24
[r5-bgp]network 192.168.12.0 24
[r5]ip as-path-filter 1 deny ^123$
[r5]ip as-path-filter 1 permit .*
[r5-bgp]peer 15.0.0.1 as-path-filter 1 import
四.检验
<r1>system-view
Enter system view, return user view with Ctrl+Z.
[r1]display bgp routing-table
BGP Local router ID is 1.1.1.1
Status codes: * - valid, > - best, d - damped,
h - history, i - internal, s - suppressed, S - Stale
Origin : i - IGP, e - EGP, ? - incomplete
Total Number of Routes: 12
Network NextHop MED LocPrf PrefVal Path/Ogn
*>i 192.168.1.0 2.2.2.2 0 200 0 400i
* i 3.3.3.3 0 100 0 400i
*>i 192.168.2.0 3.3.3.3 0 200 0 400i
* i 2.2.2.2 0 100 0 400i
*>i 192.168.3.0 2.2.2.2 0 100 0 400i
* i 3.3.3.3 0 100 0 400i
*> 192.168.10.0 15.0.0.5 0 0 400i
*> 192.168.11.0 15.0.0.5 0 0 400i
*> 192.168.12.0 15.0.0.5 0 0 400i
*>i 192.168.20.0 2.2.2.2 0 100 0 i
*>i 192.168.30.0 3.3.3.3 0 100 0 i
*> 192.168.100.0 0.0.0.0 0 0 i