DHCP Option 60 的理解

DHCP Option 60 的理解

 原文地址:

 
首先还是看看RFC咋说的吧。DHCP 是RFC2131定义,DHCP 2132定义了dhcp option .

9.13. Vendor class identifier

   This option is used by DHCP clients to optionally identify the vendor
   type and configuration of a DHCP client.  The information is a string
   of n octets, interpreted by servers.  Vendors may choose to define
   specific vendor class identifiers to convey particular configuration
   or other identification information about a client.  For example, the
   identifier may encode the client’s hardware configuration.  Servers
   not equipped to interpret the class-specific information sent by a
   client MUST ignore it (although it may be reported). Servers that
   respond SHOULD only use option 43 to return the vendor-specific
   information to the client.
(这个选项作用于client可选地识别client厂商类型和配置,这个信息是n个8位编码,由dhcp服务端解析,厂商可能会为client选择定义特殊的厂商类标识符信息,以便表达特殊的配置或者其它关于client的信息。比方:这个标识符可能编码了client的硬件配置。client发送过来的server不能解析的类规范信息必须被忽略(虽然可能会有报告),server响应厂商规范信息到client应该只通过Option 43来完毕。

   The code for this option is 60, and its minimum length is 1.

   Code   Len   Vendor class Identifier
   +—–+—–+—–+—–+—
   |  60 |  n  |  i1 |  i2 | …
   +—–+—–+—–+—–+—

从rfc中能够看出,dhcp 60选项主要是用于client报告自身厂商以及配置信息的,server不能解析的 类标识符的应该被忽略,这个选项仅仅是client发包报告自己的信息,client和server端交换厂商信息的应该是由option 43来完毕。

未完,待续。。。(抓包观察下pxeclient的信息,这TM做PXE的启动非常久了,一直纠结这个60是干嘛的,并且windowsDHCPserver我没加60也没见怎么着)
 
接着来吧,看看实际的包是啥样 ,測试环境为将笔记本和DHCPserver用一根网线直连。
首先重新启动笔记本,然后启动的时候按F12让机器从网络启动,服务端进行抓包,查看收到的来自于笔记本的DHCP请求的包,例如以下图
DHCP Option 60 的理解 - 小陈 - 岁月的沉淀
 能够清楚的看到,wireshark抓到的来自于笔记本的网卡启动的DHCP请求包括option 60选项,wireshark定义的option 60为 厂商类标识符,值为”PXEClient:Arch:00000:UNDI:002001″  
 
然后启动系统,查看笔记本操作系统发出的DHCP请求包内容,例如以下图
 
DHCP Option 60 的理解 - 小陈 - 岁月的沉淀
 
 
从图中能够看到操作系统发出的DHCP请求也包括option 60选项,值为“MSFT 5.0″
 
======================================================================================================================
在internet上看到的一段文字:
 
1、支持OPTION60(Authentication for DHCP Messages)
功能描写叙述:
 OPTION 60功能用来完毕基于标准DHCP协议,以在client输入username和password的方式进行的地址鉴权。在机顶盒中仅仅保留应用层帐号和password,应用层帐号为8位数字,在OPTION60使用接入层帐号,帐号为“ad”+应用层帐号+“@iptv”,password和应用层password一致,眼下password暂定为固定值123465。 应用层username和password一旦输入之后,应储存在硬件之中。当PPPOE与DHCP接入模式相切换时假设之前已经输入过应用层username与password,则要求无需再次输入,直接过渡至新的接入方式。
 
2、支持OPTION 125(Vendor-ldentifying Vendor Options)
功能描写叙述:
OPTION 125功能是对标准DHCP协议一个补充标准,该功能的标准定义在RFC 3925中。DHCPserver在完毕验证将client的IP地址等信息封装成DHCP OFFER包的时候,将OPTION 125信息封装DHCP OFFER包中再发送给client。 client收到OFFER包以后,首先查看该OFFER包所带的OPTION 125的“Option-data 1”字段中所填写的特征值,并与预先存储的信息进行比对。比对结果为同样则使用此OFFER,假设比对结果不同或OFFER包中不带OPTION 125,则将此OFFER丢弃。
 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/119185.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 前端框架AdminLTE

    前端框架AdminLTE作为CMDB资产管理项目,必须有一个丰富、直观、酷炫的前端页面。适合运维平台的前端框架有很多,开源的也不少,这里选用的是AdminLTE。AdminLTE托管在GitHub上,可以通过下面的地址下载:https://github.com/almasaeed2010/AdminLTE/releasesAdminLTE自带JQuery和Bootstrap3框架,无需另外下载。AdminLTE自带多种配…

    2022年7月27日
  • mysql逻辑删除案例_实现数据逻辑删除的一种方案

    mysql逻辑删除案例_实现数据逻辑删除的一种方案什么是逻辑删除所谓逻辑删除是指数据已经“不需要”了,但是并没有使用delete语句将这些数据真实的从数据库中删除,而只是用一个标志位将其设置为已经删除。为什么需要逻辑删除对数据进行逻辑删除,一般存在以下原因:防止数据误删除,不能找回数据;这些数据还具有一定的商业价值,比如用户的注册信息;虽然这些数据可以删除,但是这些数据还有关联数据,这些关联数据不能删除。对数据进行逻辑删除,可以保证数据的安全性和…

    2022年6月2日
  • PAT A1062

    PAT A1062

    2021年6月29日
  • binder原理和实现机制(金属强化机制及其强化原理)

    参考自大神https://zhuanlan.zhihu.com/p/35519585参考自大神https://blog.csdn.net/carson_ho/article/details/73560642一前言二Linux传统的进程间通信原理简述2.1Liunx中跨进程通信主要有三个关键信息2.2Linux下的传统IPC通信原理三Binder跨进程通信原理四…

    2022年4月11日
  • MySQL把字符串转化为数字的三种方式[通俗易懂]

    MySQL把字符串转化为数字的三种方式[通俗易懂]问题出现当我用navicat查询时,在varchar字段上where查询使用的是int类型的0【忘记打引号了…】,结果查出一堆其他的字符串,很奇怪。首先,我想到的是类似于betweenand,我以为也是比较的首字母,不过后面我发现并不是的。百度搜素之后发现是在这查询的时候MySQL把字符串转化为数字,并且有几种方式:1.方法一:字段值+0MySql会根据上下文自动转换类型,这里会将被本来是字符类型的字段值以数值型返回,如果字段存放的值为数值字符,则会转换为数值型返回,如果字段存

    2022年5月30日
  • 微软真好笑[通俗易懂]

    微软真好笑[通俗易懂]近日利用excel的vba开发一个个人管理软件,对微软件真有深刻体会了。vba中检测错误太搞笑了,检测到错误没有指出给开发人员,却要中断然后打包给微软件本身,搞得编写得神经十分紧张,每编完一写就要编译一下以检测错误,否则又中断,又得从头来过。这是微软为开发人员的着想吗?我只有苦笑!!编到最后试过几次都基本成功了,到晚上再试一下,却不加载窗体,连命令按钮也认识不了。

    2022年7月19日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号