博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
网络抓包分析----第四组
阅读量:6474 次
发布时间:2019-06-23

本文共 2684 字,大约阅读时间需要 8 分钟。

IP抓包分析

抓包网址:www.2345.com

本机IP:172.31.116.111

目的网址IP:42.62.30.180

 传输层TCP报文格式

TCP协议的报文格式:整个报文由报文头部和数据两部分组成。

 TCP报文格式:

16位源端口(Source Port):53353

 

 16位目的端口(Destination Port):443

 32位序列号(Sequence Number):0

 

 32位确认号(Acknowledgement Number):0

 

 

 

 

首部长度(Header Length):32bytes

 保留字段(Reserved):000

紧急URG:0

确认ACK:0

推送PuSH:0

复位ReSeT:0

同步SYN:1

终止FIN:0

 

 16位窗口字段:65535

 

 

 16位TCP校验和(Checksum):0x69a7

 

 16位紧急指针(Urgent pointer):0

 

 选项(Option)

 

 TCP协议的连接管理

  TCP是面向连接的传输层协议,所谓面向连接就是在真正的数据传输开始前要完成连接建立的过程,否则不会进入真正的数据传输阶段。

  TCP的连接建立过程通常称为三次握手,步骤如下:

步骤1

 172.31.116.111的TCP向42.62.30.180发出连接请求报文段,其首部中的同步为SYN=1,并选择序号seq=0,表明传送数据的第一个数据字节的序号是0。

 

 步骤2

42.62.30.180的TCP收到连接请求报文段后,如同意,则发回确认。ACK=1。同时42.62.30.180向172.31.116.111 发起连接请求,应使SYN=1,自己选择的序号seq=0。

 

 步骤3

  172.31.116.111收到此报文段后向42.62.30.180发出确认,其ACK=1,确认号ack=1。172.31.116.111的TCP通知上层应用进程,连接已经建立。

 

 网络层协议的报文格式

  网络层位于TCP/IP协议栈数据链路层和传输层中间,网络层接受传输层的数据报文,分段为合适的大小,用IP报文头部封装,交给数据链路层。

 常见网络层协议     

IP协议      ICMP协议      ARP协议

 IP包格式

 

 抓包分析:

 

 

 1、

 版本(version):IP协议,4代表IPv4协议

 2、

 报文长度(header length):IP报头的长度

 3、

 服务类型:优先级标志位和服务类型标志位,被路由器用来进行流量的优先排序。

 IPv4报头中IP优先级的定义是相同的,CS0 ~CS7的级别相等于IP优先级0 ~7。这里的DSCP差分服务代码点:CS0所以优先级为0。

 3比特可以定义8个等级。

8个优先级的定义如下:

111 -Network Control  网络控制
110 -Internetwork Control  网间控制
101 -Critic  关键
100 - FlashOverride  疾速
011 -Flash  闪速
010 -Immediate 快速
001 -Priority  优先
000 -Routine  普通

优先级6和7一般保留给网络控制数据使用,比如路由。

优先级5推荐给语音数据使用。
优先级4由视频会议和视频流使用。
优先级3给语音控制数据使用。
优先级1和2给数据业务使用。
优先级0为缺省标记值。
在标记数据时,既可以使用数值,也可以使用名称(英文名称)。

 

 ECN:00,表示不支持ECN

 

 4

 

总长度(total length):IP报头加上IP报头上层协议的总长度

 5

 标识符(identification):表示该片是由那个数据包分片出来的,如果标识符相同,说明这些分片是由同一个数据包分片出来的

 MTU最大传输单元,默认网络中数据包不能超过1500个字节,如果超过,路由器或交换机必须对其进行分片,否则将会被丢弃

 6

 标志(flags):长度为上比特

第一个比特:保留位,没有意义

第二个比特:为1 代表可分片,为0代表不能被分片

第三个比特:为1,表示后面还有分片,为0,表示为最后一个分片

片偏移(fragment offset):将收到的数据包从第一个分片和最后一个分片进行整理,整合为一个完整的数据包

 7

 生存时间(time to live):TTL,有三个默认的值64(代表数据包的目的设备操作系统为Linux)、128(代表为windows 操作系统)、255(代表是一台路由器),每经过一台路由器,TTL值会减一,如果减到零,网络中的设备会丢弃该数据包,目的是防止数据包在网络中不停的被发送,避免发生路由环路。

这里的数字为:49。

8

 协议(protocol):为6代表IP报头上面承载的是TCP协议

 9

 报头检验和(header checksum):检测报文的完整性

 10

 源IP地址和目的IP地址:供路由选路

ICMP的报文格式分析

实验原理: 

ping是用来测试网络连通性的命令,一旦发出ping命令,主机会发出连续的测试数据包到网络中,在通常的情况下,主机会收到回应数据包,ping采用的是ICMP协议。

ICMP的报文格式

 

打开命令行窗口,执行命令:ping www.2345.com:

 

 

这时可以看到数据包抓取页面抓取到了8包,与命令行显示的已发送和已接受的包的数量是一致的:

 

 

ICMP的报文格式只有两种:

一:Type: 8 (Echo (ping) request)

类型:8(回应请求)代码/编码:0

校验和: 0x4d4e

 

 

 

二:Type: 0 (Echo (ping) reply)

类型:0(回应应答)

代码/编码:0

校验和: 0x554e

 

 

数据链路层帧结构分析

数据链路层有两个子层:逻辑链路接入控制子层LLC ,媒体接入控制子层MAC。

由于TCP/IP体系经常使用的局域网是DIX EthernetV2 而不是802.3标准中的几种局域网,且很多厂商生产的适配器仅有MAC协议而没有LLC协议,LLC作用已不大。所以一般都是分析MAC

 

以太网帧结构如下:

以太网的MAC帧格式 

 

 

抓包如下,抓的网址为www.2345.com。

 

 

目的MAC地址 Destination 6个字节  54 ee 75 a7 45 36

 

源MAC地址 Source  6个字节 04 f9 38 c9 6a 22

 

 

 

类型 Type 2字节 0800

 

 

帧检验序列在数据帧收到后会删除。

 

转载于:https://www.cnblogs.com/1743875985qq/p/9986280.html

你可能感兴趣的文章
easyui传入map的数据前台展示出tree格式数据
查看>>
悲观的思考,乐观的生活.我们既需要思考的深度,也需要生活的温度!
查看>>
java.math.BigDecimal
查看>>
Vitamio中文API文档(4)—— VitamioInstaller
查看>>
河内之塔
查看>>
图像处理之基础---内窥镜医学图像增强
查看>>
yii框架常用url地址
查看>>
python3.4学习笔记(十六) windows下面安装easy_install和pip教程
查看>>
MyGUI 解析
查看>>
Linux中的ls命令详细使用
查看>>
graph-tool文档(一)- 快速开始使用Graph-tool - 2.属性映射、图的IO和Price网络
查看>>
graph-tool 练习
查看>>
easyui treegrid逐步加载
查看>>
GraphicsLab Project之辉光(Glare,Glow)效果 【转】
查看>>
<转>Python: __init__.py 用法
查看>>
Linux Curl命令
查看>>
046 SparlSQL中的函数
查看>>
Zookeeper 的 Lua 绑定(二)
查看>>
-27979 LoadRunner 错误27979 找不到请求表单 Action.c(73): Error -27979: Requested form not found...
查看>>
[LeetCode] Minimum Depth of Binary Tree
查看>>