文章目录
- 1、BGP 是怎样实现跨自治系统交互路由信息?为什么需要 BGP 路由协议?
- 如何跨AS交互
- BGP的用处
- 2、IBGP 为什么采用全互联?不采用全互联怎么部署?
- 什么是全互联?
- 其他部署
- 3、 IBGP 为什么不相互通告路由?
- 水平分割
- IGP与BGP基于水平分割的对比
- 4 、BGP 中团体的作用
- 5、如果 BGP 加上 max path,会在哪个 BGP 选路属性之前应用这个选项?
- 6、谈谈 BGP 反射器的缺点
- 7、 BGP 的属性在 MPLS 中的应用?选路控制?
- 产生
- 应用
- 选录控制
- 8、BGP的同步是什么?为什么现在的BGP都是默认关闭?
- 同步
- 默认关闭
- 9、BGP 路由协议和 IGP 路由协议的区别?
- 10、BGP 的选路原则
1、BGP 是怎样实现跨自治系统交互路由信息?为什么需要 BGP 路由协议?
如何跨AS交互
- BGP基于TCP的179端口进行封装,即BGP要采用TCP的方式建立邻居,分为IBGP、EBGP邻居,前者是同一AS内的邻居,后者是不同AS号的邻居,邻居的建立使用的是Open报文;之后使用Update交换路由信息,完成路由信息的交互,之后使用Keeplive来保持邻居关系,60s的周期保活,实际上保活的是TCP的会话,自然就保证的BGP的邻居关系
BGP的用处
- BGP是一个高级的路径矢量型协议,还被称为路径矢量型;其主要用于不同AS之间的路由传递,即每一个AS说简单点代表的是一个网络节点,可以是运营商、企业、学校、大型组织等
2、IBGP 为什么采用全互联?不采用全互联怎么部署?
什么是全互联?
说到全互联,就要知道其产生的原因,全互联的本质是因为IBGP水平分割,即AS内部的防环原则,这是BGP设计时所规定的准则
IBGP水平分割:通过IBGP邻居学到的路由不能传递给另外的IBGP邻居
解决:全互联,即AS内部的每台设备都与其他设备建立IBGP邻居关系,即全互联,full-mesh架构,这样一来就不会出现IBGP水平分割了,当然这样的部署十分麻烦,且不利于后期的扩展性
其他部署
解决IBGP水平分割常用的两种方法:路由反射器、EBGP联邦
路由反射器:将AS内的某台设备作为路由反射器,与其建邻的设备存在两种角色,客户端与非客户端;其解决的原理十分简单,不反射的情况只有一种,即非客户端发来的路由不会给非客户端传递,即菲菲不传;
EBGP联邦:设置AS内的大AS号与小AS号,即逻辑的将一个AS划分为多个AS,这样就从逻辑上解决的IBGP水平分割的问题
3、 IBGP 为什么不相互通告路由?
水平分割
因为IBGP水平分割的原因,即通过IBGP邻居学到的路由不会传递给另外的IBGP邻居,也称为IBGP只传一跳原则;其实说到底就是为了防环
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ykkc1gxK-1597684467128)(C:\Users\Yichen\AppData\Roaming\Typora\typora-user-images\1597558260970.png)]
IGP与BGP基于水平分割的对比
上面提到了水平分割,这里对IGP与BGP的水平分割做一个详细的对比
- IGP的水平分割:从某个接口上学习来的路由信息将不再从该接口上通告出去;就是说,从此口进,不能从此口出
- BGP的水平分割:从任何IBGP邻居学来的路由信息都不再向任何IBGP路由器转发;即完全不转发,把事做绝
那么这里就产生了一个问题,同样都是水平分割为什么标准不同?
- 注意,IGP这样基于接口的水平分割,若应用于大型网络还是会产生环路的,原因是IGP的水平分割只是防止区域网络(比如相邻的路由器)这种小范围内的问题,如果网络大了,互联复杂,依旧可能产生环路;
- 而BGP中的IBGP邻居根本不传才是从根本上解决了环路问题;
那IGP如果对于大型网络防止环路呢?
RIP用的是跳数限制,OSPF用的是内外优先值 10-150
- 总结:虽然都叫做水平分割,但是其内部实现的逻辑是不同的,说白了,IGP与BGP应用的场景本来就不同
4 、BGP 中团体的作用
团体属性:该属性为可选过度
团体属性分为:
1、自定义团体属性
a.标准团体值 —用于对路由进行标记,更好的抓取路由,增强后期的扩展性
b.扩展团体值(vpn-target) —用于MPLS-VPN下的MP-BGP邻居的VPNV4路由的传递
2、公共团体属性
a.Internet 可以传递给所有邻居;默认的团体属性
b.No_Advertise 将不会把路由传递给他的邻居 EBGP;不能传递给任何邻居
从IGP传,不能从BGP传
c.No_Export 不能出AS,不能传出本路由器;不能传递出大的AS
举例:当电信与联通间的相通链路出现故障时,不允许绕行百度,那么百度对电信与联通进来的路由打上No_export,这样进来的路由就不能出去
d.No_Export_Subconfed 不能出联邦;不能传递出小的AS
注意:团体值的开启要打开传递的开关
5、如果 BGP 加上 max path,会在哪个 BGP 选路属性之前应用这个选项?
注意,这里的Max Path在Cisco在思科设备的BGP选路中存在,Cisco的BGP选路原则如下;对于华为设备中的BGP选路在后面会提到
1、weight 权重;默认:32768,大优;仅本地有效,不能传递
2、Local-Preference 本地优先级;默认100,大优;限制离开本AS的流量
3、本地起源最优,即本地宣告的路由的Next-Hop为0.0.0.0 为最优
4、AS-Path,越短越优,记录的是经过的AS号
5、起源类型 IGP>EGP>Incomplete。 起源属性 i优于e优于?; 可在控制层面任意接口修改
network 宣告本地路由表中的任意路由 i 0
egp 早期的ebg协议学习的路由重发布到BGP协议中 e 1
import 将本地通过其他协议学习的路由重发布到BGP协议中 ? 2
6、对于来自同一AS的路由,优选MED(多出口的鉴别属性)值小的。 最常用于干涉EBGP选路的属性
MED就是人为的利用路由器优选路径的规则—先比较管理距离(华为为优先级),若一直再比较度量值(华为cost)
7、优选从 EBGP学来的路由(EBGP>IBGP)。
8、优选AS内部IGP的Metric最小的路由。
9.如果配置了maximum-path [ibgp]n,如果存在多条等价路径,会同时进路由表。
负载均衡后,路由表中存在不优路径,但是只是针对ip路由表的,bgp自己永远没有负载均衡
10.最老的路由(前提必须是external路由,联邦内的EBGP路由当做IBGP处理)针对EBGP
11.最低的router-id(起源)
12.多条路径的始发router-id相同,那么选择cluster-list长度最短的
13.BGP优选来自最低邻居IP地址的路径(BGP的neighbor配置的那个IP地址)
总结:
当BGP配置了maximum-path 后,这可以使得EBGP在多条路径上进行负载分担,这个属性在EBGP选路属性之后,即多路配置完成后,还能进行比较的都是IBGP的路由
6、谈谈 BGP 反射器的缺点
说起反射器,就要明确其产生的意义与原理,反射器呢,是用于解决IBGP水平分割的,还有一种解决方法呢,叫做EBGP联邦
二者的比较
- 联盟中的所有路由器都必须理解和支持联盟机制,而路由反射方案只需要路由反射器了解路由反射机制即可,客户端路由器和反射器之间只建立不同的IBGP连接。
- 无论从所需的配置命令还是从拓扑结构的设计上说,路由反射器的实现都更加的简单。
那路由反射器的缺点是什么?其实,反射器的缺点非常明显,如下所示
- 会出现环路,对于反射器的出环问题,下面的问题中会做详细的解释;解决环路,用的是Originator-ID、Cluster-ID
- 客户端必须与反射组的所有反射器建立IBGP邻居,否则会出现反射客户端之间的路由无法同步的情况
- 反射器收到两个或两个以上的到达同一目标的路由时,需要判断出最优的路由,然后反射给客户端;这会导致这些设备丧失多条路径判断最优路径的能力。
7、 BGP 的属性在 MPLS 中的应用?选路控制?
产生
当MPLS用到BGP中的原因有如下两种情况
- BGP中存在纯P设备,即不运行BGP的设备,这时就会造成数据层面的路由黑洞,需要用到MPLS进行解决
- 当需要重叠的IP地址、多个为p嗯站点部署在一个同一个PE设备上时;铺设MPLS-为p嗯
应用
如果在BGP中铺设了MPLS-为p嗯,每个BGP设备就要建立MP-BGP邻居,且需要开启传递团体属性;各台设备间传递的是为p嗯V4路由,即IPV4+RT标识的路由
选录控制
对于选路的控制用的就是BGP的诸多属性,应用分为三步走
- 抓路由
- 布置策略
- 对邻居进行调用
8、BGP的同步是什么?为什么现在的BGP都是默认关闭?
同步
同步就是IGP、BGP中都存在的路由,在之前的BGP版本中如果发现某条路由我BGP有,IGP没有,我就不敢将此路由变成最优路由;
默认关闭
当MPLS-为屁嗯杀出来后,就必须关闭同步,因为MPLS-为屁嗯是建立了一条隧道,与同步与否毫无关系
当然最好是关闭的,因为同步的本质是IGP也会学到BGP的路由,BGP的路由过于庞大,如果也让IGP学到的话,那么对IGP的压力无疑是巨大的
9、BGP 路由协议和 IGP 路由协议的区别?
IGP追求的是速度
- 如RIP的计时器,用于加快路由的更新与触发更新的速度;
- OSPF的触发更新,周期更新,用于加快收敛速度;
- EIGRP的DUAL,即弥散算法(分布式计算)用于加快收敛速度;
BGP的追求:稳定性强,操控性强,可靠性强,承载性强;BGP没有追求速度的包袱,不需要有很强的算法;
- 可靠性:
TCP179端口进行邻居的建立 TCP开销大、速度慢;但是对BGP没有影响 - 稳定性:
- 不做触发更新,也不周期更新,只做增量更新;
- 工作的环境本身就是稳定态;工作在骨干网上,骨干网是被做聚合了的路由进行传输,所以是稳定的;
- TCP也是稳定的
- 承载性:不使用链路状态型计算;是一种高级的距离矢量型,称作路径矢量型
- 操控性:AS间的选路需求,必须要有很强的操控性(选路、策略)
10、BGP 的选路原则
0、不优不传
1、优选 Preferenge_Value值最高的路由(私有属性,仅本地有效)。入向调用,不传递;默认0,大优
Cisco叫weight,权重,思科私有
2、优选本地优先级 (Local_Prefereace)最高的路由。 最常干涉IBGP关系的选路;只在IBGP邻居关系间传递;用于限制离开本AS的流量;默认100,大优
3、优选手动聚合>自动聚合>network>import>从对等体学到的。
4、优选 AS_Path短的路由。 EBGP/IBGP关系均可被干涉,但只能在EBGP邻居间修改;最前端号码为最新经过的AS号; none overwrite
5、起源类型 IGP>EGP>Incomplete。 起源属性 i优于e优于?; 可在控制层面任意接口修改
network 宣告本地路由表中的任意路由 i 0
egp 早期的ebg协议学习的路由重发布到BGP协议中 e 1
import 将本地通过其他协议学习的路由重发布到BGP协议中 ? 2
6、对于来自同一AS的路由,优选MED(多出口的鉴别属性)值小的。 最常用于干涉EBGP选路的属性
MED就是人为的利用路由器优选路径的规则—先比较管理距离(华为为优先级),若一直再比较度量值(华为cost)
7、优选从 EBGP学来的路由(EBGP>IBGP)。
8、优选AS内部IGP的Metric最小的路由。
9、优选 Cluster_List最短的路由。 反射的少
10、优选Orginator_ID最小的路由。
11、优选Router_ID最小的路由器发布的路由。
12、优选具有 较小IP地址的邻居学来的路由。