如果学不会SRv6,那就学一下VSR的抓包吧

本文介绍了如何在VSR设备上配置IS-IS的SRv6以及使用抓包工具分析SRH报文结构。作者演示了如何设置抓包参数,选择合适的抓包位置,并讨论了报文结构与标准的差异,以及IS-ISLSP中携带的SRv6信息。此外,文章还提及了EVE-NG中的VSR配置和Linux部署等内容。
摘要由CSDN通过智能技术生成

67b3d291e2ea4be22cbc9036a7ced4dd.gif

正文共:1024 字 19 图,预估阅读时间:1 分钟

上个实验中SRv6典型配置,我们已经成功配置了基于IS-IS的SRv6,

10d625fbb5a50f4739a721cd1140204e.png

我们回顾一下VSR1上查看IS-IS SRv6的Locator路由信息。

16cf1735977ad4879d066780e9e0b60f.png

之前也说过,SR可以使用称为SRH的新型路由报文头应用于 IPv6 数据平面,那我们今天就一起来看看这个报文头长啥样。

首先学习一下VSR自带的抓包功能。

命令也是非常简单,一共4条。

363d69575cb295665082060441c70fc6.png

第一条packet-capture max-bytes用于配置捕获报文的最大长度,缺省情况下,捕获报文的最大长度为1600字节,已经超过了接口普通报文的1520字节,非特殊情况无需调整。

第二条packet-capture max-file-packets用于配置捕获文件存储捕获条目的最大数量,缺省为100个,感觉不够用的可以直接配置成上限1000个。

6eb26dc9ac336d2284ae1be867cacb4c.png

第三条packet-capture start用于启动报文捕获功能,后面还可以跟接口和ACL等限制参数。

731b56cf752eee36a406345ce28331da.png

第四条packet-capture stop用于停止报文捕获功能,默认是保存完缓存中的报文后才停止报文捕获功能,还可以指定immediately参数立刻停止报文捕获功能。

323b0811de76370a033670ab81f2f329.png

最后一条packet-capture storage用于配置捕获文件的存储路径,缺省情况下,捕获文件存储在设备缺省文件系统的pcap文件夹下,也可以调整路径或配置为远程的FTP或TFTP路径。

ab5a0ce12f806d33394eeb0461ad03c1.png

从流量转发路径上看,我们可以配置从VSR1的GE2/0接口、VSR3的GE3/0接口和VSR2的GE2/0接口等位置进行抓包,分析报文情况。

80c4dfc413af13da01eb63da514f1d03.png

在VSR的接口上开启抓包的命令如下:

#
packet-capture max-file-packets 1000
packet-capture start interface GigabitEthernet 2/0

学会了如何抓包,我们还要知道如何去制造报文。

我们已经知道,SRv6通过在源节点对IPv6数据报文进行封装,使封装后的报文在开启SRv6功能的网络中进行传输。SRv6隧道就是封装后的数据报文在网络中传输的路径,是从源节点到尾节点的一个虚拟的点对点连接,其两端的设备分别对数据报文进行封装及解封装。

所以比较合适的抓包位置就是VSR3的GE2/0接口和GE3/0接口,但是又不能两个接口一起抓,那我们就优先抓取GE2/0接口的报文。

ping的命令也有所不同,使用ping ipv6-sid命令用来检测SRv6转发路径的连通性。

a91091d8ff294b3e011ad9738f30fa36.png

ping包结束后,停止抓包。

用MobaXterm的优势之一就是可以直接下载抓包文件,不用再搭建文件服务器了。

f5d909def8739d1befe60f6501295fa7.png

查看报文结构,发现跟SRH协议规范SRv6之SRH:IPv6 段路由报文头描述的差不多但又有所不同。

9522d3606c1b76682671934492f3feb8.png

对比下面的标准报文头,我们可以发现,在IPv6报文头中确实有了一个新的报文头Routing Header for IPv6(Segment Routing),前面的几个字段Next Header、Length、Routing Type(值为4,表示Segment Routing)、Segments Left是一样的。

Last Entry在这里成了First Segment,规范里是没有这个字段的,而华三将此字段定义为SRH头中报文实际转发路径的第一个SID的编号,值为0,有点让人费解。

然后就是Flags标志位信息,竟然提示暂不支持解析SRH的TLV,不知道是不是跟这个有关,Segment List的信息也看不到。不知道升级WireShark能不能解决。

67d803349bbc70ca7b892042e66d80e1.png

其实,除了ipv6-sid的报文,IS-IS的LSP报文中也带有SRv6信息。

9c260ac32069d9fa158faa33b9d1ff28.png

这个报文中的子TLV对应End.X类型的Local SID转发表信息,上次我们提到,设备上默认开启了动态End.X SID延迟删除功能,当设备间邻居关系断开时,暂不删除动态分配的End.X SID,保证流量正常转发。这个报文就是我断开VSR3的链路所产生的。

57538ce6d2deedf9f3e8d8614e04e02c.png

变更之前提示到1::/64的可达性是UP的。

f165c339c6ab140e9ee0f415e3f8beee.png

变更之后路由信息就被删除了。

5fa7e7bc0a762a2d3fcf30c9550818eb.png

对应的,报文中还携带End类型的Local SID转发表信息。

944a5d393193b958b92e6abcf8b7a3e5.png

与设备上End类型的转发表信息相对应。

91e1c9a70e6f5d0fd0b947d8d73c0f8b.png

除此之外,还能通过命令查看SRH转发路径。

b50f7de8426f9e05d31b9128bfa3ee78.png

当然,这属于SRv6 OAM的内容了,我们后面再讲。

837210bab1408227ef7337a9f64566a5.gif

长按二维码
关注我们吧

8efe43053697d6c38d3c5cbb1ddcb921.jpeg

31d59155b72016e5e2ebaa1b60c093e4.png

以腾讯云为例,在公有云部署一台VSR

如何在EVE-NG中导入VSR1000设备?怎么解决登录问题?

没想到啊,竟然万物皆可EVE-NG!

SRv6典型配置

IS-ISv6配置

IPv6从入门到精通

Android4也能跑Linux了,Linux Deploy了解一下!

想知道Android手机怎么远程登录到系统后台吗?看这里

你想在旧Android手机上装Linux系统吗?看这里

  • 21
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Danileaf_Guo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值