wireshark分析dhcp过程
---恢复内容开始---
DHCP
DHCP(Dynamic Host Configuration Protocol)是一个用于主机动态获取IP地址的配置解 析,使用UDP报文传送,端口号为67何68。
DHCP使用了租约的概念,或称为计算机IP地址的有效期。租用时间是不定的,主要取决于用 户在某地连接Internet需要多久,这对于教育行业和其它用户频繁改变的环境是很实用的。通 过较短的租期,DHCP能够在一个计算机比可用IP地址多的环境中动态地重新配置网络。 DHCP支持为计算机分配静态地址,如需要永久性IP地址的Web服务器。

DHCP服务器分配IP的过程:
1.DHCP客户端发送DHCP Discover消息,广播,请求分配IP
2.DHCP 服务器提供DHCP Offer消息,回应,表示可提供IP
3.DHCP客户端发送DHCP Request消息,选定一个服务器,并请求IP租用
4.DHCP服务器发送ACK消息,确认地址租用给客户端
Wireshark分析
Wireshark过滤命令:bootp
BOOTP(Bootstrap Protocol,引导程序协议)是一种引导协议,基于IP/UDP协议,也称自举协议,是DHCP协议的前身。BOOTP用于无盘工作站的局域网中,可以让无盘工作站从一个中心[服务器]上获得IP地址。
技巧:
1.采用断开网络再连接
2.输入ipconfig/release断开连接,输入ipconfig/renew重连Wireshark 抓包对DHCPIP分配过程进行分析:
1.DHCP客户端以广播的形式发送Discover 请求IP租用


2.范围内的DHCP服务器接收到discover 请求后,会向客户端发出DHCP Offer 报文作为回应,该报文包含该DHCP服务器可向DHCP客户端提供的IP地址以及该DHCP服务器自己的IP地址信息

3.DHCP客户端会选择最先接收到的DHCP Offer进行处理,并以广播的形式发送DHCP Request 报文,该报文会加入对应DHCP服务器的地址以及所需要的IP

4.DHCP服务器接收到DHCPRequest报文后,会判断报文中的服务器IP是否与自己相同。
如果不同,不做任何处理,只清除相应的IP分配记录;如果相同,服务器会向客户端发送ACK报文,确认可以使用,并且附上相应的租期。

