当前位置: 首页 > news >正文

HCIP回顾— BGP经典实验详解

HCIP回顾— BGP经典实验详解

实验组网

71b549455b4bb27c746979ae7639c002

实验目的

1.1.1.1/32(A企业)通过EBGP,IBGP(ISP)实现与5.5.5.5/32(B企业)的通信。

基础接口配置省略

路由器接口地址为10.0.xx.x/24,loopback0地址为x.x.x.x/32。如R1与R2的接口地址分别为10.0.12.1/24,10.0.12.2/24;loopback0地址分别为1.1.1.1/32,2.2.2.2/32。

R1和R2之间建立EBGP邻居(EBGP使用直连口,防止多跳)

R1配置:

bgp 100
router-id 1.1.1.1
peer 10.0.12.2 as-number 200

R2配置:

bgp 200
router-id 2.2.2.2
peer 10.0.12.1 as-number 100

e881500a975d0189444dd6acf64db12d

可以看到此时,R1与R2已建立EBGP关系,但是无法通信(如下)。

dbef5f808ff4bdc7b2eb0dcf91344b3a

需要手动传路由。

用bgp的network宣告路由,或者用路由注入加路由过滤,本实验用前者。

R1:

bgp 100
network 1.1.1.1 32
network 10.0.12.0 24

在R2查看BGP路由表:

36540e1343d5e99af5bcd412e759d827

*=有效;>=最优,但可以看到第二条路由无效。

继续查看IP路由表:

1f85e565654433db30988d49c3e6cc3a

发现在IP路由表的直连路由中也有10.0.12.0/24路由信息,说明在BGP宣告之前,直连路由已存在,所以就在BGP路由中无效。

此时检查连通性:

ee3310863b3ac3d3320bf0f7dd5ed264

6ce04ba20963cf9b569d6ca27943407b

R1pingR2不通,但R2pingR1通,这是为什么呢?

因为ping到出接口默认情况下为出接口的物理地址。

可以看到带了源地址2.2.2.2后,R2也同样不能ping通,所以需要在R2上宣告BGP本地网段。

R2:

bgp 200
net 2.2.2.2 32

此时可以互通。

R2与R4建立IBGP(IBGP使用逻辑口,防止链路单点故障)

为什么不R2,R3,R4同时建立BGP邻居关系呢?

因为为了防环,IBGP有水平分割原则:即从一个IBGP邻居收到的路由不能传给其他IBGP邻居。

BGP建立邻居的前提:路由可达。所以需要让R2与R4互通,此实验用OSPF,配置过程省略,查看OSPF邻居表。

057c7c495c274c2b19e27bd907503643

测试R2与R4连通性

aed8063bc9db250937f67bd49d410f43

开始IBGP配置

R2:

bgp 200
peer 4.4.4.4 as 200
peer 4.4.4.4 connect-interface lo0

R4:

bgp 200
peer 2.2.2.2 as 200
peer 2.2.2.2 con lo0

成功建立:

76648314a181e7e225153133a445d42f

但出现了下一条不可达,成为了无效路由,设置发送口的下一条为本地。

af00611dd9c74170ce2198f042143335

R2:

bgp 200
peer 4.4.4.4 next-hop-local

R4:

bgp 200
peer 2.2.2.2 next-hop-local

此时变成了有效路由,但下一条还是出现了路由迭代。

9431043cd245e7899a137367ae35d9d6

a0b281fafaf7cec6ca04f10deccc8109

查看转发表(FIB表),发现迭代以后的下一跳正常了。

9e92615b14d9c914b2af70288eb22abb

R4与R5之间启EBGP邻居(此处使用逻辑接口,模拟多跳)

用静态让路由可达,然后配置:

R4:

int lo1
ip add 44.4.4.4 32
q
bgp 200
pee 55.5.5.5 as 300
pee 55.5.5.5 con lo1

R5:

int lo1
ip add 55.5.5.5 32
pee 44.4.4.4 as 200
pee 44.4.4.4 con lo1

查看BGP邻居

76b47d6b8fc1909ae57b7051ec5a58df

无法启邻居,因为默认一跳,环回口需要两跳。

R4:pee 55.5.5.5 ebgp-max-hop 3

R5:pee 44.4.4.4 ebgp-max-hop 3

此时邻居起来了。

e8df619c582e8a0c33ad8c4b2f63f845

R5:network 5.5.5.5 32,宣告自己的路由。

R2:pee 4.4.4.4 next-hop-local

R4:pee 2.2.2.2 next-hop-local

此时产生了路由黑洞,R3没有1.1.1.1,5.5.5.5的路由。

R3是转发路由,R2,R4是控制层面。

解决黑洞路由的最优方法:MPLS

其他方法:

1)路由注入,会引起路由崩溃。

b9ce92f9ff3a11f7b06f65007a4b6af3

93b8a21d08166361829144dc5f9c8c1c

c5115d85a48d78c76ffe5e14ae4be15d

65fe74670feb3dd0e2a34194cc7a0261

2)IBGP全互通,太麻烦,(不做演示,无效路由注意下一跳)。

3)MPLS,后续会讲到。

配置如下:

mpls lsr—id x.x.x.x
mpls
mpls ldp
q
int gx/x/x
mpls
mpls ldp
q
route recursive-lookup tunnel

0ad146e237b65a8955c7c98d490e79ba

添加并宣告路由后还是可以ping通

754318ee534af947e28601a2f3fe3280

http://www.wxhsa.cn/company.asp?id=698

相关文章:

  • 逆波兰表达式求值+滑动窗口最大值
  • 84. 柱状图中最大的矩形
  • 前k个高频元素
  • 千靶日记-0002
  • [序列化/JSON/Java/Utils] JACKSON 概述
  • 完全弹性碰撞公式推导
  • reLeetCode 热题 100-2 字母异位词分组 扩展 - MKT
  • 第6篇、Kafka 高级实战:生产者路由与消费者管理
  • 3.4 页面替换算法 Page Replacement Algorithms
  • 学习心得
  • 反射对JVM的影响
  • reLeetCode 热题 100-2 字母异位词分组 - MKT
  • 分布式id
  • ipad装windows系统模拟器
  • [Java/SQL/Utils] SQL注释清除工具:SqlCommentStripper
  • 大模型面试题
  • CF2021D 题解 | dp
  • Caffeine缓存
  • Spark面试题清单
  • RocketMQ知识点梳理
  • Tekla坐标定位插件源码
  • 记录 使用PsExec启动System权限的WPF 程序
  • std::map的基本用法
  • 力扣20题 有效的括号
  • 2025年9月10日学习笔记之keil软件仿真调试
  • MySQL的explain使用
  • 力扣19题 删除链表的倒数第N个结点
  • 基于LZO的无损数据压缩IP,高性能压缩速率32Gbps,适用于FPGAASIC
  • IDEA创建文件时如何自动生成头部文档注释(简单、实用)
  • 一文带你吃透Power Platform,开启低代码开发新世界