文章目录
- 前言
- 一、BGP是什么?
- 二、BGP概述
- 1.路径矢量特征
- 2.特点
- 3.协议特征
- 4.报文类型
- 5.状态机
- 6.路由通告原则
- 实验
前言
随着网络的不断发展,动态路由协议也越来越重要,很多人都开启了学习,本文就介绍了BGP的基础内容。
一、BGP是什么?
BGP是边界网关协议,是一种实现自治系统AS之间的路由可达,并选择最佳路由的矢量性协议
二、BGP概述
1.路径矢量特征
BGP通常被称为路径矢量路由协议
每条BGP路由都携带着多种路径属性
BGP路由器不接受AS_Path中包含其自身AS号的路由更新
2.特点
BGP能够承载大批量的路由信息,能够支撑大规模网络
BGP提供了丰富的路由策略,能够灵活的进行路由选路,并能指导邻居按策略发布路由
BGP能够支撑MPLS/VPN的应用,传递客户VPN路由
BGP提供了路由聚合和衰减功能用于防止路由振荡,有效提高了网络的稳定性
BGP使用了TCP作为其传输层协议(端口号179),提高了网络的可靠性
3.协议特征
运行BGP的路由器被称为BGP发言者,或BGP路由器
两个建立BGP会话的路由器互为对等体。BGP对等体之间交换BGP路由表
BGP路由器只发送增量的BGP路由更新,或进行触发更新(不会周期性更新)
BGP能够承载大批量的路由前缀,用于大规模的网络中
4.报文类型
报文名称 | 作用是什么 | 什么时候发包 |
OPEN | 协商BGP邻居的各项参数,建议邻居关系 | BGP对等体之间需先建立TCP连接,如果TCP连接成功,那么BGP向对等体发送OPEN报文 |
UPDATE | 用于发送BGP路由信息 | 连接建立后,有路由需要发送或路由变化时,发送UPDATE通告对端路由信息 |
NOTIFICATION | 报告错误,中止对等体关系 | 当BGP在运行中发现错误时,要发送NOTIFICATION报文通告BGP对端 |
KEEPALIVE | 维持BGP对等体关系 | 定时发送KEEPALIVE报文以保持BGP对等体关系的有效性 |
ROUTE-REFRESH | 用于在改变路由策略后请求对等体重新发送路由信息。只有支持路由刷新能力的BGP设备会发送和响应此报文 | 当路由策略发生变化时,触发请求对等体重新通告路由 |
5.状态机
Peer状态名称 | 发什么包 | 在做什么 |
IDLE | 尝试建立TCP连接 | 开始准备TCP的连接并监视远程peer启动TCP连接,启用BGP时,要准备足够的资源 |
CONNECT | 发TCP包 | 正在进行TCP连接,等待完成中,认证都是TCP建立期间完成的。如果TCP连接建立失败则进入ACTIVE状态,反复尝试连接 |
ACTIVE | 发TCP包 | TCP连接没建立成功,反复尝试TCP连接 |
OPENSENT | 发OPEN包 | TCP连接建立已经成功,开始发送OPEN包,OPEN包携带参数协商对等体的建立 |
OPENCONFIRM | 发KEEPALIVE包 | 参数、能力特性协商成功,自己发送KEEPALIVE包,等待对方的KEEPALIVE包 |
ESTABLISHED | 发UPDATE包 | 已经收到对方的KEEPALIVE包,双方能力特性经协商发现一致,开始使用UPDATE通告;i有信息 |
6.路由通告原则
当存在多条路径时,路由器只选取最优的BGP路由来使用(没有激活负载均衡的情况下)
BGP只把自己使用的路由,也就是自己认为最优的路由传递给对等体
路由器从EBGP对等体获得的路由会传递给它所有的BGP对等体(包括EBGP和IBGP对等体)
路由器从IBGP对等体获得的路由不会传递给它的IBGP对等体(存在反射器RR的情况除外)
路由器从IBGP对等体获得的路由是否通告给它的EBGP对等体要视IGP和BGP同步的情况来决定
实验
BGP+OSPF+RIP
实验要求:1) 所有路由器都开启BGP协议,R1、R2、R5为IBGP as100,
R3和R2为EBGP,R3属于as200
2) R1、R2、R5配置ospf协议,属于area 0
3) R5有两个业务网段:202.0.0.1/24和202.0.1.1/24
4) R3可以访问R5业务网段
(1)R1配置
<R1>dis cu
[V200R003C00]
#
sysname R1
ne China-Standard-Time minus 08:00:00
#
interface GigabitEthernet0/0/0
ip address 15.0.0.1 255.255.255.252
#
interface GigabitEthernet0/0/1
ip address 12.0.0.1 255.255.255.252
#
interface GigabitEthernet0/0/2
#
interface NULL0
#
interface LoopBack0
ip address 1.1.1.1 255.255.255.255
#
bgp 100
router-id 1.1.1.1
peer 2.2.2.2 as-number 100
peer 2.2.2.2 connect-interface LoopBack0
peer 5.5.5.5 as-number 100
peer 5.5.5.5 connect-interface LoopBack0
#
ipv4-family unicast
undo synchronization
peer 2.2.2.2 enable
peer 5.5.5.5 enable
#
ospf 1 router-id 1.1.1.1
area 0.0.0.0
network 1.1.1.1 0.0.0.0
network 12.0.0.0 0.0.0.255
network 15.0.0.0 0.0.0.255
#
#
wlan ac
#
return
<R1>
(2)R2配置
<R2>dis cu
[V200R003C00]
#
sysname R2
#
interface GigabitEthernet0/0/0
ip address 12.0.0.2 255.255.255.252
#
interface GigabitEthernet0/0/1
ip address 23.0.0.1 255.255.255.252
#
interface GigabitEthernet0/0/2
#
interface NULL0
#
interface LoopBack0
ip address 2.2.2.2 255.255.255.255
#
bgp 100
router-id 2.2.2.2
peer 1.1.1.1 as-number 100
peer 1.1.1.1 connect-interface LoopBack0
peer 5.5.5.5 as-number 100
peer 5.5.5.5 connect-interface LoopBack0
peer 23.0.0.2 as-number 200
#
ipv4-family unicast
undo synchronization
network 23.0.0.0 255.255.255.252
import-route ospf 1
peer 1.1.1.1 enable
peer 5.5.5.5 enable
peer 23.0.0.2 enable
#
ospf 1 router-id 2.2.2.2
area 0.0.0.0
network 2.2.2.2 0.0.0.0
network 12.0.0.0 0.0.0.255
#
rip 1
version 2
network 23.0.0.0
#
return
<R2>
(3)R3配置
<R3>dis cu
[V200R003C00]
#
sysname R3
#
interface GigabitEthernet0/0/0
ip address 23.0.0.2 255.255.255.252
#
interface LoopBack0
ip address 3.3.3.3 255.255.255.255
#
bgp 200
router-id 3.3.3.3
peer 23.0.0.1 as-number 100
#
ipv4-family unicast
undo synchronization
network 3.3.3.3 255.255.255.255
peer 23.0.0.1 enable
#
rip 1
version 2
network 23.0.0.0
network 3.0.0.0
#
wlan ac
#
return
<R3>
(4)R5配置
<R5>dis cu
[V200R003C00]
#
sysname R5
#
interface GigabitEthernet0/0/0
ip address 15.0.0.2 255.255.255.252
#
interface GigabitEthernet0/0/1
#
interface GigabitEthernet0/0/2
#
interface NULL0
#
interface LoopBack0
ip address 5.5.5.5 255.255.255.255
#
interface LoopBack1
ip address 202.0.0.1 255.255.255.0
#
interface LoopBack2
ip address 202.0.1.1 255.255.255.0
#
bgp 100
router-id 5.5.5.5
peer 1.1.1.1 as-number 100
peer 1.1.1.1 connect-interface LoopBack0
peer 2.2.2.2 as-number 100
peer 2.2.2.2 connect-interface LoopBack0
#
ipv4-family unicast
undo synchronization
network 202.0.0.0
network 202.0.1.0
peer 1.1.1.1 enable
peer 2.2.2.2 enable
#
ospf 1 router-id 5.5.5.5
area 0.0.0.0
network 5.5.5.5 0.0.0.0
network 15.0.0.0 0.0.0.255
#
#
wlan ac
#
return
<R5>
(5)检验