计算机网络三次握手抓包分析,抓包分析篇

ARP协议抓包分析

ARP时根据ip地址获取物理地址的一个TCP/IP协议。

ARP工作过程分为请求过程、响应过程。

ARP缓存包含一个或多个表用于存储IP地址及其经过解析的MAC地址。每个表又称为arp缓存表

局域网任何一台主机中都有一个ARP缓存表

ARP命令

语法

arp[-a [InetAddr] [-N IfaceAddr]] [-g [InetAddr] [-N IfaceAddr]] [-d InetAddr [IfaceAddr]] [-s InetAddr EtherAddr [IfaceAddr]]

参数

-a InetAddr [ -N IfaceAddr] 显示所有接口当前ARP缓存表

-g InetAddr [ -N IfaceAddr]  与 -a 相同。

-d InetAddr [IfaceAddr]

删除指定的 IP 地址项,此处的 InetAddr 代表 IP 地址。对于指定的接口,要删除表中的某项,请使用 IfaceAddr 参数,此处的 IfaceAddr 代表指派给该接口的 IP 地址。要删除所有项,请使用星号 (*) 通配符代替 InetAddr。

Netsh 可以支持多个win2000组件

允许从本地或远程显示或者修改当前正在运行的计算机网络配置。netsh还提供了一个脚本功能,可以对指定的计算机批处理运行一组命令。

捕获ARP协议包

ARP包不会主动发送 需要主机进行通信才可以

分析ARP协议包

请求协议

应答协议

ARP请求包

ARP响应包

互联网协议 (ip)抓包分析

捕获ip数据包

TCP/IP协议定义了一个在因特网上传输的包称为ip数据报 是一个与硬件无关的虚拟包。

捕获ip协议包设计到一个TTL。 ping ip/网址来捕获。

捕获ip分片数据包

数据包超过1500个字节就需要将该包进行分片发送。

ip数据报首部格式

存活时间TTL

IP分片却不同类型网络时

数据报分片是将一个数据流分为更小的片段, 是IP用于解决跨越不同类型网络时可靠传输的一个特性。

分片大小基于第二层数据链路层所使用传输单元的大小。

分析ip首部

以太网帧头部信息 mac dc:fe  目标mac a0:88

ipv4包头部信息

源ip地址192.168.5.2 目标ip 192.168.1.195

分析IP数据包中TTL的变化 time to live

分析同网段中数据包的TTL值

echo请求 echo响应

64给65发送请求包

两个包IP不是同一个网络 经过路由

分析不同网段中数据包的TTL值 time to live

ip分片数据包分析

223页。

UDP协议概述

UDP协议就是一种无连接的协议。作用就是将网络数据流量压缩成数据包的形式。

udp特点:

1.面向无连接

UDP协议,一样会在物理线路上创建一条“虚拟信道”,否则UDP协议无法传输数据,但是,当UDP协议传完数据后,这条“虚拟信道”就被立即注销了

2.数据包

不存在粘包问题

3 效率高

4 丢包乱序

UDP 协议是无连接的数据传输协议并且无重传机制,会发生丢包、收到重复包、乱序等情况。而对于数据精确性要求不高的状态数据以及视频数据,丢包的影响不大。

5 可进行广播

捕获UDP数据包

分析UDP数据包

TCP协议抓包分析

由来、

端口是为TCP协议通信提供服务的端口 1~102 标准端口组, 1024~6555是临时端口组

三次握手、四次挥手。

捕获TCP数据包

用户想要捕获TCP四次断开的数据包时 就需要手动地断开客户端与服务器的链接。

TCP数据包分析

TCP首部

TCP首部格式

分析TCP三次握手

该包大小54字节

以太网帧

源mac a0 目标mac dc:

ipv4

传输层首部的详细信息。

分析TCP的四次断开

ICMP协议概述

ICMP时互联网控制报文协议。 是TCP/IP协议族的一个子协议,用于IP主机、路由器直接传递控制消息。非常容易被用于攻击网络上的路由器和主机。

捕获ICMP协议包

ICMP过滤器。 4个请求包 4个响应包

捕获请求超时的包

执行tracert命令,捕获响应超时的数据包。time to live 64.

捕获目标主机不可到达的数据包

ping一个不存在的主机

ICMP协议首部格式

ICMP请求报文类型、 ICMP响应报文类型、 ICMP协议提供的诊断报文类型。

分析ICMP— Echo Ping 请求包

分析ICMP——Echo Ping响应包

同上。

ICMP请求超时数据包

目标主机不可达的数据包

DHCP数据抓包分析

DHCP是一个局域网的网络协议,是哟个UDP协议工作。

作用: 为互联网上主机提供地址和配置参数。DHCP基于Client/Server工作模式DHCP服务为主机分配IP地址和提供主机配置参数

DHCP工作流程 UDP

1、发现阶段 即DHCP客户端寻找DHCP服务器的阶段。

2、提供阶段 即DHCP服务器提供IP地址的阶段

3、选择阶段 即DHCP客户机选择某台DHCP服务器提供的IP地址阶段。

4、确认阶段 即DHCP确认所提供的IP地址阶段

DHCP数据抓包 BOOTP。

DHCP报文格式

DHCP报文种类

发现数据包

响应数据包

ff::ff广播地址

请求数据包

DNS抓包分析

DNS是一种组织成域层次结构的计算机和网络服务命名系统。

DNS的系统结构

DNS系统解析过程 https://blog.csdn.net/yipiankongbai/article/details/25031461

DNS采用服务器/客户端(C/S方式工作)

捕获DNS数据包

分析DNS数据包

DNS查询数据包

dns查询包

DNS响应数据包

HTTP协议抓包分析

HTTP协议是用于从WWW服务器传输超文本到本地浏览器的传送协议。

