文档库 最新最全的文档下载
当前位置:文档库 › BGP总结

BGP总结

BGP会把bgp路由表中最优的且加在ip路由表中的路由信息发给对方。

BGP协议 高级的距离向量路由选择协议,工作在as与as之间,传递路由信息,且保证无环路。

选路属性比较多,度量。

bgp概括
1、协议本身具有高可靠性
2、具有多属性度量
3、在设计上有效避免环路
4、具有多种路由策略及路由控制

BGP路由传递
TCP 179端口,运行bgp的对等体,首先会建立对等体关系。
ibgp对等体:属于同一个as。
ebgp对等体:属于不同的as。

bgp的路由更新
建立对等体,将所有路由发给对等体。没有周期关系,但有增量更新。

当更新完成后,通过keepalive来检测对等体的存在,若对等体失效,将删除对等体通过的所有信息。

open包: 负责和对等体建立邻居关系的一个包 (tcp会话建立以后发的第一个报文)。
update :路由信息包。
keepalive :负责检测对等体是否存活的一个包。
notification :检测出错包。
route-refresh:用来通知对等体自己支持路由刷新能力。


bgp表
全局表 路由表,路由器转发数据的主要依据
bgp路由表 bgp协议计算得到的表
peer表 邻居表 记录的对等体关系
adj-rib-in 对等体发送给我的临时表项------》邻居表bgp表中最优有效且使用的路由
adj-rib-out 发送给对等体的路由表-------》自己最优有效且使用的表。

bgp对等体之间只会把自己使用的,有效的最优的发送给对等体。

bgp的对等体关系,基于TCP协议建立对等体。所有对等体之间只要保证ip网络通信,就可以建立对等体。相邻的网络设备不一定直连。


bgp对等体
ebgp 对等体不在一个as中 默认的情况下使用接口的物理地址作为对等体的地址,且必为直连。
配置:
[r1]bgp 100----自己的bgp号码,一个路由器只能属于一个as。
[r1-bgp]peer 对端对等体地址 as-number as号码-----对端对等体所在的号码。

使用环回接口作为对等体邻居地址------稳定、保证备份、减少TCP会话对
配置:
[r2]bgp 200
[r2-bgp]peer 4.4.4.4 as-number 200

在使用环回接口作为邻居地址时,必须指定更新源地址,命令为:
peer 对端对等体 connect-intface loopback 号码
[r2-bgp]peer 4.4.4.4 connect-intface loopback 0
ebgp对等体之间的信息默认情况下只传一跳,如果需要传递多跳时,必须人为手动配置多跳参数,命令为
[r1-bgp]peer 2.2.2.2 ebgp-max-hop 2


bgp通告原则:

1、当TCP建立完成以后,bgp对等体将把所有的路由发给自己的新对等体
2、当bgp表项较多时,只发自己使用的表项(加入到全局路由表的表项)
3、bgp对等体通过ebgp对等体学习到的路由会公告给自己所有的对等体。若是发给ebgp对等体则修改下一跳,若是发给ibgp对等

体,则不做任何修改。

修改下一跳在ibgp对等体之间传递外部路由时,可以修改下一跳属性。
peer 对等体地址 next-hop-local ------发布的ebgp对等体的路由信息的时候,下一跳变为本地的

4、在ibgp对等体之间,路由信息只传一跳。从ibgp对等体学到的路由不会传递给其他的ibgp对等体。是否发给ebgp对等体,看同步情况。

ibgp对等体传一跳 全网互联(TCP的互联) 发射器和联盟

5、bgp黑洞 解决办法:路由引入,network。



高级配置: 成为bgp路由的两种方式。
network 只要自己的路由表中存在,都可以直接通告到bgp的路由表中。
OSPF引入到BGP里,并发给EBGP邻居。
*****************************************
bgp属性
公认必遵(Well-known mandatory) :该类属性必须包含在bgp的更新报文中,且所有的bgp路由器都必须参考的属性信息。
公认可选 (Well-known discretionary):该类属性不一定会包含在bgp的更新报文中。所有bgp路由器都能够识别和使用,但不是必选。
传递属性:可选传递属性(可选过渡属性)(Optional transitive):接收后不一定能够识别,但是保留传给其他的对等体,以便使用。
可选非传递属性 (Optional non-transitive):该属性信息为可选信息,传递的过程,不识别,直接丢弃。
公认必遵: origin(起源属性) as-path next-hop(下一跳属性)
公认可选: 本地优先
可选传递属性:团体
可选非传递属性:med(开销)
BGP通告原则:
通告原则一:*>----》BGP邻居(IBGP/EBGP)
通告原则二:EBGP邻居----》我------》邻居(IBGP/EBGP)
通告原则三:IBGP邻居----》我XXXXXX》IBGP
通告原则四:
1.开启同步检测
同步
IBGP邻居----》我--------》EBGP
不同步
IBGP邻居----》我XXXXXXXX》EBGP
2.关闭同步,默认关闭同步
同步与否
IBGP邻居----》我---------》EBGP

属性一致
ebgp的路由信息大于ibgp的路由信息。
起源属性代表该路由如何加入到bgp协议中。 network----igp协议 incomplete---import引入路由
i>e>?(incomplete)

as-path属性: 记录了路由信息传递过程中经过的所有的as号码。
-----------选路用,as的号码越少越优,(跟数量有关跟大小无关)。
-----------防环 当收到的路由信息中包含自己的as号码,则忽略该路由。

bgp工作过程:
抓流:acl 前缀列表 团体列表 AS-path列表
工具:filter-policy router-policy
入策略 引入 引出 出策略
R1:--》R2的入口------》BGP路由表----》IP路由表----》BGP路由表--------》R3
节点与节点之间是或的关系
创建路由策略
[r1]route-policy abc permit node 10------创建一个名字为ab

c第10节点序号为允许的路由策略
if-match acl
apply 对应的属性


调用路由策略

import-route ospf 1 route-policy yrs 路由引入
filter-policy route-policy yrs import 过滤时使用
peer 对等体 route-policy 策略名 export(发)/import(收)。




1:本地起源:i》?
*:as-path
2:异地起源 i》e》?
3:router id 小的优




本地优先属性 本地as有多个出口时,优先从哪个路由器转发。本地优先级选大的
在bgp协议下该,影响的是该路由器所在的所有同一个as中的路由器
[bgp]default local-preference 200
使用路由策略该,可对指定的路由进行修改

开启bgp负载
maximum load-balancing 2

med 开销
可选非传递 只传一次
通告相邻的as中的路由器到达自己的开销值。默认情况下,路由器只比较来自于一个as的med。


bgp团体属性
可选传递属性 公认的 默认的情况下不传递
peer 对等体 advertise-community
dis bgp ro 192.168.1.0
community 属性 X:X
NO_EXPORT(0xFFFFFFF01):路由器收到带有这一团体值的路由后,不应把该路由通告给一个联盟之外的对等体。
NO_ADVERTISE(0xFFFFFFF02):路由器收到带有这一团体值的路由后,不应把该路由通告给任何的BGP对等体。
NO_EXPORT_SUBCONFED(0xFFFFFFF03):路由器收到带有这一团体值的路由后,可以把该路由通告给它的IBGP对等体,但不应通告给任何的EBGP对等体(包括联盟内的EBGP对等体)。
ip communitiy-filter 1 permit 100:1
ro po yrs per no 10
if-match com-filter 1
apple lo-p 300:1


发布路由或传递时加入团体属性,对路由进行分类
可以通过发布的参数 no_export no_advertist 控制路由在传递出去的范围
在其他路由器或者网络范围中可以通过ip community-filter 来抓取或者识别该类路由设置或更改其他的属性,主要通过route-policy实现。

首选项:prefval
peer 对等体(ebgp) preferred-value 10
*******************************************

