有关ospf抓包

有关ospf抓包

1、相关的路由器为这样子的; 路由器都运行了ospf

 

抓包的链路为GE0/0/2

 

2、抓包图:

从图上我们可以看到,protocol info 这一栏里面出现了:

hello packet

DB Description

LS Update

LS ack

(为什么没有出现LSR报文呢?)

 

查看抓包图:

首先我们查看的是hello packet

 

这个hello报文已经被完全详细的解析出来,虽然有些看不懂,不过也是全部百度了、

然后我们再将黑手伸向DB Description 报文:

 

注意上面的序号为11;(dd报文)

 

这个是五个ospfdd报文,共有五次,效果等同于三次握手的效果;

 

Dd三次报文的不同之处:

111.14.16

   13.15

ospf是不相同的;因为发送方的路由器是不同的;还有就是校验码肯定是不相同的

2、

    11. 13

   14.16

     15

 这个应该只是将详细内容中置为1的内容展现出来了而已;

 

 

3

  序号为:11

序号为:13

序号为:14

序号为:15

序号为16

 

这个地方很有意思的:这五个dd报文的R,I,M,MS 的变化能体现dd报文的作用:

序号为11的报文截图:得出的信息:我是第一个报文,我后面还有报文,我是主路由器

                     我的序号是x

序号为13的报文截图:得出的信息:我是第一个报文,我后面还有报文,我是主路由器

                     我的序号是y

***********因为在没有进行dd交换;他们都会认为自己是主路由器;***********

序号为14的报文截图:得出的信息:我不是第一个,我后面没有报文,我是从路由器

                     我的序号是y(隐式响应)

序号为15的报文截图:得出的信息;我不是第一个,我后面没有报文,我是主路由器

                     我的序号是y+1

***********因为经过第一轮的dd报文的交换,他们确定了主从关系;***********

序号为16的报文截图:得出的信息:我不是第一个,我后面没有报文,我是从路由器

                     我的序号是y+1(隐式响应)

 

 

然后我们再次去研究分析:update的报文:

 

先来看一下,一共就更新了三个update报文 ~ 序号为  17   18  1 9

 

 

我们发现 ospf header 基本格式是一样的;只是由于:每个报文的类型不同,导致有时候的头文件的格式有所不同:不过都是对该报文进行描述;

当报文为同一种类(在这里为update 报文):不同的地方主要是在

Ls update packet上;

 ************这个是序号为17

************这个是序号为18

************这个是序号为19 

Update报文主要是:将对面发来的request报文中的所需要的内容,然后从自己发送给对面;

从上面的图看到更新的LS种类有:router-lsanetwork-LSA,(讲真的:个人感觉这个是包含了请求报文还有更新报文)

现在将对现在已经出现的两个种类的报文进行分析:

 

router-LSa

 

Network-lsa

 

 

以上是对LSA-HEADER中的network-LSArouter-LSA进行描述;

 

 

在这里有一个很有意思的事儿

我看了下update的报文:发现;

第一个报文:在第一个update报文中,我们可以看到:LS type 只有router-lsa一种:

 

展开之后:

 

它的序列号为这个;(我们假设这个为请求)

 

 

第二个报文:在第二个update报文中:我们可以看到出现了三个LS type

其中有两个router-lsa和一个network

 

 

我们分别展开三个ls type 的详细信息。去查看他们的序列号:

(第一个router-lsa)

(第一个network报文

(第二个router-isa)

我们可以看到:1第二个update报文中的第二个router-isa的序列号和第一个update报文中的第一个router-isa的序列号是相同的:我们是否可以理解为他们是隐性应答;

              2、第二个update报文中的第一个router-isa的序列号刚好是第二个update报文中的第一个router-isa的序列号的+1:;我们是否可以理解为第一个是第二个后面一个;

 

第三个报文;在第三个update报文中;我们可以看到出现了两个ls type;其中有一个router-isa和一个network-isa

 

我们分别展开两个ls type 的详细信息。去查看他们的序列号:

(第一个router-isa)

(第一个network-isa)

我们可以看到: 第二个的update报文中的第一个network的序列号和第三个update报文中的第一个network报文的序列号是相同的:这可以理解为第三个报文是隐形应答第二个报文

               第二个的ipdate报文中的第二个router-isa的序列号和第三个update的报文中的第一个router-lsa的序列号是相同的;这可以理解为第三个报文是隐形应答第二个报文

 

 

 

差不多该说说ls ack 报文了:

Lsack报文是同来对接收的lsu报文进行确认;我一直觉得lsack报文和ls update报文很像啊;

 

 

上面是应答报文,下面是跟新报文;

仔细看就会发现:到flag之前的格式都是一模一样的;然后我也不知道怎么去描述了。

 

就这样吧。

 

2016/11      my-tea

posted @ 2017-03-06 11:29  茶丶  阅读(3934)  评论(1编辑  收藏  举报