400-035-6699
当前位置: 首页 » 技术支持 » 博文资讯 »

BGP路由聚合实验:配置与优化步骤详解

BGP(Border Gateway Protocol,边界网关协议)是一种在互联网中用于决定数据包最佳传输路径的协议。它使不同网络之间的路由信息交换更加高效,确保了数据在网络中的快速传输。本文将介绍BGP的基本配置、邻居建立以及路由聚合的几种方法。
### BGP基本配置
BGP配置主要包括路由器的基本信息、接口配置路由协议参数等。以下是一个基本的BGP配置示例:
```bash # 路由器名称配置 sysname routerName
# 配置环回接口和ip地址 int loop0 ip add 192.168.1.1
# 配置物理接口和IP地址 int g0/0/0 ip add 192.168.2.1 ```
### 建立BGP邻居
建立BGP邻居是进行数据交换的前提。在两个相邻的BGP路由器之间建立邻居关系,需要设置相同的AS(自治系统)号和正确的IP地址。例如:
```bash # 配置BGP协议 bgp 100 router-id 192.168.1.1
# 建立EBGP邻居关系 peer 192.168.2.2 as-number 200 ```
### 路由聚合
路由聚合是为了减少路由表的大小,提高路由查询的效率。BGP提供了多种路由聚合方法:
1. **静态聚合**:手动配置聚合路由,适用于网络拓扑结构简单的场景。
2. **手动聚合**:通过`aggregate`命令手动指定聚合的IP地址和掩码。例如:
```bash # 配置聚合路由 bgp 100 aggregate 192.168.1.0/24 ```
3. **抑制明细路由**:使用`detail-suppressed`选项抑制所有明细路由,仅保留聚合路由。适用于需要隐藏网络内部细节的场景。
```bash # 抑制明细路由 bgp 100 aggregate 192.168.1.0/24 detail-suppressed ```
4. **基于策略的聚合**:通过配置访问控制列表(ACL)和路由策略,实现对特定路由的聚合。适用于更精细化的路由控制。
```bash # 配置ACL和路由策略 acl 2000 permit ip 192.168.1.0 0.0.0.255 route-policy 10 permit node 10 if-match acl 2000 bgp 100 aggregate 192.168.1.0/24 suppress-policy 10 ```
### 总结
BGP作为一种核心的互联网协议,其配置和路由聚合策略对于网络性能安全性至关重要。掌握BGP的基本配置、邻居建立和路由聚合方法,将有助于提高网络的稳定性和效率。在实际应用中,应结合网络的具体情况选择合适的聚合策略,以实现最优的路由性能。

2的3次方=8 聚合后是 24-3=21掩码 255.255.248.0

BGP路由聚合实验:配置与优化步骤详解

09d66d64-ea50-11ee-a297-92fbcf53809c.png

1.基本配置
1、基本配置
R1:
sys
sysnameR1
intloop0
ipadd1.1.1.132
intg0/0/0
iPadd192.168.12.124
intg0/0/1
ipadd192.168.13.124
q

R2:
sys
sysnameR2
intloop0
ipadd2.2.2.232
intg0/0/0
ipadd192.168.12.224
intg0/0/1
ipadd192.168.24.224
q

R3:
sys
sysnameR3
intloop0
ipadd3.3.3.332
intg0/0/1
ipadd192.168.13.324
intg0/0/0
ipadd192.168.34.324
intg0/0/2
ipadd192.168.35.324
q

R4:
sys
sysnameR4
intloop0
ipadd4.4.4.432
intg0/0/1
ipadd192.168.24.424
intg0/0/0
ipadd192.168.34.424
intg0/0/2
ipadd192.168.46.424
q

R5:
sys
sysnameR5
intloop0
ipadd5.5.5.532
intloop1
ipadd172.16.1.124
intloop2
ipadd172.16.2.124
intloop3
ipadd172.16.3.124
intloop4
ipadd172.16.4.124
intloop5
ipadd172.16.5.124
intloop6
ipadd172.16.6.124
intloop7
ipadd172.16.7.124
intg0/0/0
ipadd192.168.56.524
intg0/0/1
ipadd192.168.35.524
q

