在Ruby中,如何反向DNS查找零配置/ Bonjour计算机的主机名?

5

无论哪个

Resolv.getname( "fred.local" ) 
Resolv.getaddress( "10.0.1.18" )

nor

Socket.gethostbyaddr([10,0,1,18].pack("CCCC")) 

似乎能够识别使用零配置/ Bonjour 的本地子网上的主机。 我需要根据其 IP 地址找到本地子网上零配置计算机的主机名。


也许这样做可以:h_n = Socket.getaddrinfo('10.0.1.18', nil)。主机名应该位于:h_n[0][2] - fmendez
仅返回“10.0.1.18”作为主机名...[["AF_INET", 0, "10.0.1.18", "10.0.1.18", 2, 2, 17], ["AF_INET", 0, "10.0.1.18", "10.0.1.18", 2, 1, 6]] - Uilleann
2个回答

1

还没有找到如何让dnssd执行名称查找的方法。尝试使用net-mdns gem,使用Resolv::MDNS.getname('10.0.1.18'),这似乎应该可以工作,但返回无法找到地址的名称。顺便说一句,我可以ping ip地址和本地名称“fred.local”。 - Uilleann

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接