(1)什么是DHCP协议?

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作。主要用于给内部网络或网络服务提供供应商自动分配IP地址。DHCP协议是一个应用层协议,能够让设备自动获取IP地址以及其他重要的网络资源。DHCP使用的客服务器模式,其中客户端使用的是UDP68端口,而服务器使用的是UDP67端口。

(2)DHCP的作用?

DHCP(动态主机配置协议)为互联网上主机提供地址和配置参数。DHCP是基于Client/Server工作模式,DHCP服务为主机分配IP地址和提供主机配置参数。DHCP主要作用如下:

a: 保证任何IP地址在同一时刻只能由一台DHCP客户机使用

b:DHCP可以给用户分配永久固定的IP地址

c: DHCP允许用其他方式获取IP地址的主机共存,如手动配置IP地址的主机

(3)DHCP的工作流程

使用DHCP时,在网络上首先必须有一台DHCP服务器,而其他的计算机则是DHCP客户端。当DHCP客户端程序发出一个信息,要求一个动态IP地址时,DHCP服务器将根据,目前配置的IP地址池,从中提供一个可供使用的IP地址和子网掩码给客户端,以下图就是DHCP的工作流程。


    从上图可以看出,DHCP工作分为4个阶段。分别为发现阶段(DHCP Discover),提供阶段(DHCP Offer),选择阶段(DHCP Request)和确认阶段(DHCK ACK)

发现阶段(DHCP Discover):

上图是DHCP发现阶段,即DHCP客户端寻找DHCP服务器的阶段,DHCP客户端以广播方式发送DHCP Discover包,因为客户端不知道服务器的IP地址,在网络上每台主机都会收到此广播包,但是只有DHCP服务器才可以响应。

提供阶段(DHCP Offer)

上图是DHCP的提供阶段,即DHCP服务器提供IP地址的阶段,在网络中收到DHCP客户端发送的DHCP Discover的DHCP服务器,都会做出响应的。这些DHCP服务器从尚未出租的IP地址中挑选一个给客户端,向客户端发送一个包含IP地址和其他设置的DHCP Offer包。

选择阶段(DHCP Request)

上图是DHCP的选择阶段,也就是说DHCP客户端选择某台DHCP服务器提供IP地址阶段。当客户端收到多台DHCP发送的DHCP offer包,DHCP客户端只接受其中一台DHCP服务器的数据,然后以广播的方式回应DHCP服务器DHCP Request,通知自己选择的DHCP服务器。当局域网中所以的DHCP服务器收到客户端发送的DHCP Request信息,通过查看包,确定是否是选择了自己IP,如果选择的是自己,则会发送一个确认包。否则,不进行响应

确认阶段(DHCP ACK)

上图是DHCP的确认阶段,也就是DHCP服务器确认所提供的IP地址信息阶段。同时另外的没有被选择的DHCP服务器都将回收曾经提供的IP地址。

Wireshark实战分析之DHCP协议(一)相关推荐

  1. Wireshark数据包分析之DHCP协议包解读

    *此篇博客仅作为个人笔记和学习参考 DHCP协议包格式 DHCP报文类型 DHCP Discover.DHCP Offer.DHCP Request.DHCP ACK.DHCP NAK.DHCP Re ...

  2. lwip源码分析 之 DHCP协议实现(一)

    文章目录 一,dhcp协议简介 二,源码解析 2.1 dhcp结构体 2.2 开始广播 2.3 回调接口 a,发送请求 b,等待ack 2.4 其他情况 一,dhcp协议简介 dhcp协议是动态主机配 ...

  3. WireShark实战笔记之DNS协议分析

    DNS协议分析 DNS协议概述 DNS工作机理概述 dns报文 WireSahrk分析DNS协议 查看第一个包: 查看第四个包(响应包) DNS协议概述 DNS协议也可以称为DNS服务,全称是Doma ...

  4. NFS协议分析——wireshark实战

    [理论课程FTP协议与NFS协议] 实验目的 1.NFS协议的应用范围 ??文件读写的时候? 2.NFS挂载操作的原理 整个协议,与文件的读写有什么关联?? 3.NFS的安全机制 NFS的安全机制到底 ...

  5. PXE+VMware主机模式+KickStart脚本 自动安装ESXi 并试用WireShark抓包分析其中的协议TFTP,DHCP

    1 安装 1.1 实验环境: Windows 10 (主机) VMWare workstation 15  (运行于主机上) Tiny PXE Server 1.0.0.21   (官网地址,下载地址 ...

  6. Wireshark协议分析之DHCP

    一:前言 在网络时代早期,当一台设备想要在网络上通信时,它需要被手动分配一个地址.随着网络的发展,这样的手动过程很快变得繁琐起来.为了解决这个问题,BOOTP协议(Bootstrap Protocol ...

  7. Http实战之无状态协议、keep-alive分析

    Http1.1特性 无状态的协议 HTTP 是一种不保存状态,即无状态(stateless)协议. HTTP 协议自身不对请求和响应之间的通信状态进行保存.也就是说在 HTTP 这个级别,协议对于发送 ...

  8. 【计算机网络】利用WireShark分析TCP/UDP协议

    前期准备: IntelliJ IDEA 2021.1.3 (Ultimate Edition) Build #IU-211.7628.21, built on June 30, 2021 JDK 1. ...

  9. wireshark 分析理解DHCP流程

    DHCP概念: 动态主机配置协议 DHCP(Dynamic Host Configuration Protocol,动态主机配置协议),是一个应用层协议.该协议允许服务器向客户端动态分配 IP 地址和 ...

  10. Wireshark抓包分析之ICMP协议包

    Wireshark抓包分析之ICMP协议包 一. Wireshark简介:(前身为Ethereal,2006年改名为wireshark) Wireshark 是一个网络封包分析软件.网络封包分析软件的 ...

最新文章

  1. Springboot集成netty实例
  2. Kotlin中的接口回调
  3. fcntl函数(网络编程会用)
  4. qt点击按钮本身,来删除自身
  5. TestNG+Maven+IDEA 自动化测试(一) 环境搭建
  6. poj-1201 Intervals(差分约束)
  7. JS PopupAlert
  8. Xcode快捷键—图文详解
  9. ADSL宽带拨号密码恢复
  10. 【富文本】如何设置U盘为第一启动项,在安装windows操作系统时如何从U盘启动?
  11. android中级培训,Android 中级学习心得
  12. lecture11-hopfiled网络与玻尔兹曼机
  13. 2017usnews计算机科学,2017年USNews美国计算机CS专业研究生排名
  14. 数据安全的下一个风口:SASE云服务平台
  15. 怎样进行印章制作?这款印章生成器后期必备!
  16. 计算机远程共享,用ip地址共享文件可以远程共享吗
  17. 傅里叶变换以及离散傅里叶变换
  18. 接收前端传过来的图片文件,并保存到电脑磁盘中
  19. html 阅读排版模板,HTML5简洁的黑白色调时间轴事件排版模板
  20. 宋体光标vim高亮显示当前行,列

热门文章

  1. 与postman的第一次亲密接触
  2. Could not create ServerSocket on address 0.0.0.0/0.0.0.0:9083
  3. java 利用同步工具类控制线程
  4. 动态时间归整/规整/弯曲(Dynamic time warping,DTW)
  5. poj 2485 Highways 超级大水题 kruscal
  6. android报错自动重启,Android Studio常见报错及处理办法
  7. 2019程序媛面试之高频题型汇总(二)
  8. Linux 进程间通信的六种机制
  9. 程序开发——结对编程
  10. Android Studio建立百度地图步骤及导航无语音解决方法