R2:
ospf 1 router-id 2.2.2.2
filter-policy route-policy iftag import
import-route bgp permit-ibgp tag 1000
#
route-policy iftag deny node 10
if-match tag 2000
#
route-policy iftag permit node 20
R4:
ospf 1 router-id 4.4.4.4
filter-policy route-policy iftag import
import-route bgp permit-ibgp tag 2000
#
route-policy iftag deny node 10
if-match tag 1000
#
route-policy iftag permit node 20
********************************************************
BGP的属性:
1.首选项:Preferred Value----只针对本路由器
①peer 46.46.46.6 preferred-value 10 本路由器有效,对对等体发来的所有路由有效,不会传递给其他路由器(入有效)
②精确控制:
acl number 2010
rule 5 permit source 10.10.10.1 0
acl number 2100
rule 5 permit source 100.100.100.1 0

route-policy Preferred-Value permit node 10
if-mat

ch acl 2010
apply preferred-value 20
#
route-policy Preferred-Value permit node 20
if-match acl 2100
apply preferred-value 10
#
route-policy Preferred-Value permit node 30
#
route-policy Preferred-Value-4 permit node 10
if-match acl 2010
apply preferred-value 10
#
route-policy Preferred-Value-4 permit node 20
if-match acl 2100
apply preferred-value 20
#
route-policy Preferred-Value-4 permit node 30

2.本地优先:Local-Preference,针对一个AS内所有运行BGP的路由器,有多个出口时,选择从那一个出口出去
route-policy Local-Preference-6 permit node 10
if-match acl 2010
apply loca 1000
#
route-policy Local-Preference-6 permit node 20
if-match acl 2100
apply loca 2000
#
route-policy Local-Preference-6 permit node 30
----------------
route-policy Local-Preference-4 permit node 10
if-match acl 2010
apply loca 2000
#
route-policy Local-Preference-4 permit node 20
if-match acl 2100
apply loca 1000
#
route-policy Local-Preference-4 permit node 30
peer 2.2.2.2 route-policy Local-Preference-2 import
peer 4.4.4.4 route-policy Local-Preference-4 import
3.度量值 MED 当一个AS有多个入口是,决定从那个入口进入本AS
route-policy med-2 permit node 10
if-match acl 2010
apply cost 1000
#
route-policy med-2 permit node 20
if-match acl 2100
apply cost 500
#
route-policy med-2 permit node 30
-------------------
route-policy med-4 permit node 10
if-match acl 2010
apply cost 500
#
route-policy med-4 permit node 20
if-match acl 2100
apply cost 1000
#
route-policy med-4 permit node 30
---------
A:ip ip-prefix 1 index 60 permit 0.0.0.0 1 greater-equal 8 less-equal 8
B:ip ip-prefix 1 index 70 permit 128.0.0.0 2 greater-equal 16 less-equal 16
C:ip ip-prefix 1 index 80 permit 192.0.0.0 3 greater-equal 24 less-equal 24
所有:ip ip-prefix 1 index 90 permit 0.0.0.0 0 less-equal 32
------------------------------
4.起源:Origin, i》e》?
ip ip-prefix 1 permit 10.10.10.1 32
ip ip-prefix 2 permit 100.100.100.1 32
route-policy Origin-2 permit node 10
if-match ip-prefix 1
apply origin egp 100
#
route-policy Origin-2 permit node 20
if-match ip-prefix 2
apply origin incomplete
#
route-policy Origin-2 permit node 30
---------------------
route-policy Origin-4 permit node 10
if-match ip-prefix 1
apply origin incomplete
#
route-policy Origin-4 permit node 20
if-match ip-prefix 2
apply origin egp 100
#
route-policy Origin-4 permit node 30
5,团体属性
R6:
ip ip-prefix 1 permit 10.10.10.1 32
ip ip-prefix 2 permit 100.100.100.1 32
route-policy comm-2 permit node 10
if-match ip-prefix 1
apply comm 100:1
#
route-policy comm-2 permit node 20
if-match ip-prefix 2
apply comm 100:2
#
route-policy comm-2 permit node 30
-------
route-policy comm-4 permit node 10
if-match ip-prefix 1
apply comm 200:1
#
route-policy comm-4 permit node 20
if-mat

ch ip-prefix 2
apply comm 200:2
#
route-policy comm-4 permit node 30
----------------
peer 26.26.26.2 route-policy comm-2 export
peer 26.26.26.2 advertise-community
peer 46.46.46.4 route-policy comm-4 export
peer 46.46.46.4 advertise-community
---------------
[AR2-bgp]peer 3.3.3.3 advertise-community
[AR4-bgp]peer 3.3.3.3 advertise-community
-----------------
R3:
ip community-filter 1 permit 100:1
ip community-filter 2 permit 100:2
ip community-filter 3 permit 200:1
ip community-filter 4 permit 200:2
route-policy COM-2 permit node 10
if-match community-filter 1
apply origin egp 100
route-policy COM-2 permit node 20
if-match community-filter 2
apply origin incomplete
route-policy COM-2 permit node 30
-------------------------------
route-policy COM-4 permit node 10
if-match community-filter 3
apply origin incomplete
route-policy COM-4 permit node 20
if-match community-filter 4
apply origin egp 100
route-policy COM-4 permit node 30
------------------------------
BGP属性之间比较:
1.如果此路由的下一跳不可达,忽略此路由(有效性)
★2.Preferred-Value值数值高的优先(首选项,默认值:0,选值大的)
★3.Local-Preference值最高的路由优先(本地优先,默认值:100,选值大的)
4.聚合路由优先于非聚合路由
5.本地手动聚合路由的优先级高于本地自动聚合的路由

6.本地通过network命令引入的路由的优先级高于本地通过import-route命令引入的路由(本地起源)

★7.AS路径的长度最短的路径优先(路径比较,选经过AS个数少的)

★8.比较Origin属性,IGP优于EGP,EGP优于Incomplete(异地,i>e>?)

★9.选择MED较小的路由(开销COST,默认值:0,选值小的)
★10.EBGP路由优于IBGP路由
11.BGP优先选择到BGP下一跳的IGP度量最低的路径
当以上全部相同,则为等价路由,可以负载分担
注:AS-Path必须一致
当负载分担时,以下3条原则无效
11.比较Cluster List长度,短者优先
12.比较Originator_ID(如果没有Originator_ID,则用Router ID比较),选择数值较小的路径
★13.比较下一跳的router id小的
14.比较对等体的IP地址,选择IP地址数值最小的路径


as-path 记录的路由经历过了所有的as号码,该号码每经历一个as,则把新经历的as的号码加在as-path前面。

在使用route-policy时,as-path属性在出方向应用时,在原有的as-path号码前加入策略里的号码,最后加入到自己本地的as号码发给对等体。as-path属性在入方向使用时,是在对等体发给我的as-path号码前加入策略里的号码。

as-path-list 正则表达式:

^ 以后序字符开始的 ^200
$ 以前一个字符串的结束 $200
. 表示任何单个字符
+ 匹配前面的一个字符或者一个序列,允许出现一次或多次
_ 匹配一个符号空格,括号或者逗号
* 匹配前面的一个字

符或者一个序列,可以零次或多次出现。

一些常用的正则表达式:
^$ 匹配本地AS始发的路由
.* 匹配所有路由
_10_ 匹配所有必须通过AS10的路由
^10$ 匹配AS-PATH中只有AS10的路由
^10_. 匹配从相邻AS10接收的路由
^[0-9]+$ AS_PATH只有一个AS号

1、拒绝列表一定有条允许
2、当出现冲突,严格的先配置
3、主要控制经过as路径号的路由。


汇总----bgp路由

自动汇总:只对import的路由有效且汇总后丢失原有的as号码,可能回出现环路。明细路由会自动被抑制。 summary automatic


手动汇总:可以对所有的路由进行汇总,且同时将汇总路由及明细路由发布给对等体。手动汇总默认情况下会丢失原有的as-path号码。aggregate x.x.x.x x
as-set 保留原有的as号码
detail-suppress 抑制明细路由


















相关文档