BGP学习笔记

距离矢量路由协议,TCP179端口

有多条通往INTERNET的路时有必要使用BGP

AS类型:

单出入口AS

传输AS

多出入口AS

邻居类型:IBGP EBGP

 

BGP使用原则:

1.多条路径时,BGP Speaker 只选最优的给自己使用

2.BGP Speaker 只把自己使用的路由通告给相邻体

3.BGP Speaker 从EBGP 获得的路由会向它所有的BGP相邻体通告

4.BGP Speaker 从IBGP 获得的路由不向它的IBGP相邻体通告

5.BGP Speaker 从IBGP 获得的路由是否通告给它的EBGP相邻体要依IGP和BGP同步的情况来决定

6.连接一建立,BGP Speaker 将把自己所有BGP路由通告给新相邻体

 

成为BGP路由的三条途径:

1.纯动态注入

RTB(config)#router bgp 200

RTP(config-router-bgp)#redistribute ospf  ------将IGP的路由动态的注入到BGP路由表中

 

Magical Snap - 2012.02.10 01.04 - 001

 

2.半动态注入:

RTB(config)#router bgp 200

RTB(config-router-bgp)#network 18.0.0.0 mask 255.0.0.0

 

 Magical Snap - 2012.02.10 01.08 - 002

3.静态注入:

RTB(config)#ip route 18.0.0.0 255.0.0.0 serial 0

RTB(config)#router bgp 200

RTB(config-router-bgp)#network 18.0.0.0

 

Magical Snap - 2012.02.10 01.10 - 003

BGP的四种报文:

Magical Snap - 2012.02.10 01.14 - 005

Notification报文发出意味着BGP连接的中断

 

BGP路由属性:

1.表达了路由的特征

2.过渡和非过渡

3.必遵(必须带的属性)和可选的(可带可不带)

4.便于扩展(256种属性)

5.截至目前共16种属性(已经使用)

 

Origin属性:路由是怎么来的

Magical Snap - 2012.02.10 01.31 - 012

As-Path属性:指出路由顺序经过的AS

Magical Snap - 2012.02.10 01.32 - 013

矢量路由从这里来的!!

 

as set 后面的as号不一定是按顺序的

 

Next Hop属性:

MagicalSnap2012.02.1001.37014

点到点网络中下一跳指的是As的下一跳

广播网上下一跳是路由产生的那个AS

 

在配联盟时要用到私有AS号

私有AS号:64512-65535

 

BGP的过滤功能

1.可按照路由的IP地址过滤

2.可依照路由经过的AS-PATH过滤

3.可以依照路由的属性过滤

4.可以依照路由到来的接口过滤

5.可以按照过滤的结果设置路由的属性

 

 Magical Snap - 2012.02.12 23.36 - 012

 

RTB(config-router-bgp)#neighbor A.B.C.D route-map deny18

RTB(config-router-bgp)#exit

RTB(config)#route-map deny18 permit 10 out

RTB(config-router-bgp)#match ip address 1

RTB(config-router-bgp)#set metric 888

RTB(config-router-bgp)#exit

RTB(config)#access-list 1 deny 18.0.0.0 255.0.0.0

RTB(config)#access-list 1 permit any

 

BGP路由器对路由的处理过程

Magical Snap - 2012.02.12 23.42 - 013

 

BGP处理大规模网络路由条数问题手段

1.路由表庞大----超过10万条路由

   BGP聚合

Magical Snap - 2012.02.13 00.19 - 014只通告聚合路由

Magical Snap - 2012.02.13 00.21 - 015

通告聚合路由和具体路由

Magical Snap - 2012.02.13 00.22 - 016

通告聚合路由和部分具体路由

 

2.IBGP相邻体过多,逻辑全连接不现实

  

Magical Snap - 2012.02.13 00.22 - 017

BGP联盟

  Magical Snap - 2012.02.13 00.23 - 018

BGP反射

3.复杂网络环境中路由变化十分频繁

   BGP衰减:对频繁更新的路由,惩罚值到一定程度后抑止该路由,直至其恢复稳定方可重新投入使用

 

 

 

 

 

 

 

BGP 三张表:

1.邻居关系表--所有的BGP邻居——show ip bgp summary

2.转发数据库--记录每个邻居的网络,包含多条路径运往同一目的地,通过不同属性判断最好路径,数据库包括BGP属性——show ip bgp

3.路由表--最佳路径放入路由表中,EBGP路由(从外部AS获悉的BGP路由)的管理距离为20,IBGP路由(从AS系统获悉的路由)管理距离为200——show ip route bgp

 

BGP消息的类型:

1.open:打开消息:主要是利用此报文建立邻居,运行BGP的路由器打开与邻居的TCP连接,并发送打开报文,如果邻居接受这种邻居关系,由响应保活报文。

2.keealive:对等体之间周期性的交换这些消息以保持会话有效。(默认60秒)

3.update:对等体之间使用这些消息来交换网络层可达性信息更新报文是BGP协议的核心,路由器使用它来撤销以前已通知的终点和宣布到一个新终点的路由,或两者都有,应该注意:BGP可以撤销好几个在以前曾通知过的终点,但在单个更新报文中则只能通知一个新终点

4.notification:这些消息用来通知出错信息

 

帧格式:所有的BGP有公共的首部:标记(16个字节),长度(两个字节),类型(一个字节)

 

BGP邻居建立过程:

Keepalive计时器是保持时间(Hold Time)的三分之一(建议保持时间设为90S,keepalive时间为30S)

 

 

BGP的状态机

Idle在此状态下不分配网络资源,不允许传入的BGP连接。当在持续性差错条件下,经常性的重启会导致波动。因此,在第一次进入到空闲状态后,路由器会设置连接重试定时器,在定时器到期时才会重新启动BGP,思科的初始连接重试时间为60秒,以后每次连接重试时间都是之前的两倍,也就是说,连接等待时间呈指数关系递增。

Connect:(已经建立完成了TCP三次握手),BGP等待TCP连接完成,如果连接成功,BGP在发送了OPEN分组给对方之后,状态机变为OpenSent状态,如果连接失败,根据失败的原因,状态机可能演变到Active,或是保持Connect,或是返回Idle。

Active:在这个状态下,初始化一个TCP连接来建立BGP间的邻居关系。如果连接成功,BGP在发送了OPEN分组给对方之后,状态机变为OpenSent状态,如果连接失败,可能仍处在Active状态或返回Idle状态。

OpenSentBGP发送OPEN分组给对方之后,BGP在这一状态下等待OPEN的回应分组,如果回应分组成功收到,BGP状态变为OpenConfirm,并给对方发送一条Keepalive分组,如果没有接到回应分组,BGP状态重新变为Idle或是Active。

OpenConfirm这时,距离最后的Established状态只差一步,BGP在这个状态下等待对方的Keepalive分组,如果成功接收,状态变为Established,否则,因为出现错误,BGP状态将重新变为Idle。

Established这是BGP对等体之间 可以交换信息的状态,可交换的信息包括UPDATE分组、KeepAlive分组和Notification分组。

 

 

connect和active都是TCP连接阶段,ACTIVE是发起方,connect是应答方。可以使用命令show ip bgp summary、debug ip bgp events、debug ip bgp来查看

 

5、建立IBGP邻居

IBGP运行在AS内部,不需要直连。IBGP有水平分割,建议使用Full Mesh,由于Full Mesh不具有扩展性,为了解决IBGP的Full Mesh问题,使用路由反射器(RR)和联邦两种方法来解决。主要减少了backbone IGP中的路由。

Neighbor后所指的地址可达。发起方不能是缺省路由,应答方不能是缺省路由。

可以使用下面两种方法来建立IBGP邻居:

1.邻居之间可以通过各自的一个物理接口建立对等关系,该对等关系是通过属于它们共享的子网的IP地址来建立的。

2.邻居之间也可以通过使用环回接口建立对等关系。

在IBGP中,由于假定了IBGP邻居在物理上直接相连的可能性不大,所以将IP分组头中的TTL域设置为255。

6、建立EBGP邻居

EBGP运行在AS与AS之间的边界路由器上,默认情况下,需要直连或使用静态路由,如果不是直连,必须指EBGP多跳,Neighbor x.x.x.x ebgp-multihop [1-255] 不选择为最大值,255跳。

可以使用下面两种方法来建立EBGP邻居:

1.邻居之间可以通过各自的一个物理接口建立对等关系。

2.邻居之间也可以通过使用环回接口建立对等关系。

 

7、neighbor ip-address remote-as number命令

例:neighbor 10.1.1.1 remote-as 100

指定对方属于哪一个AS。所指的10.1.1.1地址,必须在IGP中可达。

允许邻居用这个地址来访问我的179端口,但没有指明访问本路由器的哪个地址,只检查源地址。

本路由器以更新源地址去访问neighbor后面这个地址的179端口,是否可以建立TCP链接要看对方是否允许我的更新源来访问它。

你可能感兴趣的:(数据库,职场,休闲,路由表,最好)