前文我们了解了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配置的更多相关文章

  1. django静态文件配置

    开发环境配置 需要下面几个步骤 1. 在app目录下创建static目录,将静态文件和相关文件夹放到此目录下,如your_app/static/img等 2. 确保settings.py中的INSTA ...

  2. Cisco模拟器使用和静态路由配置

    一. 模拟器使用 网络拓扑图 1. 模拟器搭建环境及网络结构 2. 使用ios系统加载并配置 3. 加载3745ios后计算pc值以减小cpu的消耗 4. 然后使用CTRL+]+i得到最大的一个值(如 ...

  3. 如何设置路由器实现静态IP配置

    一.概述 嵌入式开发者,经常面对这样的环境:PC(windows)+虚拟机(linux)+开发板.我们希望三者都能相互通信,而且可以联网. 对于实验室只提供一根网线,而自己没有额外的增加端口数量的设备 ...

  4. apache静态文件配置

    开发环境配置 需要下面几个步骤 1. 在app目录下创建static目录,将静态文件和相关文件夹放到此目录下,如your_app/static/img等 2. 确保settings.py中的INSTA ...

  5. Ubuntu系统下静态DNS配置详解

    1.DNS服务的简介: DNS(Domain Name Server,域名服务器)是进行域名(domain name)和与之相对应的IP地址 (IP address)转换的服务器.DNS中保存了一张域 ...

  6. IP路由及静态路由配置

    IP路由及静态路由配置 qianghaohao(CodingNutter) 链接来源:http://www.cnblogs.com/codingnutter/p/5654271.html 一.IP路由 ...

  7. Django(五)框架之模板继承和静态文件配置

    https://www.cnblogs.com/haiyan123/p/7731959.html 一.模板继承 目的是:减少代码的冗余 语法: {% block classinfo %} {% end ...

  8. Django框架之模板继承和静态文件配置

    一.模板继承 目的是:减少代码的冗余 语法: {% block classinfo %} {% endblock %} 具体步骤: 1.创建一个base.html文件,2.把要显示的页面的内容写在这里 ...

  9. Django框架----模板继承和静态文件配置

    母板 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8& ...

  10. 55 Django静态文件配置

    一.Django静态文件配置 1.项目文件夹,新建一个文件夹statics 文件夹 2.在配置文件settings.py中,配置: 文件中有第句: STATIC_URL = '/static/'#静态 ...

随机推荐

  1. Kubernetes DevOps: Tekton

    Tekton 是一款功能非常强大而灵活的 CI/CD 开源的云原生框架.Tekton 的前身是 Knative 项目的 build-pipeline 项目,这个项目是为了给 build 模块增加 pi ...

  2. 安装MySQL8 工具集

    下载地址:https://downloads.mysql.com/archives/utilities/ # wget https://downloads.mysql.com/archives/get ...

  3. 8.第七篇 验证kube-apiserver及kubeconfig配置详解

    文章转载自:https://mp.weixin.qq.com/s?__biz=MzI1MDgwNzQ1MQ==&mid=2247483818&idx=1&sn=7572b791 ...

  4. Elastic:使用Postman来访问需要账号密码的Elastic Stack

  5. Deployment控制器(pod)更新策略

    最小就绪时间: 配置时,用户可以使用Deplpoyment控制器的spec.minReadySeconds属性来控制应用升级的速度.新旧更替过程中,新创建的Pod对象一旦成功响应就绪探测即被视作可用, ...

  6. LINUX 新增的磁盘不建立分区,直接建立文件系统并挂载

    假设新硬盘是 /dev/sdc fdisk操作的是/dev/sdc ,分区后才会有/dev/sdc1 /dev/sdc2 之类 一般mkfs.ext4 /dev/sdc1 来格式化一个分区,再moun ...

  7. redis cluster 6.2集群

    redis最新版本:redis-6.2.1.tar.gz 安装的版本是redis-6.0.3 采用的主机: djz-server-001 192.168.2.163 7001,7002,Admin@1 ...

  8. 在Kuboard上安装 Ingress Controller

    快速安装 # 只在 master 节点执行 kubectl apply -f https://kuboard.cn/install-script/v1.18.x/nginx-ingress.yaml ...

  9. slf4j、log4j2及logback使用

    slf4j.log4j2及logback使用 1.问题来源 之前看过关于slf4j.log4j2及logback的介绍,slf4j是门面,log4j2及logback是具体实现,仅使用slf4j门面是 ...

  10. day03-MySQL基础知识02

    MySQL基础知识02 4.CRUD 数据库CRUD语句:增(create).删(delete).改(update).查(Retrieve) Insert 语句 (添加数据) Update 语句(更新 ...