如何在java中以编程方式在本地dns上注册域名?
我正在编写一个虚拟机资源调配工具。一个任务是当机器启动并运行时,它需要从DNS获取主机名,我需要在那里注册它的ip。有没有一种方法可以用java编程实现这一点?两条建议 如果机器不需要特殊名称,但可以分配任意DHCP租约,则可以根据地址为每个可能的地址指定一个固定名称。您可能见过许多ISP为其DSL客户这样做,例如82-69-170-87.DSL.in-addr.zen.co.uk是IP地址82.69.170.87此选项非常简单,因为它不需要新配置的虚拟机或配置系统的任何特殊功能 使用TSIG进行动态DNS。检查您的DNS服务器是否支持基于TSIG的动态DNS,并阅读其手册以了解如何授权计算机执行更新。在许多Unix系统上,您可以使用bind的nsupdate工具使用TSIG执行动态更新,但如果您希望在纯Java中执行此操作,您将需要了解哪些应该具备所需的一切。这将涉及相当多的工作,但允许您根据您想要实现的规则为每个VM命名并分配特定的地址如何在java中以编程方式在本地dns上注册域名?,java,dns,virtualization,Java,Dns,Virtualization,我正在编写一个虚拟机资源调配工具。一个任务是当机器启动并运行时,它需要从DNS获取主机名,我需要在那里注册它的ip。有没有一种方法可以用java编程实现这一点?两条建议 如果机器不需要特殊名称,但可以分配任意DHCP租约,则可以根据地址为每个可能的地址指定一个固定名称。您可能见过许多ISP为其DSL客户这样做,例如82-69-170-87.DSL.in-addr.zen.co.uk是IP地址82.69.170.87此选项非常简单,因为它不需要新配置的虚拟机或配置系统的任何特殊功能 使用TSIG进
我不是100%确定这是否是您要问的,但我想您可能会问,一旦本地计算机启动,如何获取其主机名?i、 e.反向DNS查找 如果是这样,您可以这样做:
InetAddress.getLocalHost().getHostName()
这将以字符串形式返回映射到LAN IP的当前计算机的主机名