-
概述:
-
基于TCP建立连接,端口号179
-
分类:EBGP和IBGP
EBFP管理距离值:20 IBGP管理距离值:200
-
TTL值:数据包的生存时间 默认EBGP=1,IBGP=255,因此IBGP可以使用环回口作为跟新源建立BGP邻居
-
BGP是一个高级矢量的路由协议,EBGP之间通过AS-PATH进行防环,IBGP之间通过水平分割进行防环
-
数据包的种类:
Open消息:设备之间互相发送open消息,建立BGP邻居
Keepalive消息:邻居建立成功后,互相发送该消息,来维持邻居的建立
Update 消息:邻居建立成功,互相发送路由更新
Notification 消息:BGP连接出现问题的情况下,才会发送该消息
-
BGP对等体的建立(即BGP邻居的建立)
第一:EBGP邻居建立
-
前提条件:保证更新源是可达的
EBGP之间更新默认使用物理接口
-
配置命令:
router bgp AS
BGP router-id x.x.x.x
neighbor 对端的更新源地址 remote-as 对端邻居所在的AS号
第一步:配置设备的物理接口地址
测试:R1:ping 200.200.12.2 通
第二步:配置BGP
现象:show IP bgp summary 检查BGP邻居建立:
看到state显示为数字,则表示邻居建立成功
第二:IBGP邻居的建立
-
前提条件:保证更新源是可达的
更新源是回环口地址(回环口更加稳定)
-
配置命令:
router bgp AS
bgp router-id x.x.x.x
nei 对端的更新地址 remote-as 对端所在的AS号
nei 对端的更新源地址 update-source 更新源的接口 //对邻居指明自己本地的更新源
实验:
第一步:配置设备的接口地址以及底层的IGP协议EIGRP
测试:R3:ping 4.4.4.4 sou 3.3.3.3 通
第二步:配置IBGP
练习实验
-
-
-
BGP的路由学习
-
方法:宣告或重分发
-
宣告:起源属性为i-IGP,表示该路由是以Network的发布进入到BGP中的
router bgp AS
network 路由网段 mask 掩码 //严格按照路由表进行宣告
-
重分发:起源属性为?—incomplete,表示该路由是以重分发的方式进入到BGP
router bgp AS
redistribute 协议
-
-
BGP的三张表:
- 邻居表:show ip bgp summary
- 数据库:show ip bgp
- 路由表:show ip route bgp
实验:
第一步:建立R1 R2之间的邻居
现象:
BGP的下一跳属性:next-hop
- 路由在EBGP邻居之间传递时,学习到路由的下一跳地址为发出路由的路由器的物理接口地址
- 路由在IBGP邻居之间传递时,下一跳地址不变(一直都是边界路由器的更新源地址)
强制下一跳:next-hop-self
-
当一台路由器同时存在EBGP和IBGP邻居时,那么需要对其IBGP邻居配置强制下一跳
配置命令:
router bgp AS
nei x.x.x.x next-hop-self //路由发送给IBGP邻居时,讲学习到路由的下一跳地址设置为自身
IBGP的防环:水平分割
-
水平分割的定义:从内部邻居学习到的路由,不在转发给下一个内部邻居
-
解决方法:
法一:配置IBGP的全互联(内部路由器两两建立IBGP邻居)
法二:配置路由器反射器RR
-
配置命令:
router bgp AS
nei x.x.x.x router-reflector-client //指邻居x.x.x.x作为路由反射器的客户
-
路由反射器的规则
规则1:从客户学习到的路由,可以反射给自己的邻居,非客户以及EBGP邻居
规则2:从非客户学习到的路由,可以发射给自己的客户以及EBGP邻居
规则3:从ENGP邻居学习到的路由,可以发射给自己客户,非客户及EBGP邻居、【
法三:配置联邦
-