ICMP实例分析

本文详细解析了ICMP报文的结构,包括回送请求、回答报文及终点不可达报文等内容。介绍了各字段含义,并通过具体示例展示了不同类型的ICMP报文特征。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

发现:在承载ICMP的IP的报文中的协议字段的值是0x01

 

作为ping命令的原理,自己通过ping同一宿舍的电脑但是失败的报文的场景:


ICMP询问报文中的回送请求或回答报文中的回送报文:

 

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

1

20

6a

8a

0e

12

35

28

d2

44

c7

d2

62

08

00

45

00

2

00

3c

66

8b

00

00

40

01

68

f6

0a

6c

cb

32

0a

6c

3

cb

35

08

00

4d

5a

00

01

00

01

61

62

63

64

65

66

4

67

68

69

6a

6b

6c

6d

6e

6f

70

71

72

73

74

75

76

5

77

61

62

63

64

65

66

67

68

69

 

 

直接分析ICMP报文部分:

首部8字节:3C~3J,

08

         类型:1个字节,0x08:表示这个ICMP的回送请求报文

00

         代码:0x00:不知道什么意思

4d

5a

         检验和:不知道只是首部检验和还是整个ICMP报文的检验和

00

01

         这个要分开说明,分别是identifierBE和Identifier LE,依然不知道是什么意思

00

01

         这个也要分开说明,分别是:sequence  number BE 和sequence number LE依然不知道什么意思,不过应该和这是第几个ping包有关

 

 

下面的从3K~5J共32B的数据:却是:

Abcdefghijklmnopqrstuvwabcdefghi

经自己查看发送的request和reply基本上都是这个ascii码序列,但是也有的不是这个序列

 

 

 

ICMP的询问报文中的回送请求或回答中的回答报文:

 

 

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

1

28

d2

44

c7

d2

62

b8

70

f4

31

a0

08

08

00

45

00

2

00

3c

00

8b

00

00

40

01

ce

f4

0a

6c

cb

37

0a

6c

3

cb

32

00

00

55

47

00

01

00

14

61

62

63

64

65

66

4

67

68

69

6a

6b

6c

6d

6e

6f

70

71

72

73

74

75

76

5

77

61

62

63

64

65

66

67

68

69

 

 

直接看ICMP报文部分:

首部8字节:3C~3J

00

         类型:0x00,表示这个是ICMP回送请求或回答报文中的回答报文

00

         代码:code,不知道什么意思

55

47

         检验和:不知道只是首部检验和还是整个ICMP报文的检验和

00

01

         这个要分开说明,分别是identifierBE和Identifier LE,依然不知道是什么意思

00

14

         这个也要分开说明,分别是:sequence  number BE 和sequence number LE依然不知道什么意思,不过应该和这是第几个ping包有关,用于标识这是回送的第几个请求包

 

下面的3K~5J的数据共32B,依然是:序列!abcdefg···

 

 

ICMP的差错报告报文中的终点不可达报文,

自己意外的捕获到了这种报文:

 

 

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

1

28

d2

44

c7

d2

62

14

14

4b

1b

53

a7

08

00

45

00

2

00

38

21

09

00

00

3e

01

7a

03

0a

00

02

1b

0a

6c

3

cb

32

03

03

c6

61

00

00

00

00

45

00

00

99

70

13

4

00

00

01

11

83

a8

0a

6c

cb

32

ef

ff

ff

fa

c9

52

5

07

6c

00

85

65

57

 

 

直接分析ICMP的报文,

03

         类型:0x03,标识这个是终点不可达报文

03

         代码:code,根据wireshark上的提示,这个应该是表达这是端口号不可达的意思

c6

61

         检验和:根据wireshark的提示这个检验和检验正确

00

00

00

00

         这四个字节,wireshark上面好像把这个忘了,应该是直接填充为0吧?

下面是数据字段:3K~5F共28B字节数据,由所需要的报告的ip报文的首部和需要的报告的ip报文的数据的前8字节组成,这里就是有

45

00

00

99

70

13

 

00

00

01

11

83

a8

0a

6c

cb

32

ef

ff

ff

fa

 

 

c9

52

07

6c

00

85

65

57

组成!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

jackletter

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

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

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

打赏作者

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

抵扣说明:

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

余额充值