HCIE之MPLS练习(六)

MPLS练习

  • 一、静态LSP
    • 1、IGP构建FEC
    • 2、全网运行MPLS
    • 3、打通LSP通道
      • 3.1、静态LSP配置
      • 3.2、转发过程
      • 3.3、验证标签转发过程
    • 4、利用LSP传递任意流量
      • 4.1、配置
      • 4.2、验证
  • 二、LDP协议
    • 1、IGP构建FEC
    • 2、全网运行mpls、ldp
    • 3、mpls ldp邻居关系、LIB表
    • 4、转发过程
    • 5、验证mpls转发过程
    • 6、调整IGP路由标签分发
  • 三、MPLS解决BGP黑洞
    • 1、运行IGP
    • 2、运行BGP
      • 3、bgp黑洞现象
    • 4、 mpls解决bgp黑洞
    • 5、分析原因
    • 6、解决方法
    • 7、 验证连通性

一、静态LSP

在这里插入图片描述
需求:全网运行OSPF,全网运行mpls 静态标签分配
R1的环回口1.1.1.1去往R4的4.4.4.4构建一条LSP
R1,R4再各自起一个11.11.11.11和44.44.44.44的环回口,让这两个环回口互访也通过相同的LSP进行标签转发(R2,R3没有11.11.11.11和44.44.44.44的路由)

1、IGP构建FEC

R1和R4之间建立OSPF(配置忽略)
配置完成后,R1和R4环回口互ping
在这里插入图片描述

2、全网运行MPLS

R1
mpls lsr-id 1.1.1.1 //配置mpls lsr id
mpls //全局开启mpls功能
interface GigabitEthernet0/0/1
mpls //接口激活mpls(理解为具备接受发送mpls标签功能)

R2
mpls lsr-id 2.2.2.2
mpls
interface GigabitEthernet0/0/0
mpls
interface GigabitEthernet0/0/1
mpls
R3
mpls lsr-id 3.3.3.3
mpls
interface GigabitEthernet0/0/0
mpls
interface GigabitEthernet0/0/1
mpls

R4
mpls lsr-id 4.4.4.4
mpls
interface GigabitEthernet0/0/1
mpls

3、打通LSP通道

注:手动在R1、R2、R3、R4上为4.4.4.4这条路由依次配置静态标签,形成完整的LSP
前提:保证每台路由器上都拥有4.4.4.4这条路由

3.1、静态LSP配置

R1
static-lsp ingress r1-r4 destination 4.4.4.4 32 nexthop 12.1.1.2 out-label 102
注:为去往4.4.4.4的数据设置一个出向标签102 – 形成FIB

R2
static-lsp transit r1-r4 incoming-interface g0/0/1 in-label 102 nexthop 23.1.1.3 out-label 203
注:将收到的102标签的数据进行标签交换至203传出给23.1.1.3 – 形成LFIB

R3
static-lsp transit r1-r4 incoming-interface g0/0/0 in-label 203 nexthop 34.1.1.4 out-label 304
注:将收到的203标签的数据进行标签交换至304传出给34.1.1.4 – 形成LFIB

R4
static-lsp egress r1-r4 incoming-interface g0/0/1 in-label 304
注:将收到的304标签的数据进行标签弹出,然后继续查看FIB进行转发

3.2、转发过程

R1
查看R1的FIB表(因为是MPLS边界,所以收到去往4.4.4.4肯定是ip包,需要查FIB)
display fib
在这里插入图片描述
display fib 4.4.4.4 verbose
在这里插入图片描述
R2
display mpls static-lsp //查看R2的LFIB表
在这里插入图片描述
G0/0/1收到的102标签包,标签交换成203 从g0/0/0口传出
R3
display mpls static-lsp //查看R3的LFIB表
在这里插入图片描述
G0/0/0口收到的203标签数据包,标签交换成304,从g0/0/1口传出
R4
display mpls static-lsp //查看R4的LFIB表
在这里插入图片描述
G0/0/1接口收到的304 标签数据包,将标签弹出,再根据目的ip 4.4.4.4查看FIB表
display fib
在这里插入图片描述
FIB表得出4.4.4.4为直连loop0接口

