第十七集 动态路由协议-BGP概述及基础配置

一、BGP的概述

边界网关协议是一种实现自治系统AS之间的路由可达,并选择最佳路由的量性协议。早期发布的三个版本分别是BGP-1(Rfc1105)、gp-2(rfc1163)bgp3(RfC1267),1994年开始使用BGP-4(RFC177)也是目前使用的版本,2006年之后单播v4网络使用的版本是BGP4(R4271),其他网络使用的版本是MP-bGP(RFC4760)。

二 AS的概念

自治系统(Autonomous System ,AS),指的是在同一个组织管理下、使用相同策略的设备的集合。·不同AS通过AS号区分,AS号取值范围1- 65535,其中64512- 65535是私有AS号
中国电信163AS号:4134。
中国电信CN2AS号:4809。
中国网通AS号:9929。

三、BGP特点

1、BGP能够承载大批量的路由信息,能够支撑大规模网络。

2、BGP提供了丰富的路由策略,能够灵活的进行路由选路,并能指导邻居按策略发布路由。

3、BGP能够支撑MPLS/NPN的应用,传递客户VPN路由。

4、BGP提供了路由聚合和路由衰减功能用于防止路由振荡,有效提高了网络的稳定性。

5、BGP使用TCP作为其传输层协议(端口号为179)<建立BGP邻居关系时会经历TCP三次挥手过程> , 
并支持BGP与BFD联动、BGP Tracking、BGP Auto FRR和BGP GR和NSR ,提高了网络的可靠性。

四、BGP的9个原则

从IBGP对等体获得的BGP路由,BGP设备只发布给它的EBGP对等体。
从EBGP对等体获得的BGP路由,BGP设备发布给它所有EBGP和IBGP对等体。
当存在多条到达同一目的地址的有效路由时,BGP设备只将最优路由发布给对等体。
路由更新时,BGP设备只发送更新的BGP路由。 所有对等体发送的路由,BGP设备都会接收。
所有EBGP对等体在传递过程中下一跳改变。
所有IBGP对等体在传递过程中下一跳不变。
默认EBGP传递时TTL为1
默认IBGP传递时TTL为225

五、BGP协议特征

1、BGP使用TCP为传输层协议, TCP端口号179。路由器之间的BGP会话基于TCP连接而建立。
2、运行BGP的路由器被称为BGP发言者( BGP Speaker ) ,或BGP路由器。
3、两个建立BGP会话的路由器互为对等体( Peer )。BGP对等体之间交换BGP路由表。
4、BGP路由器只发送增量的BGP路由更新,或进行触发更新(不会周期性更新)。
5、BGP具有丰富的路径属性和强大的路由策略工具。
6、BGP能够承载大批量的路由前缀,用于大规模的网络中。

六、BGP报文类型

报文名称作用是什么什么时候发包
Open协商BGP邻居的各项参数建立邻居关系BGP对等体之间需先建立TCP连接,如果TCP连接成功,那么BGP向对等体发送Open报文。
Update用于发送BGP路由信息。连接建立后,有路由需要发送或路由变化时,发送UPDATE通告对端路由信息。
Notification报告错误,中止对等体关系。当BGP在运行中发现错误时,要发送NOTIFICATION报文通告BGP对端。
Keepalive维持BGP对等体关系。定时发送Keepalive报文以保持BGP对等体关系的有效性。
Route-refresh用于在改变路由策略后请求对等体重新发送路由信息。只有支持路由剧新能力的BGP设备会发送和响应此报文。当路由策略发生变化时,触发请求对等体重新通告路由。

七、BGP的状态机

  1. ldle (空闲)状态
    BGP总以ldle状态为起点,该状态拒绝所有入站的连接。只有在BGP起动之后,BGP进程将初始化所有BGP资源,初始化去往邻居的TCP连接,监听来自邻居的TCP初始化消息,并更改为连接状态。启动事件一般是配置BGP进程。
  2. Connect(连接)状态
    进入Connect状态后,BGP进程将一直等待TCP连接的完成(三次握手),当TCP连接建立成功,BGP将会向邻居发送Open消息,并进入OpenSent(打开发送)状态。如果TCP会话没有建立,BGP将继续监听邻居初始化的连接,开启连接重试定时器,迁移到Active(激活)状态。
    Connect→→OpenSent(TCP连接建立);
    Connect→→Active(TCP连接暂未建立)。
  3. Active(激活)状态
    该状态下,BGP进程继续尝试和邻居建立TCP连接,如果TCP连接建立成功,BGP进程清除连接重试定时器,完成初始化过程,并向邻居发送Open报文,迁移到OpenSent(打开发送)状态。
    如果连接重试定时器到期BGP进程依然处在激活状态,进程将返回连接状态,监听邻居发起的TCP会话,这个过程将反复循环,直到监听到由邻居发起的TCP会话。
  4. OpenSent(打开发送)状态
    进入了该状态,已经发送了Open消息,BGP将一直等待来自邻居的Open消息。一旦接收到Open消息后,将检查该消息的每一个字段,如果有差错,将会发送Notification消息迁入Idle状态。
    如果接收到的Open消息没错,就会发送Keepalive消息并商讨Keepalive定时器和Keepalive发送的时间。并迁移到OpenConfirm(打开确认)状态。
  5. OpenConfirm(打开确认)状态
    进入了这个状态下,BGP进程将等待邻居确认的Keepalive或Notification消息。如果接收到的是Keepalive消息则迁移到Established(建立)状态,如果是Notification消息那么就将迁移到Idle状态。
  6. Established(建立)状态
    进入了这个状态就说明了BGP的对等连接正式建立了,对等体之间交互Update,Keepalive和Notification消息,如果接受到的是Update或Keepalive消息,则重启保持定时器,如果接受到一个Notification消息,则会迁移到Idle状态。

