导图社区 BGP知识点
BGP知识点 ,bgp本身是一个支持多协议的动态路由协议,默认支持IPV4单播协议簇,同时支持很多协议簇(ipv6,vpnv4,组播、vpn实例、evpn等)。
社区模板帮助中心,点此进入>>
论语孔子简单思维导图
《傅雷家书》思维导图
《童年》读书笔记
《茶馆》思维导图
《朝花夕拾》篇目思维导图
《昆虫记》思维导图
《安徒生童话》思维导图
《鲁滨逊漂流记》读书笔记
《这样读书就够了》读书笔记
妈妈必读:一张0-1岁孩子认知发展的精确时间表
BGP
任意物理接口不允许配置32位地址 华为设备环回口不会被shutdown
常识
介绍
1. bgp本身是一个支持多协议的动态路由协议,默认支持IPV4单播协议簇,同时支持 很多协议簇(ipv6,vpnv4,组播、vpn实例、evpn等)
2. 从路由的角度看,IGP协议专注于生产路由,BGP专注于路由的传播和扩散 IGP通常是宣告自身的直连路由到IGP协议中
3. 1982年,外部网关协议EGP被用于实现在AS之间动态交换路由信息。但是EGP设计得比较简单,只发布网络可达的路由信息,而不对路由信息进行优选,同时也没有考虑环路避免等问题,很快就无法满足网络管理的要求。BGP是为取代最初的EGP而设计的另一种外部网关协议。当前实际应用中几乎根本看不到EGP.
建立邻居
BGP在普通交换机中只能运行一个进程,在ce交换机上可以2个
直连接口
静态路由建立邻居
环回接口
更新源更稳定
ebgp多条
传输协议:tcp,目的端口179,单播建邻居
邻居建立过程
BGP状态机
BGP报文
1. OPEN holdtime 180(10-15s发送一次)
1. as 号码
2. RID
3. HOLD TIME
4. 能力值通告
1. 多协议扩展
2. 4字节AS号码
3. 路由刷新
2. keepalive 默认60s发送一次, 邻居之间keepalive时间不同不影响邻居建立 holdtime 必须大于等于3倍的 keepalive ,邻居之间会协商较小的keepalive时间值
3. update报文
1. 为NLRI(网络层可达信息即网络前缀)
2. path_attributes
1. 公认必遵
1. 下一跳
2. 起源(i,e,incomplete)
3. AS-PATH
下 起 path
2. 公认任意
本地优先级
4. notification通知报文 一旦收到通知报文就断开tcp连接,bgp邻居失效
5. router-refresh报文 手动使用refresh bgp all import|export 命令产生
BGP数据库
1. 邻居表 dis bgp peer
2. bgp 路由表(bgp学到的路由)dis bgp routing
3. ip路由表(放到路由表里的bgp路由)dis ip routing pro bgp
4. 通告给邻居的路由信息 dis bgp routing-table peer 10.1.15.5 advertised-routes
5. 从邻居收到的路由信息 dis bgp routing-table peer 10.1.15.5 received-routes
断开邻居
1. shudown 接口
2. 去掉邻居配置
3. 使用命令peer 1.1.1.1 ignore 首选 不用去除配置就能达到效果
4. 不激活邻居
对等体组配置
作用 简化配置和降低消耗系统使用资源
命令 group PEER-GROUP internal | external 不带最后这两个参数模式就是IBGP
属性
公认
必遵
任意
可选
过渡
非过渡
BGP可靠的路由更新
无需周期性更新
路由更新:只发送增量更新
周期性发送keeplive报文检测tcp连通性
BGP路由的产生
network
(条件:必须是自身有这条路由才能使用network,这条路由可以是有IGP路由协议产生的也可以是bgp路由器本身的静态路由或者接口产生的路由)通常产生的起源代码是igp (i)
import导入
通过导入命令导入直连、静态或者其他IGP协议的路由,产生的 路由的启源代码通常是incomplete( ?)
聚合路由
通常产生的起源代码是igp (i)
network 0.0.0.0可以吗
BGP生成默认路由的方法
第一种方法: 本地默认不能引入默认路由,需达到3个条件,defalut-route import 必须配合import static/ospf/isis使用
本地存在ospf/isis登录路由协议产生的默认路由
import static(route-policy可选)
default-route import
第二种方法是: 当路由器本身存在0.0.0.0的默认路由(任何方式,静态的,ospf等协议产生的都可以),使用network 0.0.0.0,相当于在BGP中宣告了默认路由
BGP路由通告原则
永远把最优的BGP路由通告给邻居 ,最后的就是bgp路由前面是>符号的路由条目
从EBFP邻居收到的路由无条件的发给IBGP邻居和其他EBGP邻居,但是在路由刷新命令的过程中从ebgp邻居收到的路由也update给ebgp邻居了,并没有军哥所说的水平分割现象,可能bgp天然就是水平分割,收到路由后发现是自己的as的就过滤了
•EBGP:运行于不同AS之间的BGP称为EBGP。为了防止AS间产生环路,当BGP设备接收EBGP对等体发送的路由时,会将带有本地AS号的路由丢弃。 •IBGP:运行于同一AS内部的BGP称为IBGP。为了防止AS内产生环路,BGP设备不将从IBGP对等体学到的路由通告给其他IBGP对等体,并与所有IBGP对等体建立全连接。为了解决IBGP对等体的连接数量太多的问题,BGP设计了路由反射器和BGP联盟。反射器打破了水平分割======IBGP是铁公鸡========
通告给邻居的路由信息 dis bgp routing-table peer 10.1.15.5 advertised-routes
从邻居收到的路由信息 dis bgp routing-table peer 10.1.15.5 received-routes
对邻居通告默认路由peer 1.1.1.1 default-route
实现通信
下一跳
多点接入网络的BGP下一跳行为,类似于ospf的FA地址优化
全互连
1.配置量大 2.增加TCP会话
扩展:对等体组:减少配置量,同时节省一点内存的消耗
解决全互连的方法
1 联盟
2.路由反射器 常用
同步规则
1.华为默认关闭同步规则,不支持开启的命令,同步规则是为了防止路由黑洞,cisco设备支持,是一个过时的概念
2.同步规则就是如果igp路由不存在,ibgp路由器不会把这条从IBGP对等体获取的路由传给ebgp邻居
聚合
聚合即路由汇总,一般在边界ASBR完成
优点
1.减少路由条目
2.减少路由震荡
明细路由和聚合路由的关系
明细路由多少没关系,只要有一条明细存在, 聚合就存在, 明细路由为空,聚合为空
实现方法
自动汇总
比较古老的概念,RIP,BGP,EIGRP支持,汇聚到主类网络(A,B,C类) 华为的自动汇总仅仅对引入的路由生效 命令:bgp进程下,summary automatic
手动汇总
BGP特有aggregate
路由黑洞
如果三个路由器,首尾建立bgp邻居,中间设备不建立,那么路由到达中间设备后因为没有bgp路由而丢包
在华为的设备上不要使用bgp的更新源来模拟业务网络,会演变成无效路由
命令
1. display bgp peer
2. dispaly bgp peer verbose
3. peer 1.1.1.1 as-nmuber 200
4. 其他路由协议中使用import bgp permit-ibgp 会引起环路,参照LAB中R2引入44.4.4.4,R3与R2不建立bgp邻居
5. 建立EBGP邻居使用环回口需增加peer ebgp-max-hop或使用peer connected-check-ignore跳过跳数检查,peer connected-check-ignore模拟器没有这个命令
6. aggregate 100.0.0.0 255.0.0.0 origin-policy 123 suppress-policy 456 detail-suppressed 默认不加detail-suppressed 那么就会通告明细路由,加了以后只通告汇总路由
当路由器本身存在0.0.0.0的默认路由,使用network 0.0.0.0,相当于在bgp中宣告了默认路由