BGP学习笔记.docx
- 文档编号:2236465
- 上传时间:2022-10-28
- 格式:DOCX
- 页数:20
- 大小:30.68KB
BGP学习笔记.docx
《BGP学习笔记.docx》由会员分享,可在线阅读,更多相关《BGP学习笔记.docx(20页珍藏版)》请在冰豆网上搜索。
BGP学习笔记
BGP学习笔记
一、BGP概述
(一)自主系统
1、内部网关协议(IGP):
用于自治系统内部交换信息。
如:
rip,igrp,eigrp,ospf,is-is都是IGP
2、外部网关协义(EGP):
用于连接自主系统。
如:
BGP。
是一种域间路由选择协议(idrp)
3、AS自治系统的含义:
自治系统可能使用多种IGP,并采用多种度量值。
在BGP看来,对另一个AS来说,它有统一的内部路由选择规划。
4、AS的编号:
自治系统是一个16位的数字,范围为1--65535。
1--65411是注册因特网编号,属于公有。
65412-65535是保留编号,属于私用。
(二)BGP的特性
1、BGP使用TCP作为传输协议,端口号179。
ospf、igrp、eigrp运行于ip层。
Is-is在网络层,rip用udp协议。
2、bgp是一种距离矢量协议。
实际上是一种路径矢量协议。
路径矢量信息包括一个BGPAS号列表,其中列表中列出了前往目标网络必须经过的AS。
还包括前往下一个AS的路由器IP地址(下一跳属性),以及源头编码属性。
AS路径:
即前往目标网络通过的AS列表。
需每个AS都会有一个编号。
BGP不接受在AS路径属性中包含本自治系统的编号的路由选择更新,以防止环路。
3、支持CIDR(无类别域间选路),简化了路由聚合,减少了路由表
4、BGP更新只发送增量消息,不是所有的路由表。
5、提供了丰富的路由策略。
(三)BGP的用途
1、基本策略的路由选择
(1)BGP支持AS级策略。
制定路由选择策略,被称为基于策略的路由选择。
BGP根据路由选择信息中的属性可以制定AS策略
(2)BGP路由器只把自已获悉或使用的最佳路由通告给邻接自主系统对体,其他路由不通告。
邻接自主系统,即与本自主系统相邻的自主系统。
即BGP路由器只把自已获悉的最佳路由通告给相邻自主系统的BGP路由器。
2、使用BGP的时机
AS有多条到其他自主系统的连接
必须对数据流进入和离开AS的方式进行控制
AS允许分组穿过它前往其他自主系统
3、不使用BGP的时机
只有一条到INTERNET或另一个AS的连接
自主系统之间带宽较低
当一个AS与另一个AS的路由策略相同时
路由器没有足够的能力来处理BGP更新
以上情况应用静态路由来解决。
浮动静态路由:
即把静态路由的管理距离调整到比动态路由协议的管理距离还要大。
只有动态路由协议不可用时,此静态路由才被使用。
(四)BGP的邻接关系及工作机制
1、工作机制
BGP系统启动时,发送整个BGP路由表交换路由信息,之后为了更新路由表,只交换更新信息,即只有增量信息
在系统运行过程中,通过接收和发送KEEPALIVE消息来检测互相之间连接是否正常
BGP发送优选的BGP路由和引入的IGP路由给对等体。
2、BGP邻接关系:
BGP发起者:
运行BGP的路由器被称为BGP发起者
BGP对等体:
即BGP邻居。
任何两个运行BGP协议的路由器,通过TCP连接,交换BGP路由信息的,就是BGP对等体。
可以是直接连接的,也可以是不直连的。
EBGP:
外部BGP。
即两个不同的AS之间的BGP连接,叫EBGP。
BGP在不同自主系统路由器之间运行的时,被称为EBGP。
运行EBGP的路由器之间必须有特理上的直接链路。
IBGP:
BGP在同一个AS的路由器之间运行时。
即在同一个自主系统内的BGP叫IBGP。
运行IBGP的路由器之间不一定要物理直连,但必须保证逻辑上的全连接
3、BGP的路由通告原则:
(1)多条路径时,BGPspeaker只选择最优的给自已使用。
即有多条到目的网络的路径时,选最优的。
(2)BGPspeaker只把自已使用的路由通告给相邻体。
结合第一条,即只通告最佳路由给相邻体。
(3)BGPspeaker从EBGP获悉的路由会向它所有的BGP相邻体通告,包括EBGP和IBGP
(4)BGPspeaker从IBGP获得的路由,不向它的GBGP相邻体通告,避免发生环路。
(5)BGPspeaker从IBGP获得的路由信息是否通告给EBGP相邻体,要依据IGP和BGP的同步情况决定。
只有IGP已完全知晓了BGP的路由信息,即IGP和BGP已完全同步了,才通告给EBGP
(6)连接一建立,BGPspeaker将把自已所有BGP路由通告给新相邻体,之后只发送更新的部分。
注意:
一般不会把BGP路同注入到内部的IGP路由器中,因为BGP路由表太大,会导致IGP网络崩溃。
(五)BGP的几种报文(几种消息类型)
1、打开消息(open):
用来交换各自版本号,自治系统号,保持时间,BGP标识等信息。
(你好,跟我交个朋友吧)
2、存活消息(keepalive):
即和BGP对等体的keepalive消息。
向对等体通告彼此还连接着,没中断。
(我还活着呢,别不理我)
3、更新消息(update):
有新的路由选择信息则发送update消息。
更新消息中只含一条路径的信息。
如果是多条路径,则需要多条更新消息。
也可以撤消多条不可达路由信息。
一个更新消息只能通告一个路由,但可以携带多个路径属性;一个更新消息可以通告多条路由,但路径属性必须相同。
撤消路由:
要撤销的路由的ip地址前缀。
路径属性:
包括AS路径,源头,本地优先级等。
网络层可达性信息:
包含通过该路径可以达到的ip地址前缀。
4、通知消息:
检测到错误条件时发送通知消息。
然后立即关闭BGP连接。
包含一个错误代码,一个错误子代码,和有关错误信息。
(我不跟你玩了)
(五)BGP协议邻接关系的状态
首先是空闲状态(IDLE)
BGP一旦开始就进入connect(连接)状态,如果定时器超时,则仍处于connect状态
如果连接失败则进入ACTIVE(活动)状态,在active状态下,如果TCP连接建立不成功,则一直处于active状态。
成功后进入opensent(打开发送)状态
如connect状态下,连接成功也进入opensend状态
opensend状态下,BGP一旦收到open报文(打开消息),就会进入openconfirm(打开确认)状态
在openconfirm状态下,如果keepalive定时器超时,则停在openconfirm状态下。
直到收到keepalive报文,进入established(已建立)状态。
邻居建立成功。
仅当连接处于已建立状态时,才能交换更新,存活和通知消息。
(六)BGP的三种路由来源
纯动态注入:
路由器将通过IGP路由协议动态获得的路由信息直接注入到BGP中。
一般用redistribute命令把IGP路由信息重分发到BGP路由中。
半动态注入:
路由器有选择的将IGP路由协议获得的动态路由信息注入到BGP中。
如用:
network命令声明哪些网络的路由注入到BGP路由中。
静态注入:
路由器将静态配置的某条路由注入到BGP系统中。
(七)BGP表
运行BGP的路由器都有一个独立的BGP拓扑表,也叫BGP路由选择表,用于存储从其他路由器那里获悉的路由选择信息。
这个表独立于IP路由选择表。
BGP邻居建立邻接关系后,邻居之间交换BGP路由
BGP路由器从每个BGP邻居那里获得路由选择信息
并把信息加入到BGP拓扑数据库中,即BGP路由选择表中
然后从BGP路由选择表中选出前往各个目的网络的最佳路由
将最佳路由提供给IP路由选择表。
二、BGP的属性
(一)属性的分类
(1)公认强制属性(必遵属性)
在路由更新的数据报中必须存在的路由属性。
如缺少必遵属性,路由信息将会出错。
必遵属性有:
AS路径属性(aspath);下一跳属性(next-hop);源头属性(origin)
(2)公认自由决定的属性(可选属性)
可选的,不一定存在于更新的数据报文中。
根据需要配置。
包括以下属性:
本地优先级属性(localprecerence);原子聚合属性(atomicaggregate)
(3)可选传递属性(过渡属性)
具有AS间可传递的属性就是过渡属性。
过渡属性的值可以被传递到其他的AS中,并继续起作用。
包括:
聚合站属性(aggregntor);共同体(团体)属性(community)
可选属性不要求所有BGP实现都支持。
它可能是私有属性。
BGP路由器对于支持的可选传递属性,BGP将接纳此属性值。
对于不支持的可选传递属性,路由器将原封不动地将属性值传递给其他BGP路由器。
即BGP路由器对于支持的可选传递属性,则接收属性值,并也把属性值转给到BGP邻居。
而对于不支持的可选传递属性,则原封不动的传递给其他BGP路由器。
自已不接纳。
(4)可选非传递属性(非过渡属性)
只在本地起作用,出了自主系统或域,那属性值就恢复到缺省值,不向外传递。
包括:
多出口鉴别器属性(MED)
注:
CISCO还定义了BGP属性权重。
(5)CISCO使用的属性类型编码:
源头(origin)1
AS路径2
下一跳3
MED4
本地优先级5
原子聚合6
聚合站7
共同体8
始发站ID9
集群列表10
(二)属性分讲
1、AS路径属性(必遵属性)
是路由经过的AS序列。
即列出到达目的网络时经过的AS清单。
BGP使用AP-PATH(AS路径)作为路由更新的一部分。
为了避免路由环,当从外部收到一条路由,发现此路由的AS路径属性中发现包含本自治系统号时,将丢弃此路由。
BGP在向EBGP对等体通告一条路由时,要将自已的AS号加入到AS路径属性中
在将路由通告给IBGP邻居时,不修改AS路径属性。
在其他条件相同的情况下,选择AS路径最短的路由
2、下一跳属性(next-hop)(必遵属性)
(1)概述:
用于指出前往目的地的下一跳IP地址。
与IGP不同,BGP中的跳指的是AS,而不是路由器。
因此下一跳是下一个AS。
对一个AS中的网络而言,这个AS的下一跳就是下一个AS的入接口的IP地址。
对EBGP而言,下一跳是另一个AS中发送更新的邻居路由器的IP地址。
并且,BGP规定,EBGP通告的下一跳,应被传到IBGP中,并且不会改变。
(即所有IBGP知道的另一个AS的下一跳是相同的)
A:
BGP(包括EBGP和IBGP)在向IBGP通告从其他EBGP获得的路由信息时,不改变下一跳地址。
即本AS的BGP路由器从其他AS中的EBGP得到的下一跳信息传给IBGP时,下一跳信息不变。
(即所有IBGP知道的另一个AS的下一跳是相同的)
B:
本AS的BGP在向EBGP通告路由信息时,即本AS的BGP路由器在把本AS的路由信息传到其他AS中时,下一跳地址就是本AS中BGP路由器的端口地址。
(即通告本AS路由信息到其他AS的那个运行EBGP的路由器接口就是其他AS到达本AS的下一跳)
C:
当多路连接时,多路访问网络(如以太网)上运行BGP时,BGP路由器将使用合适的地址作为下一跳地址。
即第三方下一跳。
D:
如果连接路由器的介质是非广播多路访问(NBMA)(X.25,帧中继网等)时,有时需要修改下一跳属性业阻止问题的产生。
E:
递归查找:
F:
修改下一跳属性
#neighbor{ip-address|perr-group-name}next-hop-self
3、源头属性(origin)(必遵属性)
定义路由信息的源头。
即路由信息是从哪来的。
(1)IGP:
路由信息是从AS内部获得。
路由信息是使用NETWORK命令注入到BGP路由表中的,则ORIGIN属于IGP类。
IGP源头用i表示。
(2)i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- BGP 学习 笔记