八、实验

R5
[R5]int g0/0/0
[R5-GigabitEthernet0/0/0]ip add 15.0.0.2 30 
[R5-GigabitEthernet0/0/0]int loopback 0
[R5-LoopBack0]ip add 5.5.5.5 32
[R5-LoopBack0]int loopback 1
[R5-LoopBack1]ip a 202.0.0.1 24
[R5-LoopBack1]int loopback 2
[R5-LoopBack2]ip a 202.0.1.1 24
[R5]ospf 1 router-id 5.5.5.5
[R5-ospf-1]area 0
[R5-ospf-1-area-0.0.0.0]network 15.0.0.0 0.0.0.255 
[R5-ospf-1-area-0.0.0.0]network 5.5.5.5 0.0.0.0
[R5]bgp 100 
[R5-bgp]router-id 5.5.5.5
[R5-bgp]peer 1.1.1.1 as-number 100 
[R5-bgp]peer 1.1.1.1 connect-interface LoopBack 0
[R5-bgp]peer 2.2.2.2 as-number 100
[R5-bgp]peer 2.2.2.2 connect-interface LoopBack 0
[R5-bgp]network 202.0.0.1 24
[R5-bgp]network 202.0.1.1 24
R1
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip a 15.0.0.1 30
[R1-GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip a 12.0.0.1 30
[R1-GigabitEthernet0/0/1]int loopback 0
[R1-LoopBack0]ip a 1.1.1.1 32
[R1]ospf 1 router-id 1.1.1.1
[R1-ospf-1]area 0
[R1-ospf-1-area-0.0.0.0]network 15.0.0.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]network 12.0.0.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[R1]bgp 100
[R1-bgp]router-id 1.1.1.1
[R1-bgp]peer 5.5.5.5 as-number 100
[R1-bgp]peer 5.5.5.5 connect-interface LoopBack 0
[R1-bgp]peer 2.2.2.2 as-number 100
[R1-bgp]peer 2.2.2.2 connect-interface LoopBack 0
R2
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip a 12.0.0.2 30
[R2-GigabitEthernet0/0/0]int g0/0/1
[R2-GigabitEthernet0/0/1]ip a 23.0.0.1 30
[R2-GigabitEthernet0/0/1]int loopback 0
[R2-LoopBack0]ip a 2.2.2.2 32
[R2]rip 1
[R2-rip-1]version 2
[R2-rip-1]network 2.0.0.0
[R2-rip-1]network 23.0.0.0
[R2]bgp 100
[R2-bgp]router-id 2.2.2.2
[R2-bgp]peer 5.5.5.5 as-number 100
[R2-bgp]peer 5.5.5.5 connect-interface LoopBack 0
[R2-bgp]peer 1.1.1.1 as-number 100
[R2-bgp]peer 1.1.1.1 connect-interface LoopBack 0
[R2-bgp]peer 23.0.0.2 as-number 200
[R2-bgp]import-route ospf 1
[R2-bgp]peer 5.5.5.5 next-hop-local 
[R2-bgp]network 23.0.0.0 30
R3
[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]ip a 23.0.0.2 30
[R3-GigabitEthernet0/0/0]int loopback 0
[R3-LoopBack0]ip a 3.3.3.3 32
[R3]rip 1
[R3-rip-1]version 2
[R3-rip-1]network 3.0.0.0
[R3-rip-1]network 23.0.0.0
[R3]bgp 200
[R3-bgp]router-id 3.3.3.3
[R3-bgp]peer 23.0.0.1 as-number 100
[R3-bgp]network 3.3.3.3 32

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值