![如何解析 DHCP 供应商特定信息](https://linux22.com/image/790410/%E5%A6%82%E4%BD%95%E8%A7%A3%E6%9E%90%20DHCP%20%E4%BE%9B%E5%BA%94%E5%95%86%E7%89%B9%E5%AE%9A%E4%BF%A1%E6%81%AF.png)
您好,我想根据序列号分配 IP,因为如果我不连接物理电缆并登录,则无法获得 mac 地址。Tcpdump PCAP DHCP 数据包:
TIME: 2023-10-27 09:58:33.159
IP: 0.0.0.0
OP: 1 (BOOTPREQUEST)
HTYPE: 1 (Ethernet)
HLEN: 6
HOPS: 0
XID: bc309003
SECS: 0
FLAGS: 0
CIADDR: 0.0.0.0
YIADDR: 0.0.0.0
SIADDR: 0.0.0.0
GIADDR: 0.0.0.0
CHADDR: 00:0b:d3:31:fe:d2:00:00:00:00:00:00:00:00:00:00
SNAME: .
FNAME: .
OPTION: 53 ( 1) DHCP message type 7 (DHCPRELEASE)
OPTION: 54 ( 4) Server identifier 10.0.0.189
OPTION: 43 ( 74) Vendor specific info 01074d514d393730 ..MQM860
30020c4d514d3937 0..MQM97
30302d4e53324603 00-NS2F.
0c4d543232333158 .MT1111X. << serial
32333034330406e8 23043...
ebd331fed2051069 ..1....i
622d73696e676c65 b-single
2d73776974636806 -switch.
09332e31312e3130 .3.11.10
3134 14
OPTION: 60 ( 6) Vendor class identifier DELL
以下是我尝试过但没有效果的方法
host server1 {
option dhcp-client-identifier = "MT1111X23043";
fixed-address 10.0.0.40;
option tftp-server-name = "http://10.0.0.18:8080/server/image/";
}
串口在选项(43)如何发送给dhcp服务器分配ip?
答案1
这不是您问题的完整解决方案。但我今天必须处理这个问题...
仅记录代码中的 20 个字节,从字节 6 开始:
日志(信息,连接(“供应商:”,子字符串(选项供应商封装选项,6,20)));”
如果二进制到 ASCII(16,8,“:”,子字符串(选项供应商封装选项,6,20))=“0:0:0:c1”{
无论如何... X 池...
}
将池放入此 if 子句中......
带有大写 V 的供应商封装选项...