HTTP工作流程

HTTP是一个无状态的协议。

一次HTTP操作称为一个事务,其工作过程可分为四步:

1)首先客户机与服务器需要建立连接。TCP三次握手与服务器建立连接。

2)TCP建立连接后,客户机发送一个请求给服务器,请求方式的格式为:统一资源标识符(URL)、协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。

3)服务器接到请求后,给予相应的响应信息,其格式为一个状态行,包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。

4)客户端接收服务器所返回的信息通过浏览器显示在用户的显示屏上,然后客户机与服务器断开连接。

如果在以上过程中的某一步出现错误,那么产生错误的信息将返回到客户端,有显示屏输出。对于用户来说,这些过程是由HTTP自己完成的,用户只要用鼠标点击,等待信息显示就可以了。

持久连接和非持久连接

1、非持久连接

“非持久连接”的概念

某网页由最基本的 HTML 和10个JPEG 图像构成,10个JPEG 图像文件存放在同一台服务器中。设这个网页的URL为www.server.com/somepath/index.html。如果用户请求该网页并采用“非持久连接”,那么在HTTP 客户(通常是用户浏览器)和服务器之间将发生以下操作:

1.  HTTP 客户端初始化一个与服务器主机www.server.com中的HTTP服务器的TCP 连接。服务器使用默认端口80监听来自HTTP客户的建立连接请求。

2.  HTTP客户端经由与TCP关联的本地Socket发出一个HTTP请求消息(Request)。这个消息中包含路径名/somepaht/index.html。

3.  HTTP服务器经由与TCP关联的本地Socket接收到这个请求消息,再从服务器主机的内存或者硬盘中取出文件/somepath/index.html,经由同一Socket向 HTTP客户端发送包含该文件的响应消息(Response Message)。

4.  HTTP服务器通知TCP服务层关闭这个TCP连接;TCP服务层并不立即关闭这个连接,而是在客户收到刚才那个响应消息后才会真正终止这个连接。

5.  HTTP客户端经由同一Socket接收这个响应消息(Response Message)。TCP连接随后终止。客户端所收到的消息中封装了客户端所请求的 HTML文件。客户端浏览器从中取出这个文件,加以分析后发现这个文件中还有有10个JPEG对象引用。

6.  对每个引用到的JPEG对象重复步骤1~4。

在持久连接情况下,服务器在发出响应后保持TCP连接继续打开着。同一客户/服务器之间的后续请求和响应可以通过这个连接传递。整个Web页面上,比如 1个基本HTML和10个JPEG对象的页面,可以通过单个的持久TCP连接发送。甚至存放在同一个服务器中的多个Web页面也可以通过单个持久TCP连接发送。

捕获HTTP数据包

使用捕获过滤器tcp

对数据包着色

过滤使用不同方法的http包

导出数据包

颜色标记出该包所在的整个会话  过滤器筛选。

HTTP报文格式  https://www.cnblogs.com/CodingUniversal/p/7524088.html

请求头域

https://www.jb51.net/article/51951.htm

HTTP的头域包括通用头、请求头、响应头和实体头四个部分。每个头域由一个域名,冒号(:)和域值三部分组成。

通用头部是客户端和服务器都可以使用的头部,可以在客户端、服务器和其他应用程序之间提供一些非常有用的通用功能,如Date头部。

请求头部是请求报文特有的,它们为服务器提供了一些额外信息,比如客户端希望接收什么类型的数据,如Accept头部。

响应头部便于客户端提供信息,比如,客服端在与哪种类型的服务器进行交互,如Server头部。

实体头部指的是用于应对实体主体部分的头部,比如,可以用实体头部来说明实体主体部分的数据类型,如Content-Type头部。

常见状态代码、状态描述的说明如下。

200 OK:客户端请求成功。

400 Bad Request:客户端请求有语法错误,不能被服务器所理解。

401 Unauthorized:请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用。

403 Forbidden:服务器收到请求,但是拒绝提供服务。

404 Not Found:请求资源不存在,举个例子:输入了错误的URL。

500 Internal Server Error:服务器发生不可预期的错误。

503 Server Unavailable:服务器当前不能处理客户端的请求,一段时间后可能恢复正常,举个例子:HTTP/1.1 200 OK(CRLF)。

分析GET方法的HTTP数据包

分析HTTP请求包

分析 HTTP响应包

http.request.method=="POST"

显示捕获文件的原始内容  linux 安装Xplico

HTTPS协议概述

HTTPS协议是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL

HTTP和HTTPS协议的区别https://www.cnblogs.com/changfengwhy/p/11169421.html

HTTPS是 HTTP+ SSL/TLS两部分组成。

HTTPS和HTTP的区别主要如下:

1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。

2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。

3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

HTTPS工作流程

SSL概述  https://blog.csdn.net/baidu_36649389/article/details/53537134

SSL(secure socket lawyer)安全套接字协议是web浏览器与web服务器之间进行安全交换信息的协议,提供两个基本的服务:保密和鉴别。

SSL协议建立过程:

总共包括4个握手协议 1个警告协议 1个记录协议,

捕获HTTPS数据包 https

使用捕获过滤器

客户端发出请求

服务器响应

证书信息

密钥交换

FTP协议抓包分析

FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。用户可以通过它把自己的PC机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)察看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去。

ftp常用命令

本文链接:https://blog.csdn.net/super_tianxinmomo/article/details/80897727

FTP应答码&响应码

https://blog.csdn.net/cbffyx/article/details/78891603

ftp

电子邮件抓包分析

邮件客户端通常指使用IMAP/POP3/SMTP/APOP/ESMTP协议手法电子邮件的软件

你可能感兴趣的:(计算机网络三次握手抓包分析)