在这里有得人遇到的是回应报文是广播,有的是单播,在此做下说明
1.DHCP服务器回应报文的方式与DHCP服务器本身无关
详见https://blog.csdn.net/weixin_40249907/article/details/79034522
5.DHCP客户端接收到ACK信息后,会检查该IP是否能够使用,如果可以就直接使用该IP并使用租期自动启用延续过程。如果发现IP已被使用,则发送DHCP Decline报文告知服务器禁用该IP然后重新发起Discover。
6.当租期不到1/2左右时候,如果还要继续使用该IP,客户端会自动向服务器发起续租请求报文Request 报文,服务器会向客户端发送ACK报文确认。
---恢复内容结束---
wireshark分析dhcp过程的更多相关文章
- Wireshark分析器分析数据流过程
Wireshark分析器分析数据流过程 分析包是Wireshark最强大的功能之一.分析数据流过程就是将数据转换为可以理解的请求.应答.拒绝和重发等.帧包括了从捕获引擎或监听库到核心引擎的信息.Wir ...
- Wireshark分析非标准端口号流量
Wireshark分析非标准端口号流量 2.2.2 分析非标准端口号流量Wireshark分析非标准端口号流量 应用程序运行使用非标准端口号总是网络分析专家最关注的.关注该应用程序是否有意涉及使用非 ...
- DHCP服务器的搭建及抓包分析DHCP的实现
原文:http://blog.51cto.com/liwenhui/105129 1.环境搭建: DC&DHCP SERVER IP:192.168.1.254 ( 这是一台D ...
- Symfony2源码分析——启动过程2
文章地址:http://www.hcoding.com/?p=46 上一篇分析Symfony2框架源码,探究Symfony2如何完成一个请求的前半部分,前半部分可以理解为Symfony2框架为处理请求 ...
- Linux使用tcpdump命令抓包并使用wireshark分析
Linux使用tcpdump命令抓包并使用wireshark分析 介绍 有时分析客户端和服务器网络交互的问题时,为了查找问题,需要分别在客户端和服务器上抓包,我们的客户端一般是windows上的,抓包 ...
- Android 抓包并通过 Wireshark 分析
分析 Android 中 app 的网络数据交互,需要在 Android 上抓包,常用工具为 tcpdump ,用 tcpdump 生成 Wireshark 识别的 pcap 文件,把 pcap 文件 ...
- Android利用tcpdump抓包,用wireshark分析包。
1.前言 主要介绍在android手机上如何利用tcpdump抓包,用wireshark分析包. android tcpdump官网: http://www.androidtcpdump.com/ t ...
- quartz2.x源码分析——启动过程
title: quartz2.x源码分析--启动过程 date: 2017-04-13 14:59:01 categories: quartz tags: [quartz, 源码分析] --- 先简单 ...
- wireshark分析https数据包解密前后的特点
wireshark分析https数据包解密前后的特点 (一)https解密前 1.协议种类:2种(1)TCP(第四层,传输层)(2)SSL/TLS(第五层,应用层,加解密)2.应用层数据所在数据包特点 ...
随机推荐
- Python_实现json数据的jsonPath(精简版)定位及增删改操作
基于python实现json数据的jsonPath(精简版)定位及增删改操作 by:授客 QQ:1033553122 实践环境 win7 64 Python 3.4.0 代码 #-*- encod ...
- 红米手机4A怎么样刷入开发版获得ROOT权限
小米的手机或平板不同手机型号一般情况官方都提供两个不同系统,可分为稳定版和开发版,稳定版没有提供root权限管理,开发版中就支持了root权限,在很多工作的时候我们需要使用的一些功能强大的app,都需 ...
- idea部署Maven入门(一)——环境变量的配置和下载
介绍: 1 Maven是用来管理jar包的一种工具, 2 Maven主要是构建java项目和java web项目 3 maven项目管理所依赖的jar ...
- Angualr学习笔记
0.安装即环境初始化 下载node至windows,点击安装,所有环境变量直接OK: linux下载tar后,解压,在/etc/profile的path路径下增加node执行路径: export PA ...
- libstdc++适配Xcode10与iOS12
编译报错 当你开心得升级完新 macOS,以及新 XCode,准备体验了一把 Dark Mode 编程模式,开心的打开自己的老项目的时候,发现编译不通过了╮(╯_╰)╭ 如果你的工程中如果依赖 lib ...
- Github如何提交修改的代码以及更新到最新版本
最近有人问我,Github上如何把修改fork到的代码提交到原版本上去,以及如何更新到最新的版本.只针对初学者,大神的话勿喷. 首先说第一个问题. 进入到你修改的某个repository里面(以本人的 ...
- Think_in_java_4th(并发学习二)
使用Executor java.util.concurrent CachedThreadPool package concurrency.ExecutorService; //: concurrenc ...
- WPF中窗体最大化问题处理
遇到的问题信息 问题:当WindowStyle=None时,窗口最大化,不显示任务栏 -- 即窗体是全屏效果. 解决中遇到的问题列表[主要涉及到任务栏发生改变后的一些问题处理]: 最大化时,任务栏被遮 ...
- formatter的使用
1.目的 如图所示,实现行编辑栏中的编辑删除,以及在时间建议中显示上中下旬 可参考easyui官方文档中所写的关于datagrid列属性:http://www.jeasyui.net/plugins/ ...
- 浏览器和服务器实现跨域(CORS)判定的原理
前端对Cross-Origin Resource Sharing 问题(CORS,中文又称'跨域')应该很熟悉了.众所周知出于安全的考虑,浏览器有个同源策略,对于不同源的站点之间的相互请求会做限制(跨 ...