Jason Owen Asked: 2010-03-04 17:18:26 +0800 CST2010-03-04 17:18:26 +0800 CST 2010-03-04 17:18:26 +0800 CST 访问 DHCP 客户端的供应商封装选项 772 在 isc-dhcpd-V3.1.1 的 dhcpd.conf 文件中,我设置了供应商选项空间并定义了几个不同的选项。我可以使用这些定义在 vendor-encapsulated-options 选项(代码 43)中将选项从服务器发送到客户端。 但是,客户端也以同样的方式将供应商选项发送回服务器,我想根据选项的类型和内容做出不同的响应。据我所知,服务器根本没有解析客户端的供应商封装选项——选项运算符只是返回空值。 有没有办法让服务器填充我定义的供应商空间中的选项? dhcp isc-dhcp 1 个回答 Voted Jason Owen 2010-03-04T18:15:17+08:002010-03-04T18:15:17+08:00 如果你能保证客户端每次都以相同的顺序发送相同的选项,你可以使用substringandoption 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 ) { ... } 但是,如果这两个保证不成立,则唯一剩下的选项是基于正则表达式的匹配,但请注意选项(代码长度内容)完全包含在另一个选项的内容中的可能性。
如果你能保证客户端每次都以相同的顺序发送相同的选项,你可以使用
substring
andoption vendor-encapsulated-options
手动解析选项:但是,如果这两个保证不成立,则唯一剩下的选项是基于正则表达式的匹配,但请注意选项(代码长度内容)完全包含在另一个选项的内容中的可能性。