DHCP报文的结构如下图:

其中:

  • op,报文类型,1表示请求报文,2表示回应报文。
  • htype,硬件地址类型,1表示10Mb/s的以太网的硬件地址。
  • hlen,硬件地址长度,以太网中该值为6。
  • hops,跳数。客户端设置为0,也能被一个代理服务器设置。
  • xid,事务ID,由客户端选择的一个随机数,被服务器和客户端用来在它们之间交流请求和响应,客户端用它对请求和应答进行匹配。该ID由客户端设置并由服务器返回,为32位整数。
  • secs,由客户端填充,表示从客户端开始获得IP地址或IP地址续借后所使用了的秒数。
  • flags,标志字段。这个16比特的字段,目前只有最左边的一个比特有用,该位为0,表示单播,为1表示广播。
  • ciaddr,客户端的IP地址。只有客户端是Bound、Renew、Rebinding状态,并且能响应ARP请求时,才能被填充。
  • yiaddr,"你自己的"或客户端的IP地址。
  • siaddr,表明DHCP协议流程的下一个阶段要使用的服务器的IP地址。
  • giaddr,DHCP中继器的IP地址。//注意:不是地址池中定义的网关
  • chaddr,客户端硬件地址。客户端必须设置它的"chaddr"字段。UDP数据包中的以太网帧首部也有该字段,但通常通过查看UDP数据包来确定以太网帧首部中的该字段获取该值比较困难或者说不可能,而在UDP协议承载的DHCP报文中设置该字段,用户进程就可以很容易地获取该值。
  • sname,可选的服务器主机名,该字段是空结尾的字符串,由服务器填写。
  • file,启动文件名,是一个空结尾的字符串。DHCP Discover报文中是"generic"名字或空字符,DHCP Offer报文中提供有效的目录路径全名。
  • options,可选参数域,格式为"代码+长度+数据"。

常见的option主要如下表:

其中对于熟悉dhcp流程比较重要的是53,即消息类型:

60选项(option60)也比较常用,用来完成基于标准DHCP协议,以在客户端输入用户名和密码的方式进行的地址鉴权。主要用在按用户认证收费场合,与之对应的是pppoe认证计费

参见:http://www.ietf.org/rfc/rfc1541.txt

DHCP 报文结构和类型相关推荐

  1. option 82是dhcp报文中的中继代理

    option 82是dhcp报文中的中继代理信息选项(relay agent information option).当dhcp client发送请求报文到dhcp server时,若需要经过dhcp ...

  2. 接口测试01 - HTTP协议报文结构及示例

    HTTP基本架构 用一张简单的流程图来展示HTTP协议的基本架构,以便先有个基础的了解. 1)Web Client可以是浏览器.搜索引擎等等一切基于HTTP协议发起http请求的工具. 2)Web S ...

  3. 【计算机网络】应用层 : 万维网 和 HTTP 协议 ( 万维网概述 | HTTP 协议特点 | HTTP 协议连接方式 | HTTP 协议报文结构 | HTTP 请求报文 | HTTP 响应报文 )

    文章目录 一.万维网概述 ★ 二.HTTP 协议 ( 超文本传输协议 ) ★ 三.HTTP 协议特点 ★ 四.HTTP 连接方式 ★ 五.HTTP 协议报文结构 六.HTTP 请求报文 ★ 七.HTT ...

  4. 报文解析_104规约报文结构解析

    一.104规约报文结构 104 规约的报文由启动字符.报文长度.控制域和应用服务数据单元组成,出于控制的目的,报文也可仅由启动字符.报文长度和控制域组成.2种结构. 二.控制域 根据不同的应用,控制域 ...

  5. 下面哪个字段是http请求中必须具备的_HTTP 协议报文结构及示例

    HTTP 基本架构 下面我们用一张简单的流程图来展示 HTTP 协议基本架构,以便大家先有个基本的了解 Web Client 可以是浏览器.搜索引擎.机器人等等一切基于HTTP 协议发起 http 请 ...

  6. HTTP请求/响应报文结构

    HTTP请求/响应报文结构 HTTP请求报文 一个HTTP请求报文由四个部分组成:请求行.请求头部.空行.请求数据. 1.请求行 请求行由请求方法字段.URL字段和HTTP协议版本字段3个字段组成,它 ...

  7. HTTP协议漫谈 - HTTP协议历史和报文结构

    前言 去年下半年以来各种俗事缠身,所以有段时间没有更新博客了.过完年回来事情不多,项目需求也比较少,又可以愉快的写博客了(≧∇≦)ノ 这几天在网络上搜罗了一些HTTP协议的相关知识,并对这些知识做了一 ...

  8. CoAP学习笔记(1)CoAP报文结构

    CoAP报文结构 CoAP基于UDP的应用层协议,报文结构如下 Ver 版本号占2bit,固定为01 T 报文类型,占2bit,CoAP中有4种报文类型,如下 类型 描述 T值 CON报文 Confi ...

  9. 传输层协议(1):TCP 报文结构

    传输层位于 OSI 七层模型的第4层,也位于 TCP/IP 五层模型的第4层,如图5-1所示: 图5-1 传输层 传输层包括两大基本协议:TCP(Transmission Control Protoc ...

  10. 二、大话HTTP协议-HTTP报文结构整体窥探

    在了解了HTTP的前世今生后,就有必要去深入了解下HTTP协议了,本节从HTTP报文整体结构出发,奠定对HTTP协议的整体认识,方便今后的深入学习. 一.HTTP协议特点 HTTP的特点总结如下: 支 ...

最新文章

  1. TiKV 源码解析系列文章(二)raft-rs proposal 示例情景分析
  2. mac 多java环境变量配置_java_Mac安装多个JDK版本并设置环境变量
  3. 容器编排技术 -- 使用Minikube 部署 Kubernetes 集群
  4. 查看硬件配置的Linux命令,LINUX 查看硬件配置命令的教程
  5. CV初级研究工程师,苏黎世联邦理工学院招聘
  6. 优先队列-二叉堆-堆排序原理-Java相关API
  7. Intellij IDEA 添加jar包的三种方式
  8. 教你如何用R进行数据挖掘
  9. 零基础如何用平面设计排版软件PS进行布局构图
  10. 三步教你制作拼多多优惠券cms网站系统的返利功能
  11. 铅蓄电池首批规范企业名单出炉 多家上市公司入围
  12. Python中RE模块总结
  13. 技术分享杂七杂八技术
  14. Qt-android开发环境搭建及打包安装测试hello world
  15. clickhouse表引擎-合并树系列
  16. 上海交大开源GPGPU青花瓷仿真环境搭建
  17. android 双卡铃声,铃声多多双卡版
  18. C语言源文件名为什么无效,c语言源程序常错误分类及其改错.doc
  19. 3. Linear Regression
  20. C++软件异常的常见原因分析与总结(实战经验分享)

热门文章

  1. Jmeter使用篇(二十三) : Jmeter中调用Python代码
  2. 如何方便手机在线抖音去水印更有热门技巧
  3. ERP系统-销售子系统-销售发货通知单
  4. 操作系统——信号量机制(PV操作)
  5. 测试必经之路(探索性测试)
  6. python实现泊松分布_Python实现概率分布(二项分布、伯努利分布、泊松分布、几何分布、正态分布等)...
  7. Spring Boot 应用在 kubernetes 的 sidecar 设计与实战
  8. Oracle11G数据库的双机热备份配置--基础篇
  9. 【机器学习项目实战】随机森林(random forest)回归(RandomForestRegressor)模型Python实现
  10. 大气数据计算机仿真算法,自适应光学系统中大气湍流的模型分析与计算机仿真...