当前位置: 首页 > news >正文

网络与通信实验一 网络协议分析

Wireshark的安装

https://www.wireshark.org/(下载链接)
具体安装步骤参考
安装步骤 点击即可自动跳转

安装后打开

在这里插入图片描述
输入ipconfig
在这里插入图片描述
选择ipv4网卡存在的设备(我的电脑选择WiFi)
在这里插入图片描述
过滤条件选择 icmp
cmd下输入

ping www.baidu.com

在这里插入图片描述
在这里插入图片描述
选取一个数据包进行分析
每一个包都是通过数据链路层DLC协议,IP协议和ICMP协议共三层协议的封装。DLC协议的目的和源地址是MAC地址,IP协议的目的和源地址是IP地址,这层主要负责将上层收到的信息发送出去,而ICMP协议主要是Type和Code来识别,“Type:8,Code:0”表示报文类型为诊断报文的请求测试包,“Type:0,Code:0”表示报文类型为诊断报文类型请正常的包。ICMP提供多种类型的消息为源端节

在这里插入图片描述
点提供网络额故障信息反馈,报文类型可归纳如下:
(1)诊断报文(类型:8,代码0;类型:0代码:0);
(2)目的不可达报文(类型:3,代码0-15);
(3)重定向报文(类型:5,代码:0–4);
(4)超时报文(类型:11,代码:0–1);
(5)信息报文(类型:12–18)。
实验要求1: 抓包不同类型的报文(并截图)

TCP协议的分析实验

TCP/IP报文的格式:
在这里插入图片描述
TCP通信过程:
在这里插入图片描述

HTTP在传输层采用的是TCP协议,所以此次实验选取HTTP服务,本次抓包过程将采用显示过滤器的方法来过滤数据包。
1,确定目标地址:选择www.nuc.edu.cn为目标,选择应用服务HTTP中的TCP协议包作分析

ping www.nuc.edu.cn 拿到 网站对应的IP地址

显示过滤器输入tcp and ip.addr==xxx.xxx.xx.x 或 尝试命令 ip.dst==39.156.68.154 or ip.src==39.156.68.154

在这里插入图片描述
最上面的三个包,就是TCP三次握手的数据包,每个包对应一次握手。
先看第一个
在这里插入图片描述
Source 中是我的IP地址
在这里插入图片描述
总结一下第一个包做了什么:
我的电脑向百度的服务器发送了一个TCP请求,SYN表示这是一个建立连接的请求,这是第一次握手。

再看第二个数据包,源地址(Source字段)是百度的地址

在这里插入图片描述

总结一下这个包做了什么:
百度的服务器(收到我的链接请求以后)向我的电脑发送了一个TCP请求,SYN+ACK表示这是一个应答的请求,这是第二次握手。

再看第三个数据包,源地址(Source字段)是我
总结一下这个包做了什么:
我的电脑(收到百度服务器的响应请求后)向百度的服务器发送了一个TCP请求,ACK表示这是一个确认请求,这是第三次握手
在这里插入图片描述

发送完这个确认请求后,三次握手就完成了,客户端会打开到服务器的单向链接;服务器收到确认请求后,就会打开到客户端的单向链接;两个方向的连接都打开,就可以传输数据了。


http://www.mrgr.cn/news/70258.html

相关文章:

  • 基于yolov8、yolov5的番茄成熟度检测识别系统(含UI界面、训练好的模型、Python代码、数据集)
  • 搭建Python2和Python3虚拟环境
  • 外星人入侵
  • C# 实现对指定句柄的窗口进行键盘输入的实现
  • Rust学习(二):rust基础语法Ⅰ
  • dolphinscheduler
  • 零基础玩转IPC之——海思平台实现P2P远程传输实验(基于TUTK,国科君正全志海思通用)
  • python中input的单输入、多输入
  • RHCSA第二次练习
  • vue3注意事项
  • 【Effective C++】阅读笔记6
  • 博图与Factory I/O结合实现运料小车自动往返四次控制
  • json即json5新特性,idea使用json5,fastjson、gson、jackson对json5支持
  • java运行jar包问题总结
  • 从文本到图像:AIGC 如何改变内容生产的未来
  • LeetCode100之螺旋矩阵(54)--Java
  • 【视觉SLAM】Windows下编译Pangolin-0.5,显示SLAM运动轨迹
  • Linux screen和cscope工具使用总结
  • 初次体验Tauri和Sycamore(1)
  • 计算机基础命令行
  • HR怎么看待PMP证书呢?
  • 【真题笔记】21年系统架构设计师案例理论点总结
  • 【C语言指南】C语言内存管理 深度解析
  • C++实现用户分组--学习
  • Python学习从0到1 day26 第三阶段 Spark ④ 数据输出
  • Matlab2022b安装MinGW64