<>一、BGP概述
* 边界网关协议
* 外部路由协议
* 距离矢量路由协议
* IGP:运行于AS内部
* EGP:运行于AS之间
<>二、BGP特点
*
BGP控制路由的传播和选择最佳路由。
*
BGP 使用 TCP 作为其传输层协议,端口号 179 。
*
BGP 是一种路径矢量路由协议,它采用到达目的地址所经过的 AS 列表来衡量到达目的地址的距离。
*
BGP 支持 CIDR(无类域间路由)。
*
路由更新时,BGP 只发送更新的路由,大大减少了 BGP 传播路由所占用的带宽,适用于在 Internet 上传播大量的路由信息。
*
BGP 路由通过携带 AS 路径信息彻底解决路由环路问题。
*
BGP 提供了丰富的路由策略,能够对路由实现灵活的过滤和选择。
*
BGP 易于扩展,能够适应网络新的发展。
<>三、BGP发言者与对等体
1、BGP发言者
运行 BGP 协议的路由器称为 BGP 发言者。BGP 发言者接收或产生路由信息,并将路由信息发布给其它 BGP 发言者。
2、BGP对等体
相互之间存在 TCP 连接、相互交换路由信息的 BGP 发言者互为 BGP 对等体。
根据对等体所在的 AS,对等体分为以下两种:
* IBGP 对等体:对等体与本地路由器位于同一 AS。
* EBGP 对等体:对等体与本地路由器位于不同 AS。
<>四、BGP路由注入
* 纯动态注入:将IGP发现的路由全部注入。
* 半动态注入:有选择的注入IGP发现的路由。
* 静态注入:注入静态配置的路由。
一般两种方式:
* Import方式:按协议类型,将RIP路由、OSPF路由等协议的路由引入到BGP路由表中。Import方式还可以引入静态路由和直连路由。
* Network方式:逐条将IP路由表中已经存在的路由引入到BGP路由表中,比Import方式更精确。
<>五、BGP报文种类
* Open:通过TCP建立BGP连接时。
* KeepAlive:连接建立后。
* Update:稳定后。
* Notification:发现错误时。
<>六、BGP状态机
* Idle状态
* Connect状态
* Active状态
* OpenSent状态
* OpenConfirm状态
* Established状态
<>七、BGP属性
* Origin属性
* AS-PATH属性
* Next-Hop属性
* Local-Pref属性
* MED属性
<>八、实验拓扑
AS 100内部采用RIP协议,AS 200内部采取OSPF协议,AS之间采用BGP协议。
<>九、实验配置
1、首先配置路由器接口IP
R1:
<Huawei>sys Enter system view, return user view with Ctrl+Z. [Huawei]un in en
Info: Information center is disabled. [Huawei]int e0/0/0
[Huawei-Ethernet0/0/0]ip add 11.1.1.1 24 [Huawei-Ethernet0/0/0]q [Huawei]int
e0/0/1 [Huawei-Ethernet0/0/1]ip add 10.1.1.1 24 [Huawei-Ethernet0/0/1]q
其他路由器均这样配置。
2、配置AS内部动态路由协议
AS 100:
R1:
[Huawei]rip [Huawei-rip-1]network 10.0.0.0 [Huawei-rip-1]network 11.0.0.0
[Huawei-rip-1]q
R2:
[Huawei]rip [Huawei-rip-1]network 13.0.0.0 [Huawei-rip-1]network 11.0.0.0
[Huawei-rip-1]q
AS 200:
R3:
[Huawei]ospf 1 [Huawei-ospf-1]area 0 [Huawei-ospf-1-area-0.0.0.0]network
10.1.1.0 0.0.0.255 [Huawei-ospf-1-area-0.0.0.0]network 20.1.1.0 0.0.0.255
[Huawei-ospf-1-area-0.0.0.0]network 21.1.1.0 0.0.0.255
[Huawei-ospf-1-area-0.0.0.0]q [Huawei-ospf-1]q
R4:
[Huawei]ospf 1 [Huawei-ospf-1]area 0 [Huawei-ospf-1-area-0.0.0.0]network
20.1.1.0 0.0.0.255 [Huawei-ospf-1-area-0.0.0.0]network 22.1.1.0 0.0.0.255
[Huawei-ospf-1-area-0.0.0.0]q [Huawei-ospf-1]q [Huawei]q
R5:
[Huawei]ospf 1 [Huawei-ospf-1]area 0 [Huawei-ospf-1-area-0.0.0.0]network
21.1.1.0 0.0.0.255 [Huawei-ospf-1-area-0.0.0.0]network 22.1.1.0 0.0.0.255
[Huawei-ospf-1-area-0.0.0.0]network 23.1.1.0 0.0.0.255
[Huawei-ospf-1-area-0.0.0.0]q [Huawei-ospf-1]q [Huawei]q
3、配置BGP协议
R1:
[Huawei]bgp 100 [Huawei-bgp]peer 10.1.1.2 as-number 200
R3:
[Huawei]bgp 200 [Huawei-bgp]peer 10.1.1.1 as-number 100
其余路由器类似。
4、BGP路由注入
R1:
[Huawei]bgp 100 [Huawei-bgp]import-route direct [Huawei-bgp]import-route rip 1
[Huawei-bgp]q
R6:
[Huawei]bgp 300 [Huawei-bgp]peer 23.1.1.1 as-number 200 [Huawei-bgp]network
24.1.1.10 24 [Huawei-bgp]q
* 在AS 100和AS 200中的设备均使用import方式引入路由。
* AS 300中的设备采取network方式引入路由。
5、BGP同步
R1:
[Huawei]rip [Huawei-rip-1]import-route bgp [Huawei-rip-1]q [Huawei]q
R3:
[Huawei]ospf 1 [Huawei-ospf-1]import-route bgp [Huawei-ospf-1]q [Huawei]q
其余路由器类似。
6、Next-Hop属性配置
R1:
[Huawei]bgp 100 [Huawei-bgp]peer 10.1.1.2 next-hop-local
//要将BGP路由发送给10.1.1.2这个邻居时,将路由的下一跳设置成自己的地址,这个地址是与10.1.1.2建立邻居所使用的源地址。
[Huawei-bgp]q [Huawei]q
7、配置路由聚合
R1:
<Huawei>sys Enter system view, return user view with Ctrl+Z. [Huawei]int loo1
[Huawei-LoopBack1]ip add 14.1.1.10 24 [Huawei-LoopBack1]q [Huawei]int loop2
[Huawei-LoopBack2]ip add 14.1.2.10 24 [Huawei-LoopBack2]q [Huawei]int loop3
[Huawei-LoopBack3]ip add 14.1.3.10 24 [Huawei-LoopBack3]q [Huawei]q
R1:
[Huawei]bgp 100 [Huawei-bgp]aggregate 14.1.0.0 255.255.255.0 [Huawei-bgp]q
[Huawei]q
8、增添链路
9、配置Local-Pref属性
目的: 让R1去往R6的路由走R3,不走R4
R3:
<Huawei>sys Enter system view, return user view with Ctrl+Z.
[Huawei]route-policy lop permit node 10 Info: New Sequence of this List.
[Huawei-route-policy]apply local-preference 222 [Huawei-route-policy]q
[Huawei]bgp 200 [Huawei-bgp]peer 10.1.1.1 route-policy lop export [Huawei-bgp]q
[Huawei]q <Huawei>sys Enter system view, return user view with Ctrl+Z.
[Huawei]q <Huawei>reset bgp all
10、配置MED属性
R4:
<Huawei>sys Enter system view, return user view with Ctrl+Z.
[Huawei]route-policy med permit node 10 Info: New Sequence of this List.
[Huawei-route-policy]apply cost + 500 [Huawei-route-policy]q [Huawei]bgp 200
[Huawei-bgp]peer 25.1.1.1 route-policy med export [Huawei-bgp]q [Huawei]q
查看配置后R1的路由表:
<>十、实验测试
以R3为测试用例:
查看R3的邻居状态:
此时可以看见邻居的状态。
查看R3的BGP路由表:
没配路由聚合前的路由表:
配置路由聚合后的路由表:
该路由表中包含所有子网。
查看R1的BGP路由表:
从R2 ping R6:
实验成功!
<>十一、实验报文捕获
1、BGP报文
2、OSPF报文
<>十二、实验总结
在本次实验中,我学习到了BGP的相关知识,并将其运用到了实验中。配置了BGP的基本实验,配置了路由聚合、下一跳属性、优先级属性、MED属性、BGP同步等内容,但我现在所呈现出的这些知识是远远不足以真正去掌握BGP协议的。希望在下一次实验中,我会学习到更多内容!