访问 DHCP 客户端的供应商封装选项

访问 DHCP 客户端的供应商封装选项

在 isc-dhcpd-V3.1.1 的 dhcpd.conf 文件中,我设置了一个供应商选项空间并定义了几个不同的选项。我能够使用这些定义在供应商封装选项 (代码 43) 中将选项从服务器发送到客户端。

但是,客户端也会以相同的方式将供应商选项发送回服务器,我想根据选项的类型和内容做出不同的响应。据我所知,服务器根本没有解析客户端的供应商封装选项 - 选项运算符只是返回 null。

有没有办法让服务器填充我定义的供应商空间中的选项?

答案1

如果您可以保证客户端每次都以相同的顺序发送相同的选项,则可以使用substringoption vendor-encapsulated-options手动解析选项:

if 01:01:01 = substring( option vendor-encapsulated-options, 0, 3 ) { ... }
if 02:02:ab:cd = substring( option vendor-encapsulated-options, 3, 4 ) { ... }

但是,如果这两个保证不成立,那么唯一剩下的选择就是基于正则表达式的匹配,但要注意选项(代码长度内容)完全包含在另一个选项的内容中的可能性。

相关内容