3.3、验证标签转发过程

R1
tracert lsp ip 4.4.4.4 32
在这里插入图片描述
同一个FEC(ipv4路由条目),上游路由器的出标签 = 自己的入标签

4、利用LSP传递任意流量

4.1、配置

R4
interface LoopBack1
ip address 44.44.44.44 255.255.255.255 sub

R1
ip route-static 44.44.44.44 32 4.4.4.4
将流量引入之前4.4.4.4的LSP,告知R1去往44.44.44.44下一跳走4.4.4.4

4.2、验证

R1
在这里插入图片描述
分析:不通?为什么
因为R1、R2、R3没有去往44.44.44.44的路由,没路由就不能通么?- 不是,可以利用已经构建的LSP通道。
华为必须单独开启下一跳递归功能,不开启递归去往44.44.44.44没有单独配置静态标签,也没有路由,所以不通。
R1查看自己的FIB表
display fib 44.44.44.44
在这里插入图片描述
R1开启递归功能
route recursive-lookup tunnel
注:此条递归功能一旦开启,在R1上去往44.44.44.44的路由会根据之前配置的静态路由走4.4.4.4,再递归查找FIB下一跳4.4.4.4是否存在标签,如4.4.4.4有标签,就继承4.4.4.4的标签(其实就是继承4.4.4.4整条LSP)
R1查看FIB表
display fib在这里插入图片描述
R1测试去往44.44.44.44的连通性
在这里插入图片描述

二、LDP协议

在这里插入图片描述

需求:全网运行OSPF,mpls,实现R1 loopback口去往4.4.4.4走LDP标签mpls转发

1、IGP构建FEC

R1和R4之间建立OSPF(配置忽略)

2、全网运行mpls、ldp

R1
mpls lsr-id 1.1.1.1 //配置mpls lsr id
mpls //全局开启mpls功能
mpls ldp //全局开启mpls ldp功能
interface GigabitEthernet0/0/1
mpls //接口激活mpls(理解为具备接受发送mpls标签功能)
mpls ldp //接口激活mpls ldp功能

R2
mpls lsr-id 2.2.2.2
mpls
mpls ldp
interface GigabitEthernet0/0/0
mpls
mpls ldp
interface GigabitEthernet0/0/1
mpls
mpls ldp

R3
mpls lsr-id 3.3.3.3
mpls
interface GigabitEthernet0/0/0
mpls
mpls ldp
interface GigabitEthernet0/0/1
mpls
mpls ldp

R4
mpls lsr-id 4.4.4.4
mpls
mpls ldp
interface GigabitEthernet0/0/1
mpls
mpls ldp

3、mpls ldp邻居关系、LIB表

R2为例查看ldp邻居关系
display mpls ldp peer
在这里插入图片描述
R2为例查看ldp session
display mpls ldp session //状态必须是operational
在这里插入图片描述
注:display mpls ldp peer - 只是邻居发现结果
display mpls ldp session - Operational为邻居建立成功
display mpls ldp peer只是邻居发现,邻居发现是路由器使用自己出接口ip地址访问224.0.0.2进行发现。不是使用loopback接口互访进行的发现。
Display mpls ldp session才是使用ldp id(loopback)作为源目的访问成功的结果。
所以如果出现peer有邻居,session不正常,很有可能是loopback口不可达

R1为例查看LIB表
display mpls ldp lsp 在这里插入图片描述
R1为例查看LFIB表
display mpls lsp
在这里插入图片描述
分析:为什么去往同一个4.4.4.4/32有两条?
上面那条是给R1本地产生数据做标签压入使用
下面那条是给穿越R1的流量做标签交换使用

4、转发过程

分析从R1 去往R4的4.4.4.4的转发过程(R1自己产生的数据)
R1
display mpls lsp
在这里插入图片描述
R1自己产生的数据,会打上1027的标签从G0/0/1传出

