抓包工具Wireshark分析DHCP协议
Wireshark抓包实例分析
Wireshark抓包实例分析通信工程学院010611班赖宇超01061093一.实验目的1.初步掌握Wireshark的使用方法,熟悉其基本设置,尤其是Capture Filter和Display Filter 的使用。
2.通过对Wireshark抓包实例进行分析,进一步加深对各类常用网络协议的理解,如:TCP、UDP、IP、SMTP、POP、FTP、TLS等。
3.进一步培养理论联系实际,知行合一的学术精神。
二.实验原理1.用Wireshark软件抓取本地PC的数据包,并观察其主要使用了哪些网络协议。
2.查找资料,了解相关网络协议的提出背景,帧格式,主要功能等。
3.根据所获数据包的内容分析相关协议,从而加深对常用网络协议理解。
三.实验环境1.系统环境:Windows 7 Build 71002.浏览器:IE83.Wireshark:V 1.1.24.Winpcap:V 4.0.2四.实验步骤1.Wireshark简介Wireshark(原Ethereal)是一个网络封包分析软件。
其主要功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。
其使用目的包括:网络管理员检测网络问题,网络安全工程师检查资讯安全相关问题,开发者为新的通讯协定除错,普通使用者学习网络协议的相关知识……当然,有的人也会用它来寻找一些敏感信息。
值得注意的是,Wireshark并不是入侵检测软件(Intrusion Detection Software,IDS)。
对于网络上的异常流量行为,Wireshark不会产生警示或是任何提示。
然而,仔细分析Wireshark 撷取的封包能够帮助使用者对于网络行为有更清楚的了解。
Wireshark不会对网络封包产生内容的修改,它只会反映出目前流通的封包资讯。
Wireshark本身也不会送出封包至网络上。
2.实例实例1:计算机是如何连接到网络的?一台计算机是如何连接到网络的?其间采用了哪些协议?Wireshark将用事实告诉我们真相。
DHCP完整过程详解及Wireshark抓包分析
DHCP完整过程详解及Wireshark抓包分析DHCP,Dynamic Host Configuration Protocol,动态主机配置协议,简单来说就是主机获取IP地址的过程,属于应⽤层协议。
DHCP采⽤UDP的68(客户端)和67(服务器)端⼝进⾏通信。
【过程】DHCP过程主要为DHCP Discover-->DHCP Offer-->DHCP Request-->DHCP Ack四个过程。
通过Wireshark抓取DHCP获取IP过程的数据报⽂。
1、开Wireshark抓包2、PC当前已有IP,使⽤cmd命令释放IP(ipconfig /release),并重新获取IP(ipconfig /renew)3、停⽌抓包,使⽤bootp过滤报⽂。
4、可以看到图中的5个报⽂,其中DHCP Release报⽂为PC释放IP时发出的报⽂。
获取IP时,PC会发送DHCP Discover⼴播报⽂,由于当前PC没有IP,故源IP为0.0.0.0;特别要注意到的是,PC会随机出⼀个Transaction ID,如果之后收到的Offer报⽂中的Transaction ID与PC模拟出的不同,PC会将该Offer报⽂直接丢弃。
DHCP Offer报⽂DHCP Request报⽂DHCP Ack报⽂【模拟服务器发送Offer报⽂的过程及注意事项】1、保证服务器与客户端的连通性2、准备好⼀个Offer报⽂(可编辑)3、使⽤Wireshark抓取客户端发出的Discover报⽂,确定当前客户端随机出的Transaction ID4、更改Offer报⽂中的Transaction ID与Discover报⽂中⼀致5、使⽤发包软件发送Offer报⽂注:Transaction ID【地址租期】DHCP服务器提供的每个IP地址都有相应的租⽤期,在Offer报⽂中的IP Address Lease Time中可以看到。
实验7_使用Wireshark分析DHCP协议
实验7_使用Wireshark分析DHCP协议DHCP(Dynamic Host Configuration Protocol)是一种网络协议,用于动态分配IP地址、子网掩码、默认网关、DNS服务器等网络配置信息给计算机设备。
在本实验中,我们将使用Wireshark工具来分析DHCP协议的工作流程和数据包的结构。
首先,我们需要准备一个局域网环境,并在其中设置一个DHCP服务器和至少一个客户端设备。
DHCP服务器负责为客户端设备分配IP地址和其他网络配置信息。
客户端设备在启动时会发送DHCP请求,以获取分配给它的IP地址和其他配置信息。
使用Wireshark进行DHCP协议分析的步骤如下:1. 打开Wireshark软件,并选择适当的网络接口进行抓包。
在“捕获”选项卡中,选择正确的网络接口,然后点击“开始”按钮开始抓包。
2.在客户端设备上,启动DHCP服务发现过程。
客户端将发送一个DHCP发现广播消息,以寻找可用的DHCP服务器。
3. 在Wireshark中,我们可以看到DHCP发现消息的数据包。
可以通过在过滤器栏中输入“bootp”或“dhcp”来过滤只显示与DHCP相关的数据包。
4.DHCP服务器接收到DHCP发现消息后,会回复一个DHCP提供消息。
该消息包含了DHCP服务器可以提供给客户端的IP地址和其他配置信息。
5.客户端接收到DHCP提供消息后,会发送一个DHCP请求消息,以确认接受DHCP服务器提供的配置信息。
6.DHCP服务器接收到DHCP请求消息后,会发送一个DHCP确认消息,将IP地址和其他配置信息分配给客户端。
7. 在Wireshark中,我们可以查看这些DHCP消息的详细信息。
可以看到每个消息的源IP地址、目的IP地址、消息类型、配置选项等。
8.客户端设备在接收到DHCP确认消息后,将使用分配给它的IP地址和其他配置信息来配置自己的网络连接。
通过分析DHCP协议的数据包,我们可以了解到DHCP协议的工作流程和数据包的结构。
wireshark协议分析
wireshark协议分析Wireshark协议分析Wireshark是一个功能强大的网络协议分析工具,它能够捕获、分析和显示网络数据包中的数据。
通过使用Wireshark,我们可以深入了解网络通信过程中的协议细节,追踪数据包的传输路径,发现潜在的安全风险,并进行网络性能优化。
在进行协议分析之前,我们首先需要捕获网络数据包。
Wireshark支持在多个平台上运行,包括Windows、Mac OS和Linux。
它能够通过本地网络接口或远程连接捕获网络数据包。
当我们开始捕获数据包时,Wireshark会显示一个实时的数据包列表,并提供详细的信息,如源IP地址、目标IP地址、协议类型、端口号等。
在开始分析数据包之前,我们可以通过使用过滤器来限制需要关注的数据包。
Wireshark支持使用协议、源IP地址、目标IP地址、端口号等作为过滤条件。
通过设置适当的过滤器,我们可以只关注我们感兴趣的数据包,而忽略其他不相关的数据。
一旦我们捕获了数据包,我们就可以开始进行协议分析了。
Wireshark提供了许多工具和功能来帮助我们分析协议。
其中一个很有用的功能是重构TCP流。
当网络中的数据包是以多个片段的形式传输时,Wireshark可以将它们重新组装成完整的数据流,以便我们更好地分析和理解通信内容。
此外,Wireshark还可以对数据包进行解码。
它支持解码多种网络协议,包括TCP/IP、UDP、HTTP、DNS等。
通过解码数据包,我们可以查看每个协议中的字段和值,以便更好地理解和分析网络通信过程。
在分析数据包时,我们还可以使用Wireshark提供的统计功能。
Wireshark可以统计网络中的数据包数量、协议类型、数据包大小等信息,并以图表的形式展示。
通过分析这些统计信息,我们可以了解网络的负载情况、流量模式以及网络性能状况。
除了基本的协议分析功能外,Wireshark还支持操作和导出数据包。
我们可以对数据包进行重发、制作过滤器、设置标记等操作。
Wireshark抓包实验
Wireshark抓包实验⼀、实验名称利⽤Wireshark抓包并分析 TCP/IP 协议⼆、实验⽬的通过实验,了解和掌握报⽂捕获⼯具 Wireshark 的使⽤⽅法和基本特点,使⽤ Wireshark 捕获⽹络报⽂,并分析各种⽹络协议的报⽂格式和⼯作过程。
三、实验内容使⽤ Wireshark 捕获⽹络报⽂,分析以太⽹、ARP、IP、TCP、DNS 和 HTTP 等协议的报⽂格式和⼯作过程。
四、实验步骤DNS分析在 cmd 下运⾏:nslookup –type=Anslookup –type=NS nslookup –type=MX nslookup –type=A 然后⽤Wireshark捕获报⽂并分析DNS和UDP协议的报⽂格式和⼯作过程。
ICMP分析在cmd下运⾏pingtracert然后⽤Wireshark捕获报⽂并分析 ICMP 报⽂格式和⼯作过程。
TCP/IP分析a) 在浏览器输⼊ ⽹址后,然后⽤ Wireshark 捕获报⽂并分析HTTP,TCP,IP,ARP和以太⽹等协议的报⽂格式和⼯作过程。
b) 运⾏各⾃编写的 UDP 和 TCP 客户/服务器程序并进⾏抓包分析。
五、实验结果及分析(⼀)DNS分析通过ipconfig命令查看IP、⽹关地址IP地址192.168.43.217默认⽹关192.168.43.1DNS报⽂格式DNS分析⼤体相同,就选择其⼀进⾏分析1.在cmd下运⾏nslookup -type=A ⾮权威应答:110.53.188.133 113.247.230.248 202.197.9.133应答服务器地址为192.168.43.1,为默认⽹关地址利⽤wireshark进⾏抓包分析,筛选DNS报⽂,本次运⾏有4个DNS报⽂,可以看出对应请求包和响应包的源IP与⽬的IP刚好相反。
Query这是⼀个请求报⽂。
⾸先主机发送⼀个 DNS 报⽂。
DNS 采⽤ UDP 协议⽀持。
实验5使用Wireshark分析IP协议
实验五使用Wireshark分析IP协议一、实验目的1、分析IP协议2、分析IP数据报分片二、实验环境与因特网连接的计算机,操作系统为Windows,安装有Wireshark、IE等软件。
三、实验步骤IP协议是因特网上的中枢。
它定义了独立的网络之间以什么样的方式协同工作从而形成一个全球户联网。
因特网内的每台主机都有IP地址。
数据被称作数据报的分组形式从一台主机发送到另一台。
每个数据报标有源IP地址和目的IP地址,然后被发送到网络中。
如果源主机和目的主机不在同一个网络中,那么一个被称为路由器的中间机器将接收被传送的数据报,并且将其发送到距离目的端最近的下一个路由器。
这个过程就是分组交换。
IP允许数据报从源端途经不同的网络到达目的端。
每个网络有它自己的规则和协定。
IP能够使数据报适应于其途径的每个网络。
例如,每个网络规定的最大传输单元各有不同。
IP允许将数据报分片并在目的端重组来满足不同网络的规定。
打开已俘获的分组,分组名为:dhcp_isolated.cap。
感兴趣的同学可以在有动态分配IP的实验环境下俘获此分组,此分组具体俘获步骤如下:1、使用DHCP获取IP地址(1)打开命令窗口,启动Wireshark。
(2)输入“ipconfig /release”。
这条命令会释放主机目前的IP地址,此时,主机IP 地址会变为0.0.0.0(3)然后输入“ipconfig /renew”命令。
这条命令让主机获得一个网络配置,包括新的IP地址。
(4)等待,直到“ipconfig /renew”终止。
然后再次输入“ipconfig /renew” 命令。
(5)当第二个命令“ipconfig /renew” 终止时,输入命令“ipconfig/release” 释放原来的已经分配的IP地址(6)停止分组俘获。
如图1所示:图1:Wireshark俘获的分组下面,我们对此分组进行分析:IPconfig 命令被用于显示机器的IP地址及修改IP地址的配置。
wireshark抓包分析
wireshark抓包分析Wireshark抓包分析是一种网络安全技术,通过对网络数据包的捕捉和分析,可以深入了解网络通信过程中所传输的数据内容和各层协议的运行情况。
本文将从Wireshark抓包的基本原理、抓包的过程、常见应用场景以及分析方法等方面进行详细介绍。
首先,我们来了解一下Wireshark抓包的基本原理。
Wireshark是一款开放源代码的网络协议分析工具,可以在不同的操作系统上运行。
它使用网络接口(如网卡)来捕捉通过该接口的数据包,并对数据包进行解析和展示。
通过Wireshark的捕包功能,我们可以观察和分析网络通信过程中发送和接收的数据包,从而深入了解网络的运行情况和数据内容。
要进行Wireshark抓包,首先需要安装Wireshark软件,并打开它的图形界面。
在Wireshark的主界面上,我们可以选择要进行抓包的接口,如以太网、无线网卡等。
选择好接口后,点击开始按钮即可开始抓包。
在抓包过程中,Wireshark会实时捕捉到通过选择的接口发送和接收的数据包,并以列表的形式展示出来。
Wireshark抓包可以应用于各种网络场景中,例如网络故障排查、网络性能优化、网络安全分析等。
在网络故障排查方面,我们可以通过抓包分析来确定网络中出现的故障原因,找出导致网络延迟、丢包或连接中断的根源。
在网络性能优化方面,我们可以通过抓包分析来评估网络的带宽使用情况,找出网络瓶颈所在,并采取相应的措施来提高网络性能。
在网络安全分析方面,我们可以通过抓包分析来检测和识别网络中的恶意流量和攻击行为,以及监测网络中的异常行为和数据泄露等情况。
对于Wireshark抓包的分析方法,首先我们可以从数据包的基本信息入手,了解到达和离开主机的数据包的源地址和目的地址。
通过IP地址和端口号的对应关系,我们可以知道数据包的发送者和接收者,以及它们之间建立的连接。
其次,我们可以进一步分析数据包的内容,了解TCP、UDP、HTTP等各个层次的协议头的具体内容和传输过程。
Wireshark对DHCP建立过程进行抓包分析
DHCP:Dynamic Host Configuration Protocol 给主机动态的分配IP地址DHCP Server :UDP67DHPC Client:UDP68DHCP服务器分配IP的过程:1.DHCP客户端发送DHCP Discover消息,广播,请求分配IP2.DHCP服务器提供DHCP Offer消息,回应,表示可提供IP3.DHCP客户端发送DHCP Request消息,选定一个服务器,并请求IP租用4.DHCP服务器发送ACK消息,确认地址租用给客户端Wireshark过滤命令:bootp技巧:1.采用断开网络再连接2.win+R——CMD——输入ipconfig /release断开连接,输入ipconfig /renew重连Wireshark抓包对DHCP IP分配过程进行分析:1.DHCP客户端以广播的形式发送Discover请求IP租用2.范围内的DHCP服务器接收到discover请求后,会向客户端发出DHCP Offer报文作为回应,该报文包含该DHCP服务器可向DHCP客户端提供的IP地址以及该DHCP服务器自己的IP地址信息3.DHCP客户端会选择最先接收到的DHCP Offer进行处理,并以广播的形式发送DHCP Request报文,该报文会加入对应DHCP服务器的地址以及所需要的IP4.DHCP服务器接收到DHCP Request报文后,会判断报文中的服务器IP是否与自己相同。
如果不同,不做任何处理,只清除相应的IP分配记录;如果相同,服务器会向客户端发送ACK报文,确认可以使用,并且附上相应的租期。
5.DHCP客户端接收到ACK信息后,会检查该IP是否能够使用,如果可以就直接使用该IP并使用租期自动启用延续过程。
如果发现IP已被使用,则发送DHCP Decline报文告知服务器禁用该IP然后重新发起Discover。
6.当租期不到1/2左右时候,如果还要继续使用该IP,客户端会自动向服务器发起续租请求报文Request报文,服务器会向客户端发送ACK报文确认。
用Wireshark抓取arp、snmp、icmp、dhcp等报文的方法
1.ARP 基础知识学习1.1.ARP 协议的概念ARP ,即地址解析协议,实现通过IP得知其物理地址。
在CP/IP网络环境下,每个主机分配了一个32位的IP地址,这种互联网地址是在网际范围表示主机的一种逻辑地址。
为了让报文在物理线路上的传输,必须知道对方目的主机的物理地址。
这样就存在把IP地址变成物理地址的转换问题。
一以太网环境为例,为了正确的向目的主机传送报文,就必须将主机的32位IP地址转换成48位的以太网的地址。
这就需要在互联层有一组服务将IP地址转换成物理地址,这组协议就是ARP协议。
1.2 ARP 协议实现的基本功能在以太网协议中,同一局域网中的一台主机要和另一台主机进行直接通信,必须知道目标主机的MAC地址。
而在TCP/IP协议栈中,网络层和传输层只关心目标主机的IP地址。
这就导致再以太网中使用IP协议时,数据链路层的以太网协议连接到上层IP协议提供的数据中,只包含目的的IP地址。
于是需要一种方法,更具目的主机的IP的地址,获取其MAC 地址。
这就是ARP协议要做的事。
所谓地址解析(address resolution)就是主机再发送阵前将目标地址转换成目标MAC地址的过程。
另外,当发送主机和目标及不在同一个局域网时,即便知道目的主机的MAC地址,两者也不能直接通信,必须有路由转发才行。
所以此时,发送主机通过ARP协议获得的将不是目的主机的真实MAC地址,而是一台可以通往局域网外地路由器的某个端口的MAC 地址。
于是此后发送主机发送目的和主机的所有帧,都将发往该路由,通过他向外发送。
这种情况成为ARP代理(ARP Proxy).1.3 工作的原理每台装有TCP/IP协议的电脑里都有一个ARP缓存表,表里IP与MAC地址是一一对应的。
例如,主机A (192.168.1.5)主机B(192.168.1.1)发送数据.当发送数据时,主机A 会在自己的ARP缓存表中查找是否有目标IP地址。
学习使用Wireshark进行网络协议分析
学习使用Wireshark进行网络协议分析一、Wireshark的概述Wireshark是一款开源的网络协议分析工具,广泛应用于网络工程、安全审计以及故障排查等领域。
通过Wireshark,我们能够捕获网络中的数据包,并对数据包进行详细的分析,以便深入了解网络通信的细节及问题的根源。
本章将介绍Wireshark的基本概念和安装方法。
二、Wireshark的安装和配置Wireshark可在Windows、Linux和MacOS等系统上安装,本节将以Windows系统为例,介绍Wireshark的安装和配置。
首先,我们需要从官方网站下载Wireshark的安装包,并按照向导进行安装。
安装完成后,我们还需要配置网络接口以便Wireshark可以捕获网络数据包。
三、Wireshark的基础用法Wireshark提供了丰富的功能和工具来分析网络数据包。
本章将介绍Wireshark的基础用法,包括启动Wireshark、选择捕获接口、开启数据包捕获、过滤数据包等操作。
此外,还将介绍如何对数据包进行解析和查看各个协议的详细信息。
四、Wireshark的高级特性除了基础用法外,Wireshark还提供了诸多高级特性,如统计分析、流量图表、数据包重组等功能。
本章将详细介绍这些高级特性的使用方法和应用场景,并结合实例展示如何利用这些功能解决实际问题。
五、Wireshark的常见问题和解决方法在使用Wireshark过程中,会遇到一些常见的问题和错误,本章将列举一些典型问题,并提供相应的解决方法。
包括如何处理捕获到的大量数据包、如何应对捕获不到数据包的情况以及如何解决数据包乱序等问题。
六、Wireshark与网络安全Wireshark不仅可以用于网络协议分析,还可以应用于网络安全领域。
本章将介绍如何利用Wireshark进行网络安全分析和入侵检测,以及如何分析恶意代码和网络攻击行为。
同时,还将介绍如何使用Wireshark排查网络安全事件和提高网络的安全性。
DHCP协议与抓包分析
1.DHCP协议简介:DHCP,全称是Dynamic Host Configuration Protocol,中文名为动态主机配置协议,它的前身是BOOTP,他工作在OSI的应用层,是一种帮助计算机从指定的DHCP服务器获取它们的配置信息的自举协议【DHCP工作在三层,但是它也有二层协议的部分,使用udp协议,客户机使用端口为68,服务器使用端口为67】DHCP使用客户端/服务器模式,请求配置信息的计算机叫做DHCP客户端,而提供信息的叫做DHCP的服务器。
DHCP为客户端分配地址的方法有三种:手工配置,自动配置,动态配置DHCP最重要的功能就是动态分配,除了IP地址,DHCP分组还为客户端提供其他的配置信息,比如子网掩码,这使得客户端无需用户手动就能自动配置网络2.DHCP的工作流程:(1)DHCP Discover阶段:DHCP客户机以广播方式(因为DHCP服务器的IP地址对于客户机来说是未知的)发送DHCP Discover发现信息来寻找DHCP服务器,即向地址255.255.255.255发送特定的广播信息。
网络上每一台安装了TCP/IP协议的主机都会接收到这种广播信息,但只有DHCP服务器才会做出响应【广播】(2)DHCP Offers阶段:在网络中接收到DHCP discover发现信息的DHCP服务器都会做出响应,它从尚未出租的IP地址中挑选一个分配给DHCP客户机,向DHCP客户机发送一个包含出租的IP地址和其他设置的DHCP offer提供信息【单播】(3)DHCP Request阶段:如果有多台DHCP服务器向DHCP客户机发来的DHCP offer 提供信息,则DHCP客户机只接受第一个收到的DHCP offer提供信息,然后它就以广播方式回答一个DHCP request请求信息,该信息中包含向它所选定的DHCP服务器请求IP地址的内容。
之所以要以广播方式回答,是为了通知所有的DHCP服务器,它将选择某台DHCP服务器所提供的IP地址,并确认以网络中并没有其他客户机使用该IP地址【广播】(4)DHCP ACK(NACK)阶段:当DHCP服务器收到DHCP客户机回答的DHCP request 请求信息之后,它便向DHCP客户机发送一个包含它提供的IP地址和其他设置的DHCP ACK确认信息,告诉DHCP客户机可以使用它所提供的IP地址,然后DHCP 客户机便将其TCP/IP协议与网卡绑定,另外,除DHCP客户机选中的服务器外,其他的DHCP服务器都将收回曾提供的IP地址【单播】重新登录:以后DHCP客户机每次重新登陆网络时,就不需要再发送DHCP Discover 发现信息了,而是直接发送包含前一次所分配的IP地址的DHCP request请求信息。
DHCP报文分析
DHCP报文分析一、在windows下对DHCP过程的抓包进步骤:1、首先打开wireshark进行抓包;2、在cmd中执行ipconfig /release,该命令的作用是用来释放IP,如果出现如下提示信息,表明本地连接没有设置成自动获取;在网络连接中将本地连接设成自动获取,再次执行ipconfig /release,释放IP成功。
Wireshark抓包如图:3、执行命令ipconfig /renew,发起一个DHCP过程,分析从这里开始。
DHCP通常有Discover、Offer、Request、Ack四个阶段,wireshark抓包如下:此外还有重新登陆和更新租约,这里不作解释。
二、DHCP 协议的报文格式如下,括号内为长度: OP(1) Htype(1) Hlen(1)Hops(1)Transaction ID(4)Seconds(2)Flags(2)Ciaddr (4)Yiaddr (4)Siaddr (4)Giaddr (4)Chaddr (16)Sname (64)File (128)Options (variable )下面结合在windows 下对DHCP 过程的抓包进行分析:I 、现在,客户机没有地址,它就会发出一个DHCP Discover 报文,该报文是广播报文,所有的具有DHCP Server 功能的服务器都会收到该报文。
dhcp有8种类型的报文,每种报文的格式相同,只是报文中的某些字段取值不同。
dhcp报文格式基于bootp(引导程序协议)的报文格式Bootstrap Protocol(Discover) 表明发送的是Discover报文。
1、Message type(opt):消息类型,为1时表示是Client的请求,为2时表示是Server的应答;2、Hardware type(Htype):Client 的网络硬件地址类型,0x01表示Client 的网络硬件是10MB的以太网类型(Ethernet);3、Hardware address length(Hlen):Client 的网络硬件地址长度,6表示Client 的网络硬件地址长度是6bytes(即以太网类型的6 bytes的MAC地址);注:MAC地址,也叫硬件地址,是由48比特/bit长(6字节/byte,1byte=8bits),16进制的数字组成.0-23位叫做组织唯一标志符(organizationally unique,是识别LAN(局域网)节点的标识。
DHCP报文精细分析_加上wireshark抓包
DHCP的过程需要有个服务器,所以我装了一个windows server2003虚拟机,这样XP 和板子就可以自动获取到IP地址了。
在windows下面,开始抓报文时,首先打开wireshark,然后在cmd中执行ipconfig /release命令的作用是用来释放IP,如果这个命令执行失败,需要在网络连接中将本地连接设成自动获取。
在释放Ip后执行的更新IP命令ipconfig /renew将发起一个DHCP过程,分析从这里开始。
现在,客户机没有地址,它就会发出一个DHCPDiscover报文,该报文是广播报文,所有的具有DHCP Server功能的服务器都会收到该报文。
dhcp有8种类型的报文,每种报文的格式相同,只是报文中的某些字段取值不同。
dhcp报文格式基于bootp(引导程序协议)的报文格式1、Boot record type为1时表示是Client的请求,为2时表示是Server的应答。
2、Hardware address typeClient 的网络硬件地址类型,1表示Client 的网络硬件是10MB的以太网类型3、Hardware address lengthClient 的网络硬件地址长度,6表示Client 的网络硬件地址长度是6bytes(即以太网类型的6bytes的MAC地址)。
MAC地址,也叫硬件地址,是由48比特/bit长(6字节/byte,1byte=8bits),16进制的数字组成.0-23位叫做组织唯一标志符(organizationally unique,是识别LAN(局域网)节点的标识。
24-47位是由厂家自己分配.其中第40位是组播地址标志位4、HOPS跳数,即经过的中继数,表示当前的DHCP报文经过的DHCP RELAY(中级)的数目,每经过一个DHCP中继,此字段就会加1,此字段的作用是限制DHCP报文不要经过太多的DHCP RELAY,协议规定,当“hops”大于4(现在也有规定为16)时,这个DHCP 报文就不能再进行处理,而是丢弃。
wireshark简单的过滤规则
wireshark简单的过滤规则Wireshark是一种流行的网络协议分析工具,该工具可用于监视应用程序和网络交互,并生成网络数据包捕获,以便进行进一步的分析和诊断。
Wireshark提供了过滤功能,用于筛选特定类型的流量,以便更轻松地分析和理解数据包。
这篇文章将介绍Wireshark的基本过滤规则及其用途。
过滤规则介绍在Wireshark中,过滤规则是一个用于匹配网络数据包的表达式。
基本上,这些表达式由一个或多个过滤选项组成,其中每个过滤选项包含一个字段名称和一个值。
Wireshark支持多种过滤选项,包括源地址,目标地址,协议等等。
Wireshark可以使用过滤规则找到哪些数据包符合你提供的特定条件,方便我们查看数据包的具体内容。
以下是一些常见的Wireshark过滤规则:1. hosthost过滤规则可用于查找目标主机的数据包。
指定该选项后,Wireshark将只显示与该特定主机通信的流量。
使用该选项的过滤语法如下:host host_address其中,host_address可以是IP地址或主机名。
如果要查找源或目标地址是特定IP地址的数据包,只需将该IP地址用作host_address的参数即可。
2. ipip过滤规则用于基于IP协议来查找数据包。
该规则捕获传输层协议数据单元的所有IP数据包。
使用该规则的语法如下:ip.addr == IP_address其中,IP_address可以是源或目标IP地址,也可以是IP地址范围。
3. port端口过滤规则是最常见的过滤规则之一。
使用该规则时,可以指定TCP或UDP 端口号来查找数据包。
语法如下:tcp.port == port_number或者udp.port == port_number其中,port_number是目标端口号。
4. protocol使用协议过滤规则可以针对传输层协议类型(如TCP或UDP)进行过滤。
语法如下:tcp.protocol == “http”或者udp.protocol == “dhcp”其中,“http”和“dhcp”分别是协议名称。
最新整理8Wireshark_DHCP_v60
Supplement to Computer Networking: A Top-DownApproach, 6th ed., J.F. Kurose and K.W. Ross“Tell me and I forget. Show me and I remember. Involve me and Iunderstand.” Chinese proverb© 2005-21012, J.F Kurose and K.W. Ross, All Rights ReservedIn this lab, we’ll take a quick look at DHCP. DHCP is covered in Section 4.4.2 of the text1. Recall that DHCP is used extensively in corporate, university and home-network wired and wireless LANs to dynamically assign IP addresses to hosts (as well as to configure other network configuration information).This lab is brief, as we’ll only examine the DHCP packets captured by a host. If you also have administrative access to your DHCP server, you may want to repeat this lab after making some configuration changes (such as the lease time). If you have a router at home, you most likely can configure your DHCP server. Because many linux/Unix machines (especially those that serve many users) have a static IP address and because manipulating DHCP on such machines typically requires super-user privileges, we’ll only present a Windows version of this lab below.DHCP ExperimentIn order to observe DHCP in action, we’ll perform several DHCP-related commands and capture the DHCP messages exchanged as a result of executing these commands. Do the following2:1.Begin by opening the Windows Command Prompt application (which can befound in your Accessories folder). As shown in Figure 1, enter“ipconfig /release”. The executable for ipconfig is in C:\windows\system32. This1 References to figures and sections are for the 6th edition of our text, Computer Networks, A Top-down Approach, 6th ed., J.F. Kurose and K.W. Ross, Addison-Wesley/Pearson, 2012.2If you are unable to run Wireshark live on a computer, you can download the zip file/wireshark-labs/wireshark-traces.zip and extract the file dhcp-ethereal-trace-1. The traces in this zip file were collected by Wireshark running on one of the author’s computers, while performing the steps indicated in the Wireshark lab. Once you have downloaded the trace, you can load it into Wireshark and view the trace using the File pull down menu, choosing Open, and then selecting thedhcp-ethereal-trace-1 trace file. You can then use this trace file to answer the questions below.command releases your current IP address, so that your host’s IP address becomes0.0.0.0.2.Start up the Wireshark packet sniffer, as described in the introductory Wiresharklab and begin Wireshark packet capture.3.Now go back to the Windows Command Prompt and enter “ipconfig /renew”.This instructs your host to obtain a network configuration, including a new IPaddress. In Figure 1, the host obtains the IP address 192.168.1.1084.Wait until the “ipconfig /renew” has terminated. Then enter the same command“ipconfig /renew” again.5.When the second “ipconfig /renew” terminates, enter the command“ipconfig/release” to release the previously-allocated IP address to your computer.6.Finally, enter “ipconfig /renew” to again be allocated an IP address for yourcomputer.7.Stop Wireshark packet capture.Figure 1 Command Prompt window showing sequence of ipconfig commands that you should enter.Now let’s take a look at the resulting Wireshark window. To see only the DHCP packets, enter into the filter field “bootp”. (DHCP derives from an older protocol called BOOTP. Both BOOTP and DHCP use the same port numbers, 67 and 68. To see DHCP packets in the current version of Wireshark, you need to enter “bootp” and not “dhcp” in the filter.) We see from Figure 2 that the first ipconfig renew command caused four DHCP packets to be generated: a DHCP Discover packet, a DHCP Offer packet, a DHCP Request packet, and a DHCP ACK packet.Figure 2 Wireshark window with first DHCP packet – the DHCP Discover packet – expanded.What to Hand In:You should hand in a screen shot of the Command Prompt window similar to Figure 1 above. Whenever possible, when answering a question below, you should hand in a printout of the packet(s) within the trace that you used to answer the question asked. Annotate the printout3 to explain your answer. To print a packet, use File->Print, choose Selected packet only, choose Packet summary line, and select the minimum amount of packet detail that you need to answer the question.Answer the following questions:1.Are DHCP messages sent over UDP or TCP?2.Draw a timing datagram illustrating the sequence of the first four-packetDiscover/Offer/Request/ACK DHCP exchange between the client and server. For each packet, indicated the source and destination port numbers. Are the portnumbers the same as in the example given in this lab assignment?3.What is the link-layer (e.g., Ethernet) address of your host?4.What values in the DHCP discover message differentiate this message from theDHCP request message?5.What is the value of the Transaction-ID in each of the first four(Discover/Offer/Request/ACK) DHCP messages? What are the values of theTransaction-ID in the second set (Request/ACK) set of DHCP messages? What is the purpose of the Transaction-ID field?6. A host uses DHCP to obtain an IP address, among other things. But a host’s IPaddress is not confirmed until the end of the four-message exchange! If the IPaddress is not set until the end of the four-message exchange, then what values are used in the IP datagrams in the four-message exchange? For each of the fourDHCP messages (Discover/Offer/Request/ACK DHCP), indicate the source anddestination IP addresses that are carried in the encapsulating IP datagram.7.What is the IP address of your DHCP server?8.What IP address is the DHCP server offering to your host in the DHCP Offermessage? Indicate which DHCP message contains the offered DHCP address.9.In the example screenshot in this assignment, there is no relay agent between thehost and the DHCP server. What values in the trace indicate the absence of a relay agent? Is there a relay agent in your experiment? If so what is the IP address ofthe agent?10.Explain the purpose of the router and subnet mask lines in the DHCP offermessage.11.In the DHCP trace file noted in footnote 2, the DHCP server offers a specific IPaddress to the client (see also question 8. above). In the client’s response to the3 What do we mean by “annotate”? If you hand in a paper copy, please highlight where in the printout you’ve found the answer and add some text (preferably with a colored pen) noting what you found in what you ‘ve highlight. If you hand in an electronic copy, it would be great if you could also highlight and annotate.first server OFFER message, does the client accept this IP address? Where in the client’s RESPONSE is the client’s requested address?12.Explain the purpose of the lease time. How long is the lease time in yourexperiment?13.What is the purpose of the DHCP release message? Does the DHCP server issuean acknowledgment of receipt of the client’s DHCP request? What would happen if the client’s DHCP release message is lost?14.Clear the bootp filter from your Wireshark window. Were any ARP packets sentor received during the DHCP packet-exchange period? If so, explain the purpose of those ARP packets.。
Wireshark抓包实例分析
Wireshark抓包实例分析通信工程学院 010611班赖宇超 01061093一(实验目的1.初步掌握Wireshark的使用方法,熟悉其基本设置,尤其是Capture Filter 和Display Filter的使用。
2.通过对Wireshark抓包实例进行分析,进一步加深对各类常用网络协议的理解,如:TCP、IP、SMTP、POP、FTP、TLS等。
UDP、3.进一步培养理论联系实际,知行合一的学术精神。
二(实验原理1.用Wireshark软件抓取本地PC的数据包,并观察其主要使用了哪些网络协议。
2.查找资料,了解相关网络协议的提出背景,帧格式,主要功能等。
3.根据所获数据包的内容分析相关协议,从而加深对常用网络协议理解。
三(实验环境1.系统环境:Windows 7 Build 71002.浏览器:IE83.Wireshark:V 1.1.24.Winpcap:V 4.0.2四(实验步骤1.Wireshark简介Wireshark(原Ethereal)是一个网络封包分析软件。
其主要功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。
其使用目的包括:网络管理员检测网络问题,网络安全工程师检查资讯安全相关问题,开发者为新的通讯协定除错,普通使用者学习网络协议的第1页,共12页相关知识……当然,有的人也会用它来寻找一些敏感信息。
值得注意的是,Wireshark并不是入侵检测软件(Intrusion Detection Software,IDS)。
对于网络上的异常流量行为,Wireshark不会产生警示或是任何提示。
然而,仔细分析Wireshark撷取的封包能够帮助使用者对于网络行为有更清楚的了解。
Wireshark不会对网络封包产生内容的修改,它只会反映出目前流通的封包资讯。
Wireshark本身也不会送出封包至网络上。
2.实例实例1:计算机是如何连接到网络的,一台计算机是如何连接到网络的,其间采用了哪些协议,Wireshark将用事实告诉我们真相。
抓包工具Wireshark分析DHCP协议
Wireshark分析DHCP协议一,动态主机配置协议DHCP1,DHCP简介DHCP(Dynamic Host Configuration Protocol),动态主机配置协议,是一个应用层协议。
当我们将客户主机ip地址设置为动态获取方式时,DHCP服务器就会根据DHCP 协议给客户端分配IP,使得客户机能够利用这个IP上网。
DHCP的前身是BOOTP协议(Bootstrap Protocol),BOOTP被创建出来为连接到网络中的设备自动分配地址,后来被DHCP取代了,DHCP比BOOTP更加复杂,功能更强大。
后面可以看到,在用Wireshark过滤显示DHCP包,需要输入过滤条件BOOTP,而不是DHCP,但或许是因为我使用的Wireshark版本是比较旧的1.12.9,没有在新版本中尝试过,也许可以输入DHCP让其只显示DHCP包。
2,DHCP的实现DHCP的实现分为4步,分别是:第一步:Client端在局域网内发起一个DHCP Discover包,目的是想发现能够给它提供IP的DHCP Server。
第二步:可用的DHCP Server接收到Discover包之后,通过发送DHCP Offer包给予Client端应答,意在告诉Client端它可以提供IP地址。
第三步:Client端接收到Offer包之后,发送DHCP Request包请求分配IP。
第四步:DHCP Server发送ACK数据包,确认信息。
二,利用Wireshark抓取DHCP包1,分析要想抓取到DHCP包,先要保证有可用的DHCP服务器,然后将主机IP地址获取方式设置为自动获取。
如果主机在抓包之前已经联网,需要先断开主机的网络连接,然后再连接网络。
在cmd下使用命令ipconfig来完成网络断开与连接的过程:ipconfig /release 断开主机当前的网络连接ipconfig /renew 请求连接网络在cmd中可以使用ipconfig /?查看各参数的含义:(1)ipconfig /release断开当前的网络连接,主机IP变为0.0.0.0,主机与网络断开,不能访问网络。
Wireshark基本用法过滤规则协议详解
Wireshark基本⽤法过滤规则协议详解基本使⽤:协议解析:(1)版本,占4位,指IP协议的版本,⽬前⼴泛使⽤的IP协议版本号为4(即)。
2)⾸部长度,占4位,可表⽰的最⼤⼗进制数值是15。
请注意,这个字段所表⽰数的单位是32位字长(1个32位字长是4字节),因此,当IP 的⾸部长度为1111时(即⼗进制的15),⾸部长度就达到60字节。
当IP分组的⾸部长度不是4字节的整数倍时,必须利⽤最后的填充字段加以填充。
因此数据部分永远在4字节的整数倍开始,这样在实现IP协议时较为⽅便。
⾸部长度限制为60字节的缺点是有时可能不够⽤。
但这样做是希望⽤户尽量减少开销。
最常⽤的⾸部长度就是20字节(即⾸部长度为0101),这时不使⽤任何选项。
(3)服务类型,占8位,⽤来获得更好的服务,但实际上⼀直没有被使⽤过。
1998年IETF把这个字段改名为区分服务DS(Differentiated Services)。
只有在使⽤区分服务时,这个字段才起作⽤。
(4)总长度,总长度指⾸部和数据之和的长度,单位为字节。
总长度字段为16位,因此数据报的最⼤长度为2^16-1=65535字节。
在IP层下⾯的每⼀种数据链路层都有⾃⼰的帧格式,其中包括帧格式中的数据字段的最⼤长度,这称为最⼤传送单元MTU(Maximum Transfer Unit)。
当⼀个数据报封装成链路层的帧时,此数据报的总长度(即⾸部加上数据部分)⼀定不能超过下⾯的数据链路层的MTU值。
PS:图中总长度为84个字节,ping包默认为56个字节,ICMP包头是8个字节,再加上⾸部长度20个字节。
下图我将包长度设置为112个字节后,总长度就变成140个字节了(5)标识(identification),占16位。
IP软件在存储器中维持⼀个计数器,每产⽣⼀个数据报,计数器就加1,并将此值赋给标识字段。
但这个“标识”并不是序号,因为IP是⽆连接服务,数据报不存在按序接收的问题。
wireshark 信令文本字段说明
wireshark 信令文本字段说明Wireshark信令文本字段说明1. FrameFrame字段中包含了数据包的各种信息,如数据包序号、时间戳、数据包长度等。
通过观察Frame字段,我们可以了解到数据包的基本信息。
2. EthernetEthernet字段用于描述以太网帧的相关信息,包括源MAC地址、目的MAC地址和以太网帧类型。
通过分析Ethernet字段,我们可以确定数据包是通过以太网进行传输的。
3. IPIP字段包含了IP数据报的相关信息,如源IP地址、目的IP地址、协议类型等。
通过分析IP字段,我们可以了解到数据包的源和目的IP地址,以及使用的传输协议。
4. TCPTCP字段用于描述TCP报文段的相关信息,包括源端口号、目的端口号、序号、确认号等。
通过分析TCP字段,我们可以了解到数据包使用的是TCP协议,以及相关的端口号和序列号信息。
5. UDPUDP字段用于描述UDP数据报的相关信息,包括源端口号、目的端口号、长度等。
通过分析UDP字段,我们可以了解到数据包使用的是UDP协议,以及相关的端口号信息。
6. DNSDNS字段用于描述DNS协议的相关信息,包括查询类型、查询域名、回答记录等。
通过分析DNS字段,我们可以了解到数据包中的DNS 查询请求和相应的回答记录。
7. HTTPHTTP字段用于描述HTTP协议的相关信息,包括请求方式、URL、状态码等。
通过分析HTTP字段,我们可以了解到数据包中的HTTP请求和响应信息。
8. TLSTLS字段用于描述TLS协议的相关信息,包括版本号、加密套件等。
通过分析TLS字段,我们可以了解到数据包中的TLS加密通信过程。
9. ICMPICMP字段用于描述ICMP协议的相关信息,包括类型、代码、校验和等。
通过分析ICMP字段,我们可以了解到数据包中的ICMP报文类型和相关的代码信息。
10. ARPARP字段用于描述ARP协议的相关信息,包括操作类型、发送者MAC地址、发送者IP地址等。
wireshark协议类型
wireshark协议类型
Wireshark支持的常见协议类型包括:
1. 以太网协议(Ethernet)
2. 互联网协议(IP)
3. 传输控制协议(TCP)
4. 用户数据报协议(UDP)
5. 网际控制报文协议(ICMP)
6. 网络时间协议(NTP)
7. 文件传输协议(FTP)
8. 超文本传输协议(HTTP)
9. 域名系统协议(DNS)
10. 电子邮件协议(SMTP、POP3、IMAP)
11. 动态主机配置协议(DHCP)
12. 简单网管协议(SNMP)
13. 路由信息协议(RIP)
14. 开放最短路径优先协议(OSPF)
15. 虚拟局域网协议(VLAN)
16. 无线局域网协议(WiFi)
17. 传输流量安全协议(TLS)
18. 网络安全协议(IPsec)
19. 会话发起协议(SIP)
20. 传真传输协议(T.30)
等等。
此外,Wireshark还支持众多其他协议和应用层协议,使其成为一款强大的网络流量分析工具。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Wireshark分析DHCP协议
一,动态主机配置协议DHCP
1,DHCP简介
DHCP(Dynamic Host Configuration Protocol),动态主机配置协议,是一个应用层协议。
当我们将客户主机ip地址设置为动态获取方式时,DHCP服务器就会根据DHCP 协议给客户端分配IP,使得客户机能够利用这个IP上网。
DHCP的前身是BOOTP协议(Bootstrap Protocol),BOOTP被创建出来为连接到网络中的设备自动分配地址,后来被DHCP取代了,DHCP比BOOTP更加复杂,功能更强大。
后面可以看到,在用Wireshark过滤显示DHCP包,需要输入过滤条件BOOTP,而不是DHCP,但或许是因为我使用的Wireshark版本是比较旧的1.12.9,没有在新版本中尝试过,也许可以输入DHCP让其只显示DHCP包。
2,DHCP的实现
DHCP的实现分为4步,分别是:
第一步:Client端在局域网内发起一个DHCP Discover包,目的是想发现能够给它提供IP的DHCP Server。
第二步:可用的DHCP Server接收到Discover包之后,通过发送DHCP Offer包给予Client端应答,意在告诉Client端它可以提供IP地址。
第三步:Client端接收到Offer包之后,发送DHCP Request包请求分配IP。
第四步:DHCP Server发送ACK数据包,确认信息。
二,利用Wireshark抓取DHCP包
1,分析
要想抓取到DHCP包,先要保证有可用的DHCP服务器,然后将主机IP地址获取方式设置为自动获取。
如果主机在抓包之前已经联网,需要先断开主机的网络连接,然后再连接网络。
在cmd下使用命令ipconfig来完成网络断开与连接的过程:ipconfig /release 断开主机当前的网络连接
ipconfig /renew 请求连接网络
在cmd中可以使用ipconfig /?查看各参数的含义:
(1)ipconfig /release
断开当前的网络连接,主机IP变为0.0.0.0,主机与网络断开,不能访问网络。
(2)ipconfig /renew
更新适配器信息,请求连接网络,这条命令结束之后,主机会获得一个可用的IP,再次接入网络。
2,开始抓包
实验环境:Win10,Wireshark1.12.9,有线连接
(1)在Wireshark中点击start开始抓包,在过滤栏输入bootp,使其只显示DHCP 数据包。
(2)在cmd中输入ipconfig /release 断开网络连接。
可以看到此时所有的网卡都已经断开。
以太网处于断开状态。
Wireshark中截获到一个DHCP Release数据包。
(3)在cmd中输入ipconfig /renew 请求网络连接。
此时,可以看到在Wireshark中新增了4个DHCP数据包:
数据包1:DHCP Discover
数据包2:DHCP Offer
数据包3:DHCP Request
数据包4:DHCP ACK
等待这条命令执行完毕之后,在cmd中可以看到主机被分配了IP,主机成功连入网络中。
(4)为了后续分析使用,我们再执行一次ipconfig /renew:
可以看到Wireshark中新增了3个数据包:DHCP ACK;DHCP Request;DHCP ACk。
如果再次使用ipconfig /renew,每执行一次会新增2个数据包:DHCP Request;DHCP ACk。
三,DHCP包分析
下面着重来分析当执行,ipconfig /renew这条命令产生的4个DHCP数据包,这4个数据包代表了客户机和DHCP服务器的交互过程,也是IP动态分配的过程。
1,DHCP Discover数据包
(1)Client端使用IP地址0.0.0.0发送了一个广播包,可以看到此时的目的IP为
255.255.255.255。
Client想通过这个数据包发现可以给它提供服务的DHCP服务器。
(2)从下图可以看出,DHCP属于应用层协议,它在传输层使用UDP协议,目的端口
是67。
2,DHCP Offer包
当DHCP服务器收到一条DHCP Discover数据包时,用一个DHCP Offerr包给予客户端响应。
(1)DHCP服务器仍然使用广播地址作为目的地址,因为此时请求分配IP的Client并
没有自己ip,而可能有多个Client在使用0.0.0.0这个IP作为源IP向DHCP服务器发出IP 分配请求,DHCP也不能使用0.0.0.0这个IP作为目的IP地址,于是依然采用广播的方式,告诉正在请求的Client们,这是一台可以使用的DHCP服务器。
(2)DHCP服务器提供了一个可用的IP,在数据包的Your (client) IP Address字段可以看到DHCP服务器提供的可用IP。
(3)除此之外,如图中红色矩形框的内容所示,服务器还发送了子网掩码,路由器,DNS,域名,IP地址租用期等信息。
3,DHCP Request包
当Client收到了DHCP Offer包以后(如果有多个可用的DHCP服务器,那么可能会收到多个DHCP Offer包),确认有可以和它交互的DHCP服务器存在,于是Client 发送Request数据包,请求分配IP。
此时的源IP和目的IP依然是0.0.0.0和255.255.255.255。
4,DHCP ACK包
服务器用DHCP ACK包对DHCP请求进行响应。
在数据包中包含以下信息,表示将这些资源信息分配给Client.
Your(client) IP address:分配给Client的可用IP。
后面有许多项option信息,前两项是DHCP服务器发送的消息类型(ACK)和服务器的身份标识,后面几项是:
Subnet Mask:Client端分配到的IP的子网掩码;
Router:路由器
Domain Name Server:DNS,域名服务器
Domain Name:域名
IP Address Lease Time:IP租用期。