linux – getaddrinfo()vs NAPTR / SRV记录
发布时间:2020-12-14 00:29:37 所属栏目:Linux 来源:网络整理
导读:我对域名解析有疑问.我们可以通过使用函数getaddrinfo()或NAPTR查询,SRV记录查询和A / AAAA记录的过程来解决从DNS到IP地址格式的解析. 1.函数是否使用getaddrinfo()在内部使用NAPTR查询技术? 2.使用函数getaddrinfo()优于其他过程有什么好处? 解决方法 get
我对域名解析有疑问.我们可以通过使用函数getaddrinfo()或NAPTR查询,SRV记录查询和A / AAAA记录的过程来解决从DNS到IP地址格式的解析.
1.函数是否使用getaddrinfo()在内部使用NAPTR查询技术? 2.使用函数getaddrinfo()优于其他过程有什么好处? 解决方法
getaddrinfo()不查询NAPTR或SRV记录,或者确实查询除A和AAAA之外的任何类型的记录. getaddrinfo()是libc主机名解析服务的接口,它被建模为名称和地址之间的简单映射.要了解这种情况,请考虑此解析服务可以根据其配置文件/etc/nsswitch.conf查询/ etc / hosts,或者更少见NIS,LDAP,关系数据库等.请注意这些NSS后端是如何理解NAPTR或SRV记录的.
只有DNS实现NAPTR和SRV记录,如果要查询它们,则必须使用API??直接查询DNS(请参阅res_init()和相关函数,或者更有趣的第三方库,如c-ares,支持非阻塞操作).您无法使用libc主机名解析服务来执行此操作. 至于你的第二个问题,使用getaddrinfo()的优点是:(1)它更容易使用,(2)你会找到用户可能已经插入/ etc / hosts的条目,你会错过的您直接查询DNS. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |