HCIE Routing&Switching之MPLS静态LSP配置
前文我们了解了MPLS基础理论部分,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16928096.html;今天我们来聊一聊MPLS静态LSP配置相关话题;
为什么要静态配置LSP?
一般情况下,在MPLS网络中都使用标签分发协议来实现动态建立LSP,如使用LDP;但是使用动态标签分发协议来动态建立LSP,会存在动态标签分发协议故障,导致MPLS网络流量丢失;因此对于某些关键重要的业务,我们还是需要配置静态LSP来确保传输路径;所以静态LSP其实就是动态LSP的一个备份;当动态LSP故障,MPLS网络流量还可以走静态LSP;这个就类似我们的静态路由,当动态路由协议出现故障,如果有与之对应的静态路由,那么网络也是可以正常使用的;

提示:如果我们使用静态的方式配置LSP,那么我们需要提前规划好对应mpls网络路由器出入标签,以及出接口,下一条等信息;当然LSP也是双向的,它和路由信息类似,既要有去的LSP,也要有回来的LSP,对应网络才会正常通行;来去的LSP都需要我们管理员手动配置;
静态LSP的配置
实验:如下拓扑,配置静态LSP

R1的基础配置

sys
sys R1
dhcp en
int g0/0/0
ip add 192.168.100.254 24
dhcp sel int
int g0/0/1
ip add 12.0.0.1 24
ospf 1 router-id 1.1.1.1
area 0
net 12.0.0.1 0.0.0.0
net 192.168.100.254 0.0.0.0

R2的基础配置

sys
sys R2
int g0/0/0
ip add 12.0.0.2 24
int g0/0/1
ip add 23.0.0.2 24
ospf 1 router-id 2.2.2.2
area 0
net 12.0.0.2 0.0.0.0
net 23.0.0.2 0.0.0.0

R3的基础配置

sys
sys R3
dhcp en
int g0/0/0
ip add 23.0.0.3 24
int g0/0/1
ip add 172.16.100.254 24
dhcp sel int
q
ospf 1 router-id 3.3.3.3
area 0
net 23.0.0.3 0.0.0.0
net 172.16.100.254 0.0.0.0

验证三个路由器的ospf是否都工作正常?是否都学习到对方的网络?



提示:可以看到三台路由器两两都建立起ospf邻居,对应状态都处于full状态,并且都学习到了对方的宣告的网络;
验证:用pc拿地址,看看对应dhcp是否工作正常?


提示:可以看到两台pc都各自从对应的路由器拿到了对应的ip地址;
验证:pc1pingpc2是否能通?

提示:可以看到pc1能够正常ping通pc2,说明pc1到pc2的基础网络搭建就没有问题;接下来我们配置mpls网络
配置MPLS LSR的id

提示:LSR id是用来标识mpls路由器的,vrp没有缺省的LSR ID 必须手动配置;如果要修改LSR ID必须undo mpls但是这样会中断mpls业务,所以在配置mpls之前要提前规划好;其他两个路由器和上述配置一样;
全局开启mpls

提示:全局开启mpls必须要在配置LSR ID以后,否则MPLS开启不起来;其他两个路由器和上述配置一样;
配置入节点静态LSP
PC1--->R2方向的LSP

提示:上述命令表示,只要匹配目标地址是172.16.100.0/24的数据包,对应数据包都会从直连下一跳为12.0.0.2的接口发送出去(路由器会根据下一跳,自动计算出出接口),并打上100的标签;
配置R1---->PC1方向的LSP

提示:上述命令表示对应路由器从g0/0/1接口收到标签为100的数据,对应数据包都会将其标签剥离(没有出标签,对应数据包转发出去就会自动不打标签,随后根据ip路由规则进行转发);
配置中间节点静态LSP
R1--->R2方向

提示:中间路由器的角色都是transit,表示中转之意,即对应路由器只看标签来转发数据包;上述命令表示从g0/0/0进来的数据包,标签为100的数据包,会直接从和23.0.0.3直连的接口转发出去,并打上200的标签;
R2--->R1方向的LSP

提示:对应中间路由器来说,不管是从左至右还是从右至左的流量,对应角色还是transit;只有在边界路由器上,流量的方向对应路由器是ingress还是egress的区别;除此之外就是流量的出入口,标签的出入要搞清楚就可以了;
配置出节点静态LSP
R3-->PC2方向的LSP

提示:上述命令表示只要从g0/0/0接口收到的带有200标签的数据包,剥离其标签后进行转发;
PC2--->R3方向的LSP

提示:上述命令表示只要只要匹配去往192.168.100.0 24网络的数据包,经由直连下一跳为23.0.0.2的接口打上200的标签转发出去;
验证:查看LSP



提示:从三个路由器的静态LSP出入标签,出入接口都没有问题,就是对应的状态都为down;这是因为我们没有在对应的接口开启mpls功能,所以对应状态都为down;
在接口开启mpls功能

提示:可以看到在对应接口开启mpls功能以后,对应lsp的状态就为UP了;这里需要注意我只需要在mpls网络连接的接口开启mpls功能即可;对应面向客户端的接口不需要开启mpls功能;
测试:在R2接口上抓包,看看pc1和pc2的数据包是否封装了mpls包头?

提示:可以看到在R2的g0/0/0和g0/0/1接口上抓包,对应都有mpls包头的封装;说明pc1和pc2的通信都是走mpls,我们配置的静态lsp也生效了;
除了上述抓包的方法,我们也可以用ping和tracert命令来测试LSP,如下命令

提示:用这两个命令需要注意一点,我们需加上lsp子命令,表示显示lsp相关信息,其次后面的ip需要和本地lsp匹配(网络地址和掩码,或者主机地址和掩码,这个要看本地lsp是主机地址还是网络地址);
好了,到此静态lsp的配置案例就到此为止!!
HCIE Routing&Switching之MPLS静态LSP配置的更多相关文章
- django静态文件配置
开发环境配置 需要下面几个步骤 1. 在app目录下创建static目录,将静态文件和相关文件夹放到此目录下,如your_app/static/img等 2. 确保settings.py中的INSTA ...
- Cisco模拟器使用和静态路由配置
一. 模拟器使用 网络拓扑图 1. 模拟器搭建环境及网络结构 2. 使用ios系统加载并配置 3. 加载3745ios后计算pc值以减小cpu的消耗 4. 然后使用CTRL+]+i得到最大的一个值(如 ...
- 如何设置路由器实现静态IP配置
一.概述 嵌入式开发者,经常面对这样的环境:PC(windows)+虚拟机(linux)+开发板.我们希望三者都能相互通信,而且可以联网. 对于实验室只提供一根网线,而自己没有额外的增加端口数量的设备 ...
- apache静态文件配置
开发环境配置 需要下面几个步骤 1. 在app目录下创建static目录,将静态文件和相关文件夹放到此目录下,如your_app/static/img等 2. 确保settings.py中的INSTA ...
- Ubuntu系统下静态DNS配置详解
1.DNS服务的简介: DNS(Domain Name Server,域名服务器)是进行域名(domain name)和与之相对应的IP地址 (IP address)转换的服务器.DNS中保存了一张域 ...
- IP路由及静态路由配置
IP路由及静态路由配置 qianghaohao(CodingNutter) 链接来源:http://www.cnblogs.com/codingnutter/p/5654271.html 一.IP路由 ...
- Django(五)框架之模板继承和静态文件配置
https://www.cnblogs.com/haiyan123/p/7731959.html 一.模板继承 目的是:减少代码的冗余 语法: {% block classinfo %} {% end ...
- Django框架之模板继承和静态文件配置
一.模板继承 目的是:减少代码的冗余 语法: {% block classinfo %} {% endblock %} 具体步骤: 1.创建一个base.html文件,2.把要显示的页面的内容写在这里 ...
- Django框架----模板继承和静态文件配置
母板 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8& ...
- 55 Django静态文件配置
一.Django静态文件配置 1.项目文件夹,新建一个文件夹statics 文件夹 2.在配置文件settings.py中,配置: 文件中有第句: STATIC_URL = '/static/'#静态 ...
随机推荐
- Grafana Loki 学习之踩坑记
转发自:https://mp.weixin.qq.com/s/zfXNEkdDC9Vqd9lh1ptC1g Grafana 出品的 loki 日志框架完美地与 kubernetes 的 label 理 ...
- MySQL集群搭建(2)-主主从模式
1 环境准备 上次我们搭建了主备架构,如下所示 这次我们的搭建目标是 具体配置信息 IP 系统 端口 MySQL版本 节点 读写 说明 192.168.41.83 Centos6.8 3306 5.7 ...
- 使用ConfigMap配置您的应用程序
转载自:https://kuboard.cn/learning/k8s-intermediate/config/config-map.html ConfigMap 作为 Kubernetes API ...
- NSIS查找文本中是否包含某个字串
!include "textfunc.nsh"!include "logiclib.nsh"OutFile "find.exe"#文本文件a ...
- Netty 学习(五):服务端启动核心流程源码说明
Netty 学习(五):服务端启动核心流程源码说明 作者: Grey 原文地址: 博客园:Netty 学习(五):服务端启动核心流程源码说明 CSDN:Netty 学习(五):服务端启动核心流程源码说 ...
- 为Azure-云准备一个基于Red Hat 8.x 的虚拟机镜像
由于公司最近要求部分项目上线到Azure云上,要求操作系统使用的Redhat 8.x,而且必须加固 而在Azure官网提供的镜像中,又没有Redhat,于是只有自己自定义Redhat镜像,最后加固,作 ...
- Vue3 Vite3 状态管理 pinia 基本使用、持久化、在路由守卫中的使用
在<基于 vite 创建 vue3 项目>一文中整合了 pinia,有不少伙伴不知道 pinia 是什么,本文简单介绍 pinia.主要包括三方面: pinia 的基本用法,在<基于 ...
- RAID5 IO处理之replace代码详解
1 作用 从字面意思理解,replacement即是替换.我们知道硬盘都有一定的使用寿命,可以在硬盘失效之前通过该功能将就盘的数据迁移至新盘.因为replacement的流程是从旧盘中读出数据直接写入 ...
- NLP之基于Seq2Seq的单词翻译
Seq2Seq 目录 Seq2Seq 1.理论 1.1 基本概念 1.2 模型结构 1.2.1 Encoder 1.2.2 Decoder 1.3 特殊字符 2.实验 2.1 实验步骤 2.2 算法模 ...
- python导包
我们将完成特定功能的代码块放在一个.py结尾的文件中,这个文件被称为模块.在这个模块中可能包含变量,函数,类等等内容. 当我们从外部需要用到这个模块时,就需要将这个模块导入到我们当前环境.导入方式有以 ...