计算机网络|| 网络协议分析

一、实验环境

  1. 运行 Windows 操作系统的 PC 机一台;

  2. Laptop连接无线局域网

  3. The Wireshark Network Protocol Analyzer协议分析软件

二、操作步骤及结果

1.安装网络协议分析仪 Wireshark;

2.启动 Wireshark,并捕获数据,Wireshark 捕获界面如下所示;

3.保存捕获的数据包;

4.在命令行方式下运行 ping 命令发送数据包,ping命令后结果如下;

ICMP

ICMPV6数据发送界面图

5.在 Wireshark 中进行协议分析,Wireshark 协议分析界面如下;

三、结果分析

(1)Ping 命令中,(ICMP协议是TCP/IP协议的一个分支)

应用层:在应用层ping www.douyin.com 使用的是DNS协议,Ping命令本身是一个应用程序,它使用ICMP协议来发送和接收数据包。

传输层:Ping命令使用的是基于UDP的ICMP协议,因此在传输层使用的是UDP协议。

网络层:Ping命令使用的是IP协议,因此在网络层使用的是IP协议。

数据链路层:Ping命令使用的是以太网协议

ICMP协议中的字段含义

类型(Type):表示ICMP消息的类型。

代码(Code):表示ICMP消息的子类型

校验和(Checksum):用于检测ICMP消息是否被篡改

标识符(Identifier):用于标识发送方的进程

序列号(Sequence Number):用于标识发送方发送的每个ICMP消息

1.发出ARP请求报文 ,目的MAC为全F广播,请求网关ARP;

2.收到网关的ARP响应报文,学习到网关ARP地址,形成ARP地址表;

3.发出DNS请求报文(UDP报文),目的IP为DNS服务器地址,目的MAC为网关MAC;

4.收到DNS服务器的响应报文(UDP),进而知道到ping的主机的IP地址;

5.(必须)发出ICMP Request报文(ICMP协议),目的IP是ping的主机,目的MAC为网关,源IP为本机IP,源MAC为本机MAC。

6.(必须)收到ICMP Response报文。

ICMP request 分析
ICMP reply 分析

(2)捕获及分析 HTTP 协议数据包

HTTP 协议数据单元HTTP协议数据单元使用了TCP/IP协议栈中的应用层协议HTTP协议,以及传输层协议TCP协议,HTTP协议负责定义客户端和服务器之间的通信格式和规则,而TCP协议则负责在网络上传输HTTP协议定义的数据单元。在TCP/IP协议栈中,HTTP协议位于应用层,而TCP协议则位于传输层。

请求与响应
数据段
分析
每层用的协议
应用层:HTTP协议
传输层:TCP协议
网络层:IP协议
数据链路层:ARP协议
物理层:
HTTP协议数据包中的各个字段含义

1.源端口和目的端口:源端口是发送方的端口号,目的端口是接收方的端口号。

2.序列号和确认号:序列号是发送方发送的第一个字节的序号,确认号是接收方期望收到的下一个字节的序号。

3.标志位:包括URG、ACK、PSH、RST、SYN和FIN六个标志位,用于控制TCP连接的建立、维护和关闭。

4.窗口大小:用于控制TCP流量的控制和流量控制。

5.Checksum:用于检验TCP头部和数据的完整性。

6.HTTP请求或响应:包括请求方法、请求URL、HTTP版本、请求头、请求体等字段,用于描述HTTP请求或响应的内容。

四、思考

1. 通过分析用 Wireshark 捕获到的数据,能得到哪些参数?

答:Wireshark可以捕获网络数据包,并显示数据包详细信息,通过分析这些信息,可以得到以下参数:

1.源IP地址和目标IP地址

2.源端口和目标端口

3.协议类型(TCP、UDP、HTTP、ARP、ICMP等各种协议)

4.数据包大小

5.时间戳

6.数据包内容

点开可以查看每个数据包的详细内容,包括各个字段的值和解释。

相关推荐
搬码临时工36 分钟前
使用自定义固定公网URL地址远程访问公司内网OA办公系统,本地无需公网IP和专线让外网访问
网络·网络协议·tcp/ip
星马梦缘2 小时前
计算机网络6 第六章 应用层——解决“怎么发请求、怎么回响应”的问题(邮件整体传输流程)
网络·计算机网络·域名·ftp·dns·dhcp
@CLoudbays_Martin112 小时前
为什么动态视频业务内容不可以被CDN静态缓存?
java·运维·服务器·javascript·网络·python·php
东哥说-MES|从入门到精通4 小时前
Mazak MTF 2025制造未来参观总结
大数据·网络·人工智能·制造·智能制造·数字化
sheepwjl4 小时前
《嵌入式硬件(三):串口通信》
网络·嵌入式硬件·网络协议·串口通信
noravinsc4 小时前
RPC和HTTP的区别?
网络协议·http·rpc
Jayyih5 小时前
嵌入式系统学习DAY28(网络编程)
网络·学习·tcp/ip
dbdr09015 小时前
Linux 入门到精通,真的不用背命令!零基础小白靠「场景化学习法」,3 个月拿下运维 offer,第二十六天
linux·运维·服务器·网络·python·学习
日更嵌入式的打工仔6 小时前
PHY的自适应协商简析
网络·嵌入式硬件·自适应·phy
XMYX-07 小时前
解决 Apache/WAF SSL 证书链不完整导致的 PKIX path building failed 问题
网络协议·apache·ssl