我正在运行 dhcp-4.0.2 服务器和 bind-9.6.1-P3。
当名为“harry”的新 Mac OSX DHCP 客户端连接到网络时,DHCP 服务器会向其授予租约,并通过 DDNS 添加适当的 A 和 PTR 记录。这很正常;harry.my.domain 指向(例如)192.168.1.3,Mac 客户端知道其名称是 harry.my.domain,192.168.1.3 又指向 harry.my.domain,一切都很顺利。
现在我想让 *.harry.my.domain 解析为 192.168.1.3,而且我不想进入区域文件并添加通配符记录。我想让 Mac 连接到网络,并让主机名和通配符子域解析为它所分配的 IP 地址。
有没有办法做到这一点?
谢谢!
答案1
将以下记录(仅一次)添加到您的 BIND 区域文件:
*.harry.my.domain. CNAME harry.my.domain.
答案2
这不是一件小事。
您需要禁用内置的 DDNS 功能,并使用“on commit {}”事件处理程序自行重新实现动态 DNS。dhcpd.conf(5) 手册页的“REFERENCE: EVENTS”部分向用户指出了源代码 (server/dhcpd.c) 第 72 行的一个字符串,其中包含一个这样的处理程序。它似乎表明只有一每种事件类型的处理程序都可以存在。
不幸的是,那里的处理程序已经过时,并且不使用符合 RFC 的更新,因此您还必须修复它。话虽如此,它可能就像用 dhcp-eval(5) 中记录的较新的 ddns-update() 调用替换 ns-update() 函数调用一样简单。
如果您确实让它工作了,您可以发布最终使用的事件处理程序吗?