2023年9月

网络协议分析-作业4-利用Wireshark分析ARP

更新地址:

https://cmd.dayi.ink/7HlTGv4nS6KJo3pyLsZcwQ?both
https://blog.dayi.ink/?p=69
https://type.dayiyi.top/index.php/archives/203/

0.学聪明了,先看实验报告

1.分别记录第5步和第6步后本机ARP缓存表的变化和Wireshark截获的ARP报文情况,分析网内ARP请求和跨网ARP请求的过程。

2.记录第7步和第8步本机ARP缓存表的变化,结合Wireshark截获的报文,分析两步中ping通与不通的原因。

3.记录第9步的步骤和现象,并分析原因。

0.1 把拓扑图打开:

0.2 开始做就好

1 我感觉跟着按顺序来就好

1.1 唔看着也不是那样,反正就是抓个包。

全选之后可以点启动的。

1.2 打开wireshark软件,选择菜单命令capture,点options,双击capture,弹出edit interface settings窗口,在capture filter中填写本地计算机的IP地址。

直接这样填就行,物理机的包太多了,用模拟可以更好的对ARP包的过程进行分析。

1.3 查看本机的arp缓存表内容,命令如下:

很遗憾,arp表是空的。

但你可以事实你物理机的arp表:

这就有啦

1.4 删除本机arp缓存表全部的内容,命令如下:

arp -d *

没权限!

WIN+X,然后选终端管理员或者cmd管理员,或者powershell管理员

这样就没有arp表了

1.5 Ping 本地计算机的默认网关,命令如下:

这样咱们继续用ENSP

ping 192.168.1.254

两个小机子的IP

网关是192.168.1.254

这就是啦:

1.6 使用eNsp方法

直接把那个机子弄成百度

记得应用下

然后直接pingwww.baidu.com就可以啦

arp表如下:

可以看到,ping之前是没有相关的arp信息,ping之后就有啦

抓的包如下:

1.6 删除本机arp缓存表全部的内容,ping外网地址(例如百度)并捕获相应的arp包,命令如下:

实体机抓包,比较乱,不建议。

要捕获包。打开网线鲨鱼吧

筛选器可以筛一下:

开始捕获

很遗憾,我发现我内网里有个炸弹,所以包没那么明显。。

1.7 绑定默认网关和MAC地址操作。

还有一个1.7章节,看那个。

用实体机!华为模拟器结果与实体不对。

(1)删除本机arp缓存表全部的内容后,将默认网关IP地址(设为10.103.52.1)对应的MAC地址绑定为11-22-33-44-55-66,命令截图如下:

arp -s 192.168.1.254 11-22-33-44-55-66

(2)查看arp高速缓存,结果如下图:

arp -a

(3)ping 默认网关,截图如下:

ping 192.168.1.254

因为绑定了错误的网关MAC地址,此时无法上网。(NONONO)

(然后就可以ping通了(我认为是华为模拟器的问题))

ping 192.168.1.254

也能通


然后可以看到这里的MAC地址是:

ARP包的地址

Ethernet II, Src: HuaweiTe_d0:46:11 (00:e0:fc:d0:46:11), Dst: HuaweiTe_0b:28:9c (54:89:98:0b:28:9c)

肯定不是11:22:33:44:55:66

所以理论这个过程肯定不会通的。

1.7 实体机补充

实体机抓包包很多:
用这个进行过滤:

arp || icmp

填在这里。

我这里实体机的网关是10.31.0.1

你可以通过ipconfig进行查看

被拒绝了,用netsh

似乎也ping通了。

arp包也是改的mac地址

我已经不能理解了。


这个是正确的,是无法正常ICMP ping通的:

你的截图应该这个样子:也就是回应失败。

这个10.31.0.1是你网关地址。

这两个号对起来。

arp -a
netsh i i show in
netsh -c "i i" add neighbors 10 10.31.0.1 11-22-33-44-55-77

arp -a
ping 10.31.0.1


#抓完之后删除即可,不然就上不了网了

netsh -c "i i" del neighbors 16 10.31.0.1 11-22-33-44-55-77

arp -d *

附:压根没法理解的现象(应该是virtio网卡的问题)


8.修改外网主机IP和MAC地址的绑定

回到eNSP

(1)修改本地计算机arp高速缓存中百度的IP地址与物理地址的映射
(2)执行ping百度命令,可以看到此时本地计算机和百度还是连通的。


ping www.baidu.com

arp -s 192.168.2.1 11-22-33-44-55-66


ping www.baidu.com

因为流量经过了网关代理,3层数据包通过IP转发,由于不在一个网段,直接转发给网关即可。

9. 局域网中地址冲突

再脱个电脑

然后故意让他俩IP冲突。

记得应用


PC>arp -d *

PC>ping 192.168.1.1

你会发现,有两个家伙同时回应数据包。

五、实验报告

1.分别记录第5步和第6步后本机ARP缓存表的变化和Wireshark截获的ARP报文情况,分析网内ARP请求和跨网ARP请求的过程。

  • 跨网先发给网关,之前已经写啦

2.记录第7步和第8步本机ARP缓存表的变化,结合Wireshark截获的报文,分析两步中ping通与不通的原因。

  • 不通因为ARP对应的MAC地址是错的(虽然在虚拟网卡里好像无关紧要)

3.记录第9步的步骤和现象,并分析原因。

  • 因为冲突了,所以两个同时回应ARP包。

文件下载

https://pic.icee.top/blog/pic_bed/2023/09/arp抓包附件.zip

网络协议分析-3-实验六 利用Wireshark分析IP-分片

https://cmd.dayi.ink/FTEPq4QQSYS4_WTd4PzFjQ?both
type.dayiyi.top/index.php/archives/201/

2023年9月22日00:38:42 我还被抓去弄计算机二级,真的是想写,但是连续好几天都被直接从实训抓走。(很抱歉WWWW),真的是熬夜写出来的。

2023年9月22日02:11:25 还没传完目前进度31/40 台机子

2023年9月22日03:25:33 写完这篇文章啦。想法子睡一会,但发现实训还没做。

1.打开eNSP模拟器,拖拽两台路由器用以太网线相连,构建如下所示网络拓扑。

2.设计地址分配方案,并配置端口IP地址(例如,AR1:10.1.1.1//AR2:10.1.1.2),命令如下:(AR1和AR2相似)

注意,实验报告中不要采取这个IP(要求非这个IP),不然可能要再做一遍。(
  • AR1 : 10.1.1.1/24
  • AR2 : 10.1.1.2/24

AR1

<Huawei>sys
[Huawei]int e0/0/0
[Huawei-Ethernet0/0/0]ip addr 10.1.1.1 255.255.255.0

AR2

<Huawei>sys
[Huawei]int e0/0/0
[Huawei-Ethernet0/0/0]ip addr 10.1.1.2 255.255.255.0


(还是建议用最后那个ROUTER)

3. 设置MTU

实验设置中,请取其他值。

临时这样设置,然后来进行分片分析

  • AR1 设置MTU=750
  • AR2 设置MTU=1500

AR1

[Huawei-Ethernet0/0/0]mtu 750

AR2

[Huawei-Ethernet0/0/0]mtu 1500

ovo

4. 查看效果

display current-configuration interface

AR1:

AR2:

  • 我怀疑是默认就是MTU1500,所以没有生效

  • 设置成1499,确实是这样

好啦啦,再改回去

5. 抓包包

这样,咱们先开始抓包,然后再ping

然后我从R1 -> R2 进行ping

ping 10.1.1.2

(脑子不好用,这样是看不出分片的,写错了,2023年9月22日01:19:04)

抓的包如下:

我们要用大包来ping,这样就可以显示出IP的分片。

ping 10.1.1.2 -s 1500

6.结果分析

根据源地址和目的地址可以看出,源为10.1.1.1发出的包有三个,分别为两个IP数据包、一个ICMP数据包,而源为10.1.1.2回的包只有两个,一个IP数据包、一个ICMP数据包,分别点开前三个包的IP包头字段查看报文详细情况:

(1)第一个报文

(2) 第二个报文

(3) 第三个报文

回答问题

(1)为什么分片的有效载荷最大为728B?
(2)为什么有效载荷总量为1508B?
(3)一个ICMP报文的首部出现在哪些分片中?

(1)为什么分片的有效载荷最大为728B?

  • 最大传输单元MTU(Maximum Transmission Unit,MTU),是指网络能够传输的最大数据包大小,以字节为单位。

也就是说是大概1500字节
但是,要除去以太网的帧头。

也就是大概:

DMAC(6) + SMAC(6) + TYPE(2) + MTU = 14 字节 + MTU = 帧

但是不同的交换机有不同的数据

  • MTU = IP头+三层协议 Payload
  • 但是有的MTU = IP报文MTU + 14字节(以太网帧头)
  • 有的MTU = IP报文 + 以太帧头(14) + CRC部分的总和(2)

这里我们的帧
是762字节一个帧

以太网帧

IP协议头

三层协议:

  • 目的MAC = 6 byte
  • 源MAC = 6 byte
  • 类型 = 2 byte
  • IPV4 协议头部 = 20 byte
  • 然后咱们的三层协议的PAYload就是ICMP啦(因为IP分片,目前看13个包的话,目前是没有传完的),直接是728 byte的payload,但是同时在IPV4中有协议。
  • 这样算的话: 6+6+2+20+728=762

正好是762字节。

因此就是762个字节。

由于MTU设置为750 ,此时,除去以太网帧头是,

748

虽然MTU设置为750,但此时传输为748

(2)为什么有效载荷总量为1508B?

15的包对IP包进行了合并

  • 帧13 728
  • 帧14 728
  • 帧15 52

728+728+52=1508

正好是三个包的之和。

至于为什么是1508而不是1500。

我们用的载荷确实是1500,但是由于,ICMP的数据包的包头是8字节,包含了类型、代码、检验和以及其他字段。

所以:

  • ICMP载荷:1500 字节
  • ICMP头部:8 字节
  • IP头部:20字节

其中ICMP作为三层协议,1508字节。

也就是IP的payload共计1508字节。

(3)一个ICMP报文的首部出现在哪些分片中?

选中ICMP的头部,也就是图中的非蓝色部分。

可以看到

08 00 d681 ceab(abce) 0100(0001)
是ICMP的头部。

虽然可能有一定的顺序导致,这可能是小端和大端的区别导致,但是发现在13号帧,也就是第一个帧里。

只有第一个数据包包含上层协议。

实验报告

以下内容涉及了一定的重复实验,因为之前已经把实验做了一遍了,所以这里对实验原理进行言简意赅。
原文:记录你的实验操作过程,并仿照上面的分析过程,对你的实验过程和结果进行分析。 回答下列问题:

1、你所设计的IP地址分配方案是多少?(不能取指导书中的地址)

是这样,已经做了一遍的样子了。

选择IP

  • AR1:192.168.233.1
  • AR2:192.168.233.2

AR1

<Huawei>sy
[Huawei]int e0/0/0
[Huawei-Ethernet0/0/0]ip addr 192.168.233.1 255.255.255.0
[Huawei-Ethernet0/0/0]
Sep 22 2023 02:53:54-08:00 Huawei DS/4/DATASYNC_CFGCHANGE:OID 1.3.6.1.4.1.2011.5
.25.191.3.1 configurations have been changed. The current change number is 1, th
e change loop count is 0, and the maximum number of records is 4095.

AR2

<Huawei>
Sep 22 2023 02:50:47-08:00 Huawei SNMP/4/COLDSTART:OID 1.3.6.1.6.3.1.1.5.1 coldS
tart.
<Huawei>sys
Enter system view, return user view with Ctrl+Z.
[Huawei]int e0/0/0
[Huawei-Ethernet0/0/0]ip addr 192.168.233.2 255.255.255.0
[Huawei-Ethernet0/0/0]
Sep 22 2023 02:54:14-08:00 Huawei DS/4/DATASYNC_CFGCHANGE:OID 1.3.6.1.4.1.2011.5
.25.191.3.1 configurations have been changed. The current change number is 1, th
e change loop count is 0, and the maximum number of records is 4095.

2、你设定的接口的MTU都是什么?(不能取指导书中的数值)

  • 那样就取 AR1:233 AR2:1500

莫名其妙联不通(重启下软件)

抓包文件如下:

3、回答上述结果分析中的3个问题。

实验步骤已经对步骤进行了描述概况,这里简单写一下。

(1)为什么分片的有效载荷最大为208B?

  • 目的MAC = 6 byte
  • 源MAC = 6 byte
  • 类型 = 2 byte
  • IPV4 协议头部 = 20 byte

208+20+2+12=242

由于MTU设置为233

这里的用了228 的payload分片。

(2)为什么有效载荷总量为1508B?

前面解释过啦,因为包含了8字节的请求头。

(3)一个ICMP报文的首部出现在哪些分片中?

第一个分片中!

相关滴已经解释啦。

在实验过程中对部分已经解释过啦,所以就不再细节性的再写一遍啦。

网络协议分析-3-实验六 利用Wireshark分析IP-分片

2023年9月22日00:38:42 我还被抓去弄计算机二级,真的是想写,但是连续好几天都被直接从实训抓走。(很抱歉WWWW),真的是熬夜写出来的。

2023年9月22日02:11:25 还没传完目前进度31/40 台机子

2023年9月22日03:25:33 写完这篇文章啦。想法子睡一会,但发现实训还没做。

1.打开eNSP模拟器,拖拽两台路由器用以太网线相连,构建如下所示网络拓扑。

2.设计地址分配方案,并配置端口IP地址(例如,AR1:10.1.1.1//AR2:10.1.1.2),命令如下:(AR1和AR2相似)

注意,实验报告中不要采取这个IP(要求非这个IP),不然可能要再做一遍。(
  • AR1 : 10.1.1.1/24
  • AR2 : 10.1.1.2/24

AR1

<Huawei>sys
[Huawei]int e0/0/0
[Huawei-Ethernet0/0/0]ip addr 10.1.1.1 255.255.255.0

AR2

<Huawei>sys
[Huawei]int e0/0/0
[Huawei-Ethernet0/0/0]ip addr 10.1.1.2 255.255.255.0


(还是建议用最后那个ROUTER)

3. 设置MTU

实验设置中,请取其他值。

临时这样设置,然后来进行分片分析

  • AR1 设置MTU=750
  • AR2 设置MTU=1500

AR1

[Huawei-Ethernet0/0/0]mtu 750

AR2

[Huawei-Ethernet0/0/0]mtu 1500

ovo

4. 查看效果

display current-configuration interface

AR1:

AR2:

  • 我怀疑是默认就是MTU1500,所以没有生效

  • 设置成1499,确实是这样

好啦啦,再改回去

5. 抓包包

这样,咱们先开始抓包,然后再ping

然后我从R1 -> R2 进行ping

ping 10.1.1.2

(脑子不好用,这样是看不出分片的,写错了,2023年9月22日01:19:04)

抓的包如下:

我们要用大包来ping,这样就可以显示出IP的分片。

ping 10.1.1.2 -s 1500

6.结果分析

根据源地址和目的地址可以看出,源为10.1.1.1发出的包有三个,分别为两个IP数据包、一个ICMP数据包,而源为10.1.1.2回的包只有两个,一个IP数据包、一个ICMP数据包,分别点开前三个包的IP包头字段查看报文详细情况:

(1)第一个报文

(2) 第二个报文

(3) 第三个报文

回答问题

(1)为什么分片的有效载荷最大为728B?
(2)为什么有效载荷总量为1508B?
(3)一个ICMP报文的首部出现在哪些分片中?

(1)为什么分片的有效载荷最大为728B?

  • 最大传输单元MTU(Maximum Transmission Unit,MTU),是指网络能够传输的最大数据包大小,以字节为单位。

也就是说是大概1500字节
但是,要除去以太网的帧头。

也就是大概:

DMAC(6) + SMAC(6) + TYPE(2) + MTU = 14 字节 + MTU = 帧

但是不同的交换机有不同的数据

  • MTU = IP头+三层协议 Payload
  • 但是有的MTU = IP报文MTU + 14字节(以太网帧头)
  • 有的MTU = IP报文 + 以太帧头(14) + CRC部分的总和(2)

这里我们的帧
是762字节一个帧

以太网帧

IP协议头

三层协议:

  • 目的MAC = 6 byte
  • 源MAC = 6 byte
  • 类型 = 2 byte
  • IPV4 协议头部 = 20 byte
  • 然后咱们的三层协议的PAYload就是ICMP啦(因为IP分片,目前看13个包的话,目前是没有传完的),直接是728 byte的payload,但是同时在IPV4中有协议。
  • 这样算的话: 6+6+2+20+728=762

正好是762字节。

因此就是762个字节。

由于MTU设置为750 ,此时,除去以太网帧头是,

748

虽然MTU设置为750,但此时传输为748

(2)为什么有效载荷总量为1508B?

15的包对IP包进行了合并

  • 帧13 728
  • 帧14 728
  • 帧15 52

728+728+52=1508

正好是三个包的之和。

至于为什么是1508而不是1500。

我们用的载荷确实是1500,但是由于,ICMP的数据包的包头是8字节,包含了类型、代码、检验和以及其他字段。

所以:

  • ICMP载荷:1500 字节
  • ICMP头部:8 字节
  • IP头部:20字节

其中ICMP作为三层协议,1508字节。

也就是IP的payload共计1508字节。

(3)一个ICMP报文的首部出现在哪些分片中?

选中ICMP的头部,也就是图中的非蓝色部分。

可以看到

08 00 d681 ceab(abce) 0100(0001)
是ICMP的头部。

虽然可能有一定的顺序导致,这可能是小端和大端的区别导致,但是发现在13号帧,也就是第一个帧里。

只有第一个数据包包含上层协议。

实验报告

以下内容涉及了一定的重复实验,因为之前已经把实验做了一遍了,所以这里对实验原理进行言简意赅。
原文:记录你的实验操作过程,并仿照上面的分析过程,对你的实验过程和结果进行分析。 回答下列问题:

1、你所设计的IP地址分配方案是多少?(不能取指导书中的地址)

是这样,已经做了一遍的样子了。

选择IP

  • AR1:192.168.233.1
  • AR2:192.168.233.2

AR1

<Huawei>sy
[Huawei]int e0/0/0
[Huawei-Ethernet0/0/0]ip addr 192.168.233.1 255.255.255.0
[Huawei-Ethernet0/0/0]
Sep 22 2023 02:53:54-08:00 Huawei DS/4/DATASYNC_CFGCHANGE:OID 1.3.6.1.4.1.2011.5
.25.191.3.1 configurations have been changed. The current change number is 1, th
e change loop count is 0, and the maximum number of records is 4095.

AR2

<Huawei>
Sep 22 2023 02:50:47-08:00 Huawei SNMP/4/COLDSTART:OID 1.3.6.1.6.3.1.1.5.1 coldS
tart.
<Huawei>sys
Enter system view, return user view with Ctrl+Z.
[Huawei]int e0/0/0
[Huawei-Ethernet0/0/0]ip addr 192.168.233.2 255.255.255.0
[Huawei-Ethernet0/0/0]
Sep 22 2023 02:54:14-08:00 Huawei DS/4/DATASYNC_CFGCHANGE:OID 1.3.6.1.4.1.2011.5
.25.191.3.1 configurations have been changed. The current change number is 1, th
e change loop count is 0, and the maximum number of records is 4095.

2、你设定的接口的MTU都是什么?(不能取指导书中的数值)

  • 那样就取 AR1:233 AR2:1500

莫名其妙联不通(重启下软件)

抓包文件如下:

3、回答上述结果分析中的3个问题。

实验步骤已经对步骤进行了描述概况,这里简单写一下。

(1)为什么分片的有效载荷最大为208B?

  • 目的MAC = 6 byte
  • 源MAC = 6 byte
  • 类型 = 2 byte
  • IPV4 协议头部 = 20 byte

208+20+2+12=242

由于MTU设置为233

这里的用了228 的payload分片。

(2)为什么有效载荷总量为1508B?

前面解释过啦,因为包含了8字节的请求头。

(3)一个ICMP报文的首部出现在哪些分片中?

第一个分片中!

相关滴已经解释啦。

在实验过程中对部分已经解释过啦,所以就不再细节性的再写一遍啦。

文件下载

抓的两个包

https://pic.icee.top/blog/pic_bed/2023/09/网络协议分析-3-实验六利用Wireshark分析IP-分片文件下载.zip

实时更新:

https://cmd.dayi.ink/oEkRxBOWSHaFYYE_uhqBzA

不定期更新

最新代码

都在这里:

打开缓慢:可以用Steam++来加速访问(选github)(https://steampp.net/ 下载:选蓝奏云 https://wwn.lanzouy.com/imM6D19nxt9a 密码1234 )

不是很想用gitee,限制特别多,如果你们需要,请跟我说

代码:在这里👇,打开慢请用steam++试试。

https://github.com/magical-rabbit/java-spring

https://github.com/magical-rabbit/java-spring/tree/main/src/main/java/net/dabbit/skd21/exam