当前位置: 首页 > 工具软件 > IPCop Linux > 使用案例 >

linux dhcp ipv66,Linux DHCP服务器选项43供应商封装选项,如何格式化/编码?

宣冥夜
2023-12-01

我管理一个小型企业的网络,该企业有一个IPCop防火墙盒,为网络(以及其他各种服务)提供DHCP服务. IPCop中的DHCP服务器似乎是dhcpd,IPCop提供了一个基于Web的前端来编辑配置文件.

我希望使用vendor-encapsulated-options选项将DHCP选项66和67的特定值发送到特定的供应商类标识符.目的是自动配置一些支持DHCP选项66/67和43/60的VoIP电话.

我已经设法获得选项66 tftp-server-name和67 bootfile-name工作以自动配置手机.但当然这些选项是全局的并发送给所有DHCP客户端.我正在尝试使用vendor-class-indentifier和vendor-encapsulated-options DHCP选项来仅将自动配置信息发送到手机.我意识到这对于小型企业网络来说可能有些过分,但这都是为了拓宽我的知识面.

所以我开始阅读那里的一些信息,我无法弄清楚如何在vendor-encapsulated-options字符串中编码选项66/67.

这是相关的RFC … http://tools.ietf.org/html/rfc2132#section-8第8.4节

这里是“供应商封装选项”下dhcpd http://www.daemon-systems.org/man/dhcp-options.5.html的手册页

这些文档似乎暗示选项将以HEX格式编码,但是查看vendor-encapsulated-options选项的手册页示例…

The value of this option can be set in one of two ways.

The first way is to simply specify the data directly,using a text string or a colon-separated list of hexadecimal values.

For example:

option vendor-encapsulated-options

2:4:AC:11:41:1:

3:12:73:75:6e:64:68:63:70:2d:73:65:72:76:65:72:31:37:2d:31:

4:12:2f:65:78:70:6f:72:74:2f:72:6f:6f:74:2f:69:38:36:70:63;

当我尝试将该批次从HEX解码为ASCII时,我得到以下内容:

????甲????????? sundhcp-server17-1 ???????? /出口/根/了i86pc

所以我确定我不能正确理解格式/编码.

这是来自IPCop的dhcpd.conf的我的片段

subnet 192.168.1.0 netmask 255.255.255.0 #GREEN

{

range 192.168.1.30 192.168.1.200;

option subnet-mask 255.255.255.0;

option domain-name "domain.com";

option routers 192.168.1.1;

option domain-name-servers 192.168.1.1;

option ntp-servers 192.168.1.1;

option netbios-name-servers 192.168.1.3;

default-lease-time 43200;

max-lease-time 172800;

option vendor-encapsulated-options "hello";

option vendor-class-identifier "snom320";

option vendor-class-identifier "snom821";

option bootfile-name "voipsettings/firstboot.xml";

option tftp-server-name "http://username:password@intranet.domain.com";

} #GREEN

我根据DHCP请求中的VoIP电话(Snom)提交的值设置了供应商类标识符. bootfile-name和tftp-server-name是我希望在vendor-encapsulated-options中编码的选项(66/67).

Snom在这里有他们维基的指南……

http://wiki.snom.com/Networking/DHCP/Options#Auto_Provisioning_Options

(道歉,我的声誉太低,无法在一个问题中发布> 2个链接)

那个wiki似乎暗示我需要将vendor-class-identifier编码为“n个字节的字符串”

此外,该维基文章中给出的供应商封装选项的示例在从HEX转换为ASCII时也会返回乱码.所以有一些关键的东西,我在这里不理解.

任何人都可以告诉我如何正确格式化/编码这些DHCP选项?

 类似资料: