BGP(边界网关协议)border gateway protocol报文及属性

BGP(边界网关协议)(border gateway protocol)
基础:
                           ↗AS内IGP    ISIS    RIP    OSPF
1、作用范围AS
                          ↘AS外EGP    BGP
2、算法:DV   增强型距离矢量算法(链路状态有全网的拓扑信息,但是距离矢量没有拓扑信息)可以说是路由选择的一个工具
选择最佳路由和控制路由的传播
ospf封装在ip上去传输    rip封装在UDP上进行传播
支持CIDR    增量更新
3、工作层:应用层:port=179
        协议:TCP
4、防环机制
EBGP:AS-path不接收带有本段id的路由    不接受带有本地AS号的路由器
IBGP:水平分割---→FULL Mesh    在AS内学到的路由不在通告给AS内的BGP邻居
        反射器、联盟
路由策略丰富
防止路有震荡
易于扩展(PLV)
每个自治系统都有唯一标识的自治系统编号,有IANA分配的
编号范围:1到65535        其中64512到65535是私网的
EBGP:外部BGP运行在同一个AS范围内(一般用物理接口)
IBGP:内部BGP运行在不同的AS之间(一般用网络接口)
基本前提,必须保证底层是通行的        直连    IBGP    静态
报文:
    open报文    创建邻居关系(版本号,本段AS号,本段r-id,死亡时间)


    update报文  用来更新路由信息--增量    路由信息,路径属性(可以撤销也可以宣告可达的路由信息)


    keepalive报文  保持邻居关系,在建立邻居关系时确认收到了对方的open


    notification报文  用来中断BGP邻居关系(错误代码、子代码)

        1、消息头错误    (1、连接非同步    2、错误的消息长度    3、错误的消息类型)
        2、open消息错误   ( 1、不支持的版本号    2、错误的对等体AS号        3、错误的BGP ID    4、不支持的可选参数        5、认证失败    6、不可接受的保持时间)
        3、update消息错误   ( 1、畸形的属性列表    2、无法识别的公认属性        3、缺少的工人属性    4、属性标志位错误        5、属性长度错误    6、无效的ORIGIN属性        7、AS路由环路    8、无效的下一条属性        9、可选属性的错误    10、无效的网络字段    11、畸形的AS_PATH)
        4、保持时间超时
        5、状态机错误
        6、终止  


    router-refresh  用来通知对方我本台路由器的路由刷新能力,在邻居策略发生了变动,会通过refresh去请求对方重新发送update

六种状态机制:            形成条件                            停留原因
1、idle                        只要配BGP peer                 没有路由,没TCP报文发出
2、connect                 有路由,有TCP发出           没有收到TCP的回应/本段路由出错
                                (路由不一定是正确的)       对方没有回程路由/对方没有开启BGP
3、active                      只要收到对方的TCP         BGP配置出错,本端,对端AS号
                                回应(路由一定是正确的)    对端IP配错···dis bgp error
4、opensent            收到正确的TCP发open          没有收到对方的OPEN
5、openconfirm            收到对方的open                没有收到对方的keepalive
                                        发Keepalive    
6、established            收到对方的keepalive

BGP工作原理---对等体之间的交互原则

IBPG路由,只发布给EBGP对等体
EBGP路由,发布给所有的EBGP和IBGP对等体
只将最优路由发布给对等体
只发送更新的BGP路由
所有对等体发送的路由,BGP设备都会接收

IBGP 全互联    联盟    路由反射器
BGP同步

IBGP路由加入路由表并发布给EBGP对等体之前,会先检查IGP路由表,只有IGP也知道这条IBGP路由时,他才会被加入到路由表中,并发布到EBGP对等体
路径的途经之一1、network(掩码严格匹配)  

                             2、 import

IP路由表    BGP路由表       邻居表    ADJ-RIB-IN    ADJ-RIB-OUT

公认必遵:所有的BGP路由器都可以识别,且必须存在于update消息中
    如果缺少这种属性,路由信息就会出错
公认任意:所有的BGP路由器都可以识别,但是不要求必须在update消息中
    如果缺少了这种属性,路由信息也不会出错
可选过渡:在AS之间具有可传递性
    BGP路由器可以选择是否在update消息中携带这种属性,接收的路由器如果不识别这种属性,可以转发给邻居路由器,邻居路由器看我是否会识别并使用到这种属性
可选非过渡:BGP路由器可以选择是否在update消息中携带这种属性。如果接收的BGP路由器不支持此属性,则相应的这类属性会被忽略,且避讳传递给其他的路由器

常见的BGP路由属性:
1、origin--起源        

2、AS_PATH列表(有序)    

3、Next hop(下一跳)      

4、MED(类似于cost)   

5、Local-preference(本地优先级)            

6、ATomic-Aggregate(自动聚合)    

7、Aggregator(手动聚合--无类)      

8、Community(团体)    

9、Originator-ID(集群内起源ID)                

10、Cluster-List(集群列表)            

11、MP_Reach_NLRI    

12、MP_Unreach_NLRI    

13、Extened_Communities

123为公认必遵            56公认任意            78可选过渡            4 9 10 可选非过渡

1、ORIGIN:属性用来定义路径信息的来源:该属性为公认必遵(i>e>?)(访问距离范围最近的)
IGP:通过路由始发AS的IGP得到的路由信息(通过network命令注入的路由)标识符为“i”
EGP:通过EGP得到的路由信息标识符为“e”
INCOMOELETE:通过其他方式学习到的路由信息(通过import命令注入路由)标识符为“?”

 

 acl 2000

ru per sou 100.1.1.1 0

route-policy 1 per no 10

if-maech acl 2000

apply origin egp /igp/in  321

peer x.x.x.x route-policy 1 export /import

这里有两种情况,network进去的时候还是原来的AS号,但是import进入的时候是按照自己修改的

2、AS_Path属性按矢量顺序记录某条路由从本地到目的地址所要经过的所有的AS编号,该属性为公认必遵(只有出去的时候才会打)

acl 2000

ru per sou 100.1.1.1 0

roure-policy 1 per no 10

if-match acl 2000

apply as-path 10 20 30/none additive/overwrite

import -route direct route-policy 1 export

 none直接为空        additive添加        overwrite覆盖
3、Next_hop属性记录里了路由的下一跳信息,该属性为公认必遵

BGP Speaker在向EBGP对等体发布某条路由时,会把该路由信息的下一跳属性设置为本地与对端建立BGP邻居关系的接口地址。

BGP Speaker将本地始发路由发布给IBGP对等体时,会把该路由信息的下一跳属性设置为本地与对端建立BGP邻居关系的接口地址。

 BGP Speaker在向IBGP对等体发布从EBGP对等体学来的路由时,并不改变该路由信息的下一跳属性

peer x.x.x.x next-hop-local

将学习到EBGP的路由下一跳属性变更为自己建立邻居关系的接口地址。

如果IBGP EBGP内部收到两条等价路由,EBGP默认选择下一跳R-ID小的为优-如果R-ID相同优选建立邻居关系IP小的,但如果变更了底层IGP的选路优先级后,则遵循IGP的优选顺序,用IGP的下一跳影响IBGP的下一跳

总结:NEXT-HOP属性≈IGP内部的优选协议开销

当收到了两条等价路由:一条从EBGP收到、一条从IBGP收------优选EBGP的路由

4、pref val  -- 华为私有

只影响本地台路由器  不在BGP范围内传播  ---BGP speaker 在向Pref属性表明本地路由器的iBGP优先级,用于判断流量离开AS时的最佳路由,该属性为公认任意(比大)默认为0

(只在本台路由器上传递)

acl 2000

ru per sou 100.1.1.1 0

route-policy 1 per no 10

if-match acl 2000

apply preferred-value

bgp 1

improt-route direct route-policy 1

 5、local-pre:本地优先级  -- 公认任意

(仅在IBGP内部生效 不通告给其他AS)

影响去往外部的路由优先级 常用在边界路由器上

Local_Pref属性用于判断流量离开AS时的最佳路由。当BGP路由器通过不同的IBGP邻居获得目的地址相同但下一跳不同的多条路由时,将优先选择Local_Pref属性值较高的路由,其默认值为100

修改:BGP进程里

default local-preference

//修改路由器的

acl 2000

ru per sou x.x.x.x x

route-policy xx per no 10

if acl 2000

apply local-pre 125

Route-policy xx permit no 20

6、MED属性相当于IGP的代价值,用于判断进入AS时的最佳路由,即用来影响邻居AS流量进入本AS的最佳路径,该属性为可选非过渡(比小)Default med                                                                 
配置修改:
acl 2000
ru per sou x.x.x.x x
route-policy xx per no 10
if acl 2000
apply cost 123
peer x.x.x.x route-policy xx export/import
***影响全部路由:
peer x.x.x.x  med x
主要用于影响EBGP学到的路由,或通告给对端的路由,类似IGP协议里的开销

peer x.x.x.x route-policy xx export

影响IBGP内部收到的路由优先级,并且为出方向

6、MED属性相当于IGP的代价值,用于判断进入AS时的最佳路由,即用来影响邻居AS流量进入本AS的最佳路径,该属性为可选非过渡(比小)默认为0

Default med                                                                 

配置修改:

acl 2000

ru per sou x.x.x.x x

route-policy xx per no 10

if acl 2000

apply cost 123

peer x.x.x.x route-policy xx export/import

***影响全部路由:

peer x.x.x.x  med x
主要用于影响EBGP学到的路由,或通告给对端的路由,类似IGP协议里的开销

7.聚合属性:   

atomatic-aggregate 属于公认任意     ---- 自动聚合        ---有类网段

 aggregator           属于可选过渡    ---   手动聚合(无序的)

 用于提示做了汇总路由的始发AS和始发路由器。

8、团体属性:用于标识既具有相同特征的BGP路由,该属性为可选过渡

团体是一组由相同性质的目的地址路由。目的就是将路由信息编组,通过组的标识决定路由传递的策略。tag

携带团体属性的配置:

所有需要传递团体名的邻居  都需要配置

peer x.x.x.x advertise-community

//声明我与我的BGP邻居传递团体属性

internet     --- 都可以收到路由 (传播时既会传给EBGP邻居也会传给IBGP邻居)

no-export   ---  只可以在联盟内的IBGP和EBGP邻居进行传播,不会传播给联盟外的EBGP邻居

no-export-subconfed   --- 只可以传播到联盟内,并且在联盟内的IBGP传播 ,但不会在联盟内进行EBGP的传播,也不会在联盟外进行EBGP传播

no-advertise   --- 只可以传播到联盟内属性,但不会在联盟内的IBGP\EBGP传播,也不会在联盟外进行EBGP的传播

BGP路由的团体属性的主要作用是为了简化路由策略的实现过程
    保留的    0X00000000--0X0000FFFF
        0XFFFF0000--0XFFFFFFFF   

Internet:(0x00000000 )缺省属性,所有路由都属于Internet,此属性的路由可以通告给所有BGP邻居;
    共有的    NO_EXPORT(0XFFFFFF01)路由器收到了带有这一团体值得路由后,不应该把该路由通告给一个联盟之外的一个对等体(本AS传递)(不会通告给真正的EBGP邻居)
        NO_ADVERISE(0XFFFFFF02)路由器收到带有这一团体的路由后,不应该把路由通告给任何的BGP对等体
        NO_EXPOPT_STBCONFED(0XFFFFFF03)路由器收到带有这一团体值得路由后,可以把该路由通告给它的IBGP对等体,但不通告给任何的EBGP对等体(包括联盟内的EBGP对等体,本小AS传递)
    自定义    AS(2B):Nunmber(2B)

团体属性配置:

router-policy comm permit node 10

  apply community no-export

bgp 100

  peer 10.1.12.1 route-policy comm import  //对10.1.12.1传进的路由打上no-export community标签

dis bgp routing-table 11.1.2.0      //查看路由的属性

******community属性在华为设备中需要手动配置才能传递。

bgp 100

  peer 44.1.1.1  advertise-community   //配置通告给44.1.1.1团体属性

BGP选路原则:当到达同一目的存在多条路由时,BGP采用如下策论进行路由的选择(display ip routing-table +路由id)
    1、如果此路由的下一跳不可达,忽略此路由
    2、优选协议首选值(prefval)最高的路由    首选值默认为0,越大越优先(peer 路由器id preferred-value +数值)可以加策略
    3、优选本地优先级最高的路由    缺省情况下默认为100    但是可以修改他的优先级。(default local-preference +数值)(比大)本地AS(可以加策略)
    4、优选本地生成的路由        network   import    聚合
        1、优选聚合路由(聚合路由优先级高于非聚合路由)    2、通过aggregate命令生成的手动聚合路由的优先级高于通过summary automatic命令生成的自动聚合路由    3、通过network命令引入的路由的优先级高于import-route命令引入的路由
    5、优选(AS_path)AS最短的路由(越短越优先)(忽略AS_PATH的作用bestroutr as-path-ignore)
    6、比较origin属性,依次优选origin类型为IGP、EGP、Incomplete的路由     i>e>?
    7、优选MED值最低的路由    默认值0    AS内   或者是相邻的AS中   越小越优先   (apply cost 100)引入协议值为med值
    8、优选从EBGP邻居学来的路由(EBGP路由优先级高于IBGP路由)
    9、优选到BGP下一跳IGP Metric较小的路由
    当以上全部相同,则为等价路由,可以负载分担。注:AS_PATH必须一致,当负载分担时,一下3条选中原则无效(默认不负载)(开启命令maximu load-balancing (1-8))
    10、优选Cluster_list最短的路有
    11、优选Originator_ID或者Router ID最小的路由器发布的路由
 比较对等体的IP ADDRESS,优选从具有较小的IP ADDRESS的对等体学来的路由

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值