我正在开发一个基于开源DHCP客户端的工业应用程序 .
我正在设置自定义DHCP客户端类ID(DHCP选项77)
ipconfig / setclassid“本地连接”“SOME_CUSTOM_CLASS_ID”
在Wireshark中,我正在捕获DHCP握手 . 自定义类ID存在于DHCP请求中,但wireshark的选项77信息高亮,错误为“malformed option” .
参考RFC 3004标准,我发现用户类数据的每个实例都应该有一个长度为1个八位字节的前缀,可以解决问题并解除DHCP所有wireshark错误 .
问题是有一些版本的wireshark检测到这个错误,如版本1.10.6其他版本无法检测到版本1.6.5 .
有什么想法吗?这是Wireshark中的一个错误吗?
2 回答
第一:
解除DHCP选项77首先包含在Wireshark 1.10中,因此Wireshark 1.6和Wireshark 1.8不了解此选项,因此不会显示有关该选项的任何错误 .
第二:
我对你的问题有点不清楚:
你在问为什么Wireshark 1.6没有显示Wireshark-1.10中正确显示的错误?
如果是这样,请参阅上面的“第一个” .
如果没有请澄清 .
Microsoft引入了一种不兼容的格式,在2.2.6.1 User Class Option Sent by DHCPv4 Client to DHCPv4 Server中描述 . 格式现在是:
选项代码(77)
期权长度
User_Class_Data(可变长度)
Wireshark仅支持Wireshark 2.0中的RFC 3004格式(我猜也是即将推出的2.2) . 有关各种实现的更多详细信息,请参阅this ask.wireshark.org .