R2
display mpls lsp
在这里插入图片描述
R2收到R1发送的1027标签包,将标签交换至1027从g0/0/0传出

R3
display mpls lsp
在这里插入图片描述
R3收到R2发送的1027标签包,查看LFIB,由于收到下游设备的标签是3,3代表隐式空标签,做标签弹出,还原成ip包将数据从g0/0/1口传出
R4
display fib 4.4.4.4在这里插入图片描述
R4收到ip包,查看FIB表,根据出接口发送到达loop0

5、验证mpls转发过程

R1为例访问4.4.4.4
tracert lsp -a 1.1.1.1 ip 4.4.4.4 32
在这里插入图片描述

6、调整IGP路由标签分发

默认情况下,华为设备配置LDP,LDP只为32位主机路由分配标签
验证:R4上起一个新的24位loopback口,激活进OSPF
R4
interface LoopBack1
ip address 44.44.44.44 255.255.255.0

R4查看本地LIB表 – 发现R4本没有为自己24为路由分配标签,只分配了32位的
在这里插入图片描述
R1查看LIB:发现没有去往44.44.44.0/24的标签
在这里插入图片描述
更改R4标签分发方式,为所有IGP路由分标签
mpls
lsp-trigger all //为所有IGP路由分配标签

查看R4的LIB表项
display mpls ldp lsp
在这里插入图片描述

三、MPLS解决BGP黑洞

在这里插入图片描述
需求:R1、R2、R3、 R4运行isis、mpls ldp
R1、R4、R6、R7运行bgp
R6 、R7的loopback接口可以互访

1、运行IGP

R1和R4之间建立OSPF(配置忽略)

2、运行BGP

R1
bgp 100
peer 4.1.1.1 as-number 100
peer 4.1.1.1 connect-interface LoopBack0
peer 4.4.4.4 next-hop-local
peer 16.1.1.6 as-number 6

R4
bgp 100
peer 1.1.1.1 as-number 100
peer 1.1.1.1 connect-interface LoopBack0
peer 47.1.1.7 as-number 7
peer 1.1.1.1 enable
peer 1.1.1.1 next-hop-local

R6
bgp 6
peer 16.1.1.1 as-number 100
network 6.1.1.1 32

R7
bgp 7
peer 47.1.1.4 as-number 100
network 7.1.1.1 32
R1、R4查看邻居关系
在这里插入图片描述
在这里插入图片描述

3、bgp黑洞现象

R6、R7查看彼此bgp路由
在这里插入图片描述
在这里插入图片描述
R6尝试以6.1.1.1为源访问7.1.1.1
在这里插入图片描述
为什么不通?因为R2,R3为bgp黑洞,根本原因是因为R2,R3没有运行bgp,所以无法收到去往6.1.1.1和7.1.1.1的bgp路由,而AS 100内部传递的是普通ip包,需要查路由表,没有路由就直接丢包

4、 mpls解决bgp黑洞

R1、R2、R3、R4运行mpls ldp

R2、R3查看ldp邻居
display mpls ldp session
在这里插入图片描述
在这里插入图片描述
R6访问R7 loop0口
在这里插入图片描述
为什么不通。分析查找原因

5、分析原因

R6去往R7的loop口

查看R6路由表(FIB表):有路由可以转发在这里插入图片描述

R1收到ip包,查看FIB表
在这里插入图片描述
发现R1是mpls边界,但是去往7.1.1.1的bgp路由没有打标签,tunnel为0
分析原因: mpls ldp不会为R1路由表里的去往7.1.1.1的BGP路由分标签(BGP路由不分标签),所以当R1收到去往7.1.1.1的路由会根据FIB表将包给R2,R2路由黑洞丢包

6、解决方法