R6:
sys
sysnameR6
intloop0
ipadd6.6.6.632
intloop1
ipadd192.168.1.124
intloop2
ipadd192.168.2.124
intloop3
ipadd192.168.3.124
intloop4
ipadd192.168.4.124
intloop5
ipadd192.168.5.124
intloop6
ipadd192.168.6.124
intloop7
ipadd192.168.7.124
intg0/0/0
ipadd192.168.56.624
intg0/0/1
ipadd192.168.46.624
q


2.建立BGP邻居
R1:
[R1]bgp100
[R1-bgp]router-id1.1.1.1
[R1-bgp]peer192.168.12.2as-n200
[R1-bgp]peer192.168.13.3as-n300

R2:
[R2]bgp200
[R2-bgp]router-id2.2.2.2
[R2-bgp]peer192.168.12.1as-n100
[R2-bgp]peer192.168.24.4as-n300

R3:
[R3]bgp300
[R3-bgp]router-id3.3.3.3
[R3-bgp]peer192.168.13.1as-n100
[R3-bgp]peer192.168.35.5as-n400
[R3-bgp]peer192.168.34.4as-n300
[R3-bgp]peer192.168.34.4next-hop-local
当把R1的路由条目转给R4的时候,要改变下一跳,从R5学到的路由条目转给R4的时候也要改变下一跳为自己

R4:
[R4]bgp300
[R4-bgp]router-id4.4.4.4
[R4-bgp]peer192.168.24.2as-n200
[R4-bgp]peer192.168.46.6as-n400
[R4-bgp]peer192.168.34.3as-n300
[R4-bgp]peer192.168.34.3next-hop-local

从EBGP邻居收到的路由,发给IBGP邻居的时候,改变下一跳
但从IBGP邻居收到的路由,发给EBGP邻居的时候,不需要使用

R5:
[R5]BGP400
[R5-bgp]router-id5.5.5.5
[R5-bgp]peer192.168.35.3as-n300
[R5-bgp]peer192.168.56.6as-n400
[R5-bgp]peer192.168.56.6next-hop-local
[R5-bgp]network172.16.1.024先宣告再聚合
[R5-bgp]network172.16.2.024
[R5-bgp]net172.16.3.024
[R5-bgp]net172.16.4.024
[R5-bgp]net172.16.5.024
[R5-bgp]net172.16.6.024
[R5-bgp]net172.16.7.024

R6:
[R6]bgp400
[R6-bgp]router-id6.6.6.6
[R6-bgp]peer192.168.46.4as-n300
[R6-bgp]peer192.168.56.5as-n400
[R6-bgp]peer192.168.56.5next-hop-local
[R6-bgp]net192.168.1.024
[R6-bgp]net192.168.2.024
[R6-bgp]net192.168.3.024
[R6-bgp]net192.168.4.024
[R6-bgp]net192.168.5.024
[R6-bgp]net192.168.6.024
[R6-bgp]net192.168.7.024

3.路由聚合
(1)静态聚合(可以选择跳过,直接看第二种方法,手工聚合。)
[R5]iproute-static172.16.0.0255.255.248.0NULL0

[R5]bgp400
[R5-bgp]network172.16.0.021

[R6]bgp400
[R6-bgp]aggregatE192.168.0.021

验证:
[R1]disbgprouting-table
虽然聚合到了,但还可以看到172.16.0.0/21的同时还有7条明细

现在想把明细给拒绝掉,采取团体属性。匹配后再发送给相应的邻居。——————前缀列表
[R5]ipip-prefixnoadpermit172.16.1.024
[R5]ipip-prefixnoadpermit172.16.2.024
[R5]ipip-prefixnoadpermit172.16.3.024
[R5]ipip-prefixnoadpermit172.16.4.024
[R5]ipip-prefixnoadpermit172.16.5.024
[R5]ipip-prefixnoadpermit172.16.6.024
[R5]ipip-prefixnoadpermit172.16.7.024
[R5]ipip-prefixnoadpermit192.168.1.024
[R5]ipip-prefixnoadpermit192.168.2.024
[R5]ipip-prefixnoadpermit192.168.3.024
[R5]ipip-prefixnoadpermit192.168.4.024
[R5]ipip-prefixnoadpermit192.168.5.024
[R5]ipip-prefixnoadpermit192.168.6.024
[R5]ipip-prefixnoadpermit192.168.7.024

[R5]route-policynoadpermitnode10
[R5-route-policy]if-matchip-prefixnoad
[R5-route-policy]applycommunityno-advertise
不要广播
如果没匹配到就正常发送
[R5]route-policynoadpermitnode20

R5调用:
[R5]bgp400
[R5-bgp]peer192.168.35.3route-policynoadexport有的就export过去
[R5-bgp]peer192.168.35.3adverise-commuity确保可选的过渡属性能被对等体识别到

[R5]discu|inip-pre
把列出来的粘贴到R6上,粘贴好后
[R6]route-policynoadpermitnode10
[R6-route-policy]if-matchip-prefixnoad
[R6-route-policy]applycommunityno-advertise
[R6]route-policynoadpermitnode20

R6调用
[R6]bgp400
[R6-bgp]peer192.168.46.4route-policynoadexport有的都export过去
[R6-bgp]peer192.168.46.4adverise-commuity确保可选的过渡属性能被对等体识别到

静态聚合R1R2查看路由表没问题,但R3R4一查看,还是有明细。导致部分聚合成功。静态弊端

(2)手动聚合,aggravate聚合的方式
第一种:detail-suppressed抑制全部明细路由
[R5]bgp400
[R5-bgp]aggregate172.16.0.021detail-suppressed抑制全部明细路由

[R6]bgp400
[R6-bgp]aggregate192.168.0.021detail-suppressed抑制全部明细路由
这种方法便捷
在R1R2R3R4查看disbgprouting-tableOK

第二种:suppress-policy抑制部分明细
对BGP来讲,可以发总的,也可以发指定明细+总
[R5]acl2000
[R5-acl-bASIC-2000]rulepermitsource172.16.1.00.0.0.255
[R5-acl-basic-2000]rulepermitsource172.16.2.00.0.0.255
[R5-acl-basic-2000]rulepermitsource172.16.3.00.0.0.255

[R5]route-policy10permitnode10
[R5-route-policy]if-matchacl2000

[R5]bgp400
[R5-bgp]aggregate172.16.0.021suppress-policy10抑制部分明细

第三种:attribute-policy修改路由属性
[R5]route-policyatpermitnode10
[R5-route-policy]applyoriginincomplete
改为引入进来的
直接应用,默认代表是所有
[R5]bgp400
[R5-bgp]aggregate172.16.0.021suppress-policy10attribute-policyat

09e75d9a-ea50-11ee-a297-92fbcf53809c.png

第四种:origin-policy
通过符合route-policy的具体路由来产生聚合路由,不符合时不会聚合。
需求:汇总的路由是以某一条明细路由为出发点,明细路由消失,则不会通告该条汇总路由
[R6]acl2000
[R6-acl-basic-2000]rrulepermitsource
192.168.7.00.0.0.255
[R6]route-policyorpermitnode10
[R6-route-policy]if-matchacl2000
[R6]bgp400
[R6-bgp]aggregate192.168.0.021origin-policyoror是origin-policy的策略名称
R4上disbgprouting-table
[R6]undointloop7关掉之后再查看路由表,前后对比

第五种:as-set
把起始的明细挂上去
AS号加在上面。防止环路产生
产生的这条汇总路由就可以继承明细路由的某些路径属性,从而规避一些问题

第六种:Preference_Value——首选值
首先考虑的BGP的私有属性,仅在本地路由器生效。越大越优先。s
审核编辑:黄飞

【限时免费】一键获取网络规划系统模板+传输架构设计+连通性评估方案

相关文章

服务电话:
400-035-6699
企服商城