如何为瞻博网络前缀主机名配置 dnsmasq 客户端标识符

网络工程 杜松 dhcp
2021-07-21 13:12:00

我有一个瞻博网络交换机,它的 dhcp-client 配置如下:

show interfaces irb unit 0 family inet dhcp                      
client-identifier {
    prefix {
        host-name;
    }
}

我希望 dnsmasq 为瞻博网络交换机分配一个 ip 地址并使用客户端标识符。

tcpdump 显示瞻博网络交换机发送

[...]
Client-ID Option 61, length 10: "MSWI:MSWI"
[...]

如果我像这样在 dnsmasq 中配置这个字符串:

dhcp-host=id:"MSWI:MSWI",192.168.4.252,MSWI

未分配 IP 地址。 user-id ascii MSWI有效,但我必须prefix host-name在生产中使用

我怀疑我的 dnsmasq 配置有问题,但我不知道该更改什么

有任何想法吗?

TIA

1个回答

我找到了解决方案。dnsmasq 必须以--dhcp-authorative.

否则 dnsmasq 会忽略来自未知租约的请求。就我而言,我更改了 dnsmasq 和交换机的配置,直到它工作为止。然而,这些改变并没有解决问题。相反,当我重新启动交换机时,地址没有再次分配。

该解决方案与客户端标识符无关。交换机获得了一个没有客户端标识符的 ip 地址,也没有带有客户端标识符的 IP 地址。这使我走上了错误的轨道。

相反,这是一个时间问题。

手册页中提到的超时解释了这种行为。

手册页说:

-K, --dhcp-authoritative 当 dnsmasq 绝对是网络上唯一的 DHCP 服务器时应该设置。对于 DHCPv4,它改变了严格遵守 RFC 的行为,以便不会忽略来自未知主机的未知租约上的 DHCP 请求。这允许新主机在所有情况下都无需冗长的超时即可获得租用。

[...]