在R1、R4(回包给6.1.1.1)这两个MPLS边界路由器开启递归功能,让R1在去往7.1.1.1的时候走BGP路由下一跳地址(4.1.1.1)的标签,因为4.1.1.1属于IGP路由,已经提前构建好了LSP,实现R1去往7.1.1.1走4.1.1.1的LSP进行标签转发
R1
route recursive-lookup tunnel //开启BGP递归
注:开启此命令后,R1上的所有bgp路由,在查找FIB表转发时,都走的是BGP路由下一跳的LSP在这里插入图片描述
在这里插入图片描述
R4
route recursive-lookup tunnel //开启BGP递归

在这里插入图片描述

7、 验证连通性

Ping -a 6.1.1.1 7.1.1.1
在这里插入图片描述
解析:
1:LDP默认不会(可改)为BGP的路由分配label
2:不分label不代表BGP的路由无label可用。
3:BGP的路由会继承使用下一跳的标签。(BGP下一跳就是邻居的loopback口。),但是此功能需要单独开启,默认不开启,就不会对bgp路由递归下一跳的标签。
4:下一跳的标签的LSP通道依靠IGP+LDP形成。

总结:
1:只能用loopback 0建立LDP邻居,否则会提前弹出标签(因为倒数第二跳就向前发隐式空标签)。
2:华为设备默认只为32位路由分标签。

用直连建立BGP邻居会有什么问题?
R1--------R2-------R3-------R4
1:建立邻居的IP地址,就是将来学到的BGP路由的下一跳地址。
2:BGP路由下一跳地址,就是数据层面LSP通道所使用的FEC。
3:此FEC标签分配:
a. R2上34网段是由R3分配的
b. R3分配的是3
c. R2就会执行次末跳弹出。 - 提前弹出没有bgp路由丢包

只要是BGP的路由,都要打上此路由下一跳的LABEL

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/724410.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从嵌入式Linux到嵌入式Android

最近开始投入Android的怀抱。说来惭愧,08年就听说这东西,当时也有同事投入去看,因为恶心Java,始终对这玩意无感,没想到现在不会这个嵌入式都快要没法搞了。为了不中年失业,所以只能回过头又来学。 首先还是…

leetcode——异或运算—— 只出现一次的数字

给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。 示例 1 : 输入&#xff…

Python(NetOps)前传-网络设备开局配置

背景 我们知道用Python在cli配置网络设备的前提是: 网络设备与Python主机网络可达网络设备已开启并完成ssh相关配置 目标 本文已华为S5720S-52P-LI-AC交换机为例,完成: 完成网络设备开局配置;用Python脚本验证ssh登录 配置 …

系统认识数据分析

数据分析的全貌 包括应用、观测和实验 观测 分为两部分观察和测量 观察 采集数据: 解析系统日志 : 产生日志、解析日志、得到数据 埋点获取新数据 :日志记录新信息、解析日志、得到新数据 通过传感器收集:例如天气数据收集 爬虫&…

Android工程师必备知识,2024Android面试

前言 职场的金九银十跳槽季火热进行中,不同的是,今年的竞争比往年会更加激烈一些,形式更加严峻一些。 对于求职者来说,面试是一道坎,很多人会恐惧面试,即使是工作很多年的老鸟,也可能存在面试…

STM32控制气泵和电磁阀实现

一、功能简介 使用STM32控制气泵和电磁阀的开和关,气泵和电磁阀的供电电压为12V。 二、实现过程 1、气泵和电磁阀的开和关均为开关量,实现控制方法有多种,比如继电器,但是继电器动作有噪声且体积较大,更好的方法为使…

Sqli-labs靶场第19关详解[Sqli-labs-less-19]自动化注入-SQLmap工具注入

Sqli-labs-Less-19 通过测试发现,在登录界面没有注入点,通过已知账号密码admin,admin进行登录发现: 返回了Referer ,设想如果在Referer 尝试加上注入语句(报错注入),测试是否会执行…

论文阅读笔记 | Limited-Reference Image Quality Assessment: Paradigms and Discussions

文章目录 文章题目发表年限期刊/会议名称动机主要思想或方法架构实验结果 文章链接:https://dl.acm.org/doi/10.1145/3581783.3613436 文章题目 Limited-Reference Image Quality Assessment: Paradigms and Discussions 发表年限 2023 期刊/会议名称 MM’23: …

1688商品详情数据(商品属性,价格,sku等)1688API接口开发系列

1688(阿里巴巴批发网)提供了API接口供开发者使用,以便能够获取商品详情数据,包括商品属性、价格、SKU等信息。在使用1688的API接口之前,你需要完成以下几个步骤: 请求文档,API接口接入Anzexi58…

java网络编程 01 IP,端口,域名,TCP/UDP, InetAddress

01.IP 要想让网络中的计算机能够互相通信,必须为计算机指定一个标识号,通过这个标识号来指定要接受数据的计算机和识别发送的计算机,而IP地址就是这个标识号,也就是设备的标识。 ip地址组成: ip地址分类:…

Jacob使用教程--通过宏来寻找变量名

说明: 这里做个随比,参考资料请见前面的系列文章 问题展示: 对于一个操作,当我们不知道怎么利用jacob写代码时,而且网上也找不到,可以按照如下操作: 比如,我们要删除 word中的文本框 我们根本不知道文本框,这个变量叫什么,在Microsoft文档哪个父目录下面, 可以通过…

配置与管理防火墙

配置与管理防火墙 1,概念:设置在不同网络或网络安全域之间的一系列部件的组合。 2,功能:保护内网中易手攻击的服务;控制内外网之间网络系统的访问;隐藏内网的IP地址及结构的细节,提高网络保护…

VSCode 隐藏侧边栏文件或文件夹

开发时有些文件根部就会动,可能是运行的环境或者缓存,可能是其他的文件。 但是又不能删除,影响开发的观感,那么怎么在侧边栏栏隐藏文件呢 搜索的时候想要加快速度,怎么屏蔽某些文件呢 隐藏侧栏显示文件或屏蔽搜索范围…

每周一练--[NewStarCTF 2023 公开赛道]Final

很明显又是ThinkPHP的漏洞,上周还做过类似的。 先看看是哪一个版本的。 得到版号后,去找找payload。 (post)public/index.php?scaptcha (data) _method__construct&filter[]system&methodget&server[REQUEST_METHOD]ls -al 这其…

静态住宅代理IP使用指南,你需要测试的5件事

静态住宅代理IP,是一种在网络通信过程中提供固定IP地址的代理服务。与动态代理IP相比,静态代理IP提供的是持久且不变的IP地址。这种稳定性使得静态代理IP在需要长期稳定网络身份的场景中,如跨境电商/社媒养号、网络监控、品牌保护、长期数据爬…

java常用数据结构面试题,docker教程学习

前言 JVM对实际简单开发的来说关联的还是不多,一般工作个一两年(当然不包括爱学习的及专门做性能优化的什么的),很少有人能很好的去学习及理解什么是JVM,以及弄清楚JVM的工作原理,其实我个人认为这块还是非…

Java+SpringBoot,打造社区疫情信息新生态

✍✍计算机编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java实战 |…

真空展|2024上海国际真空技术及设备展览会

2024上海国际真空技术及设备展览会 2024 Shanghai International Exhibition of vacuum technology and equipment 时 间:2024年7月13-15日 地 点:上海新国际博览中心 承办单位:上海昶文展览服务有限公司 展会简…

Pytorch 复习总结 6

Pytorch 复习总结,仅供笔者使用,参考教材: 《动手学深度学习》Stanford University: Practical Machine Learning 本文主要内容为:Pytorch 计算机视觉。 本文先介绍了计算机视觉中两种常见的改进模型泛化性能的方法&#xff1a…

关于 selinux 规则

1. 查看selinux状态 SELinux的状态: enforcing:强制,每个受限的进程都必然受限 permissive:允许,每个受限的进程违规操作不会被禁止,但会被记录于审计日志 disabled:禁用 相关命令&#xf…