我注意到Google的一个邮件服务器(alt4.aspmx.l.google.com)指向74.125.200.26,但是当我对该IP执行反向DNS查找时,我发现与之关联的主机名是sa- in-f26.1e100.net。我对DNS的有限理解是,当你遇到这样的情况时,一个主机名是另一个的别名,但这不是这里的情况。
我最初的目标是创建一个给出IP地址和主机名的Python程序,返回一个布尔答案,指示IP是否属于该域的邮件服务器。我实现的算法使用dig来搜索域的所有邮件服务器,然后尝试将它们中的任何一个匹配到与给定IP相关联的主机名(我使用dig -x找到)。我的程序因我之前提到的情况而失败。我错过了什么?
抱歉我的英语不好。谢谢!
答案 0 :(得分:0)
许多服务可以在一个服务器/ ipaddress上运行,许多主机名可以解析为一个IP地址。在另一个方向,一个IP地址通常只会解析为一个主机名(如果它有完整的PTR记录),并且该名称通常是像ip-xx-yy-zz-qq.networkcarrier.net
这样的通用名称(因此与任何服务无关)合法地在该服务器上运行。)
根据检查的目的,您可以测试主机名A记录是否指向所需的IP地址(因为您的初始要求存在缺陷:IP地址不属于域,它们属于网络提供商)。
(仍然,出于某些目的,最值得注意的是anti spam measure,有一个用例来检查ip地址是否解析为某个特定的主机名。)