我需要一个C ++中的小程序,它将类型和主机名作为命令行参数,然后进行DNS查找。例如:
DNSapp AAAA www.google.com
将从www.google.com返回IPv6地址,依此类推。
我可以使用gethostbyname进行简单的A查找,但我不知道如何执行其他查找。我试图谷歌他们,但没有成功。任何想法如何做到这一点?
答案 0 :(得分:4)
gethostbyname
已过时,使用getaddrinfo
进行A / AAAA
次查询。
对于SRV
等,我建议ldns
或相关的libunbound
。后者是库中的完整解析器。
您也可以使用Linux标准库中的res_search
。
答案 1 :(得分:1)
在Windows上,GetAddrInfoW
是gethostbyname的正确多值版本。
对于RDNS,getnameinfo
是另一种方式。
GetAddrInfoEx
可能会也可能不会使用SRV记录,我一直无法找到。