【问题标题】:Two hostnames sharing the same IP两个主机名共享同一个 IP
【发布时间】:2018-02-01 17:12:00
【问题描述】:

我注意到 Google 的一个邮件服务器 (alt4.aspmx.l.google.com) 指向 74.125.200.26,但是当我对该 IP 进行反向 DNS 查找时,我发现与之关联的主机名是 sa-在-f26.1e100.net。我对 DNS 的有限理解是,当您遇到这种情况时,一个主机名是另一个主机名的别名,但这里不是这种情况。

我最初的目标是制作一个 Python 程序,它给出一个 IP 地址和一个主机名,返回一个布尔值答案,指示 IP 是否属于该域的邮件服务器。我实现的算法使用 dig 搜索域的所有邮件服务器,然后尝试将它们中的任何一个与与给定 IP 关联的主机名(我使用 dig -x 找到)进行匹配。我的程序因我之前提到的情况而失败。我错过了什么?

对不起,我的英语不好。谢谢!

【问题讨论】:

    标签: dns ip hostname mail-server dig


    【解决方案1】:

    许多服务可以在一台服务器/IP地址上运行,许多主机名可以解析为一个IP地址。在另一个方向上,一个 IP 地址通常只会解析为一个主机名(如果它有 PTR 记录),并且该名称通常是通用名称,例如 ip-xx-yy-zz-qq.networkcarrier.net(因此与任何合法的服务无关在该服务器上运行)。

    根据您检查的目的,也许您可​​以只测试主机名 A 记录是否指向所需的 IP 地址(因为您的初始要求有缺陷:IP 地址不属于域,它们属于网络提供商)。

    (不过,出于某些目的,尤其是 anti spam measure,有一个用例可以检查 ip 地址是否解析为某个特定的主机名。)

    【讨论】:

    • 我的理解是,可以有许多与主机名关联的 A 记录,并且当我查询管理该域的名称服务器时,它只会给我其中一个。如果是这种情况,我仍然无法验证初始 IP 是否正在为该域运行邮件服务。我的推理正确吗?
    • 如果您在域名服务器中查询 A 记录,对于某些主机名,并且有多个关联的 IP 地址,域名服务器将返回所有这些(尝试nslookup stackoverflow.com
    • 如果要做这样的邮件服务器检查,最多只能查询MX记录,然后将所有收到的名字解析为ip地址,看是否匹配
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-02
    • 1970-01-01
    • 2017-10-18
    • 2010-10-11
    • 1970-01-01
    • 2013-08-18
    相关资源
    最近更新 更多