【问题标题】:is host name to ip a one-to-one mapping?主机名到 ip 是一对一的映射吗?
【发布时间】:2011-08-07 08:14:16
【问题描述】:

主机名到ip是一对一的映射吗?一个主机名怎么能有多个IP地址? 根据 Java 的 getAllByName,它返回主机名的 ips 列表,但它的文档似乎另有建议或至少没有解释一对多映射:

主机名可以是机器名,例如“java.sun.com”,也可以是其 IP 地址的文本表示。

http://download.oracle.com/javase/1.4.2/docs/api/java/net/InetAddress.html#getAllByName%28java.lang.String%29

【问题讨论】:

    标签: ip hostname


    【解决方案1】:

    不,每个主机名都可以有多个指向不同 IP 的 DNS A 记录。这通常用于高级负载平衡。您可以在 google.com 上进行检查:

    $ host google.com
    google.com has address 209.85.148.104
    google.com has address 209.85.148.105
    google.com has address 209.85.148.103
    google.com has address 209.85.148.106
    google.com has address 209.85.148.147
    google.com has address 209.85.148.99
    google.com mail is handled by 30 alt2.aspmx.l.google.com.
    google.com mail is handled by 20 alt1.aspmx.l.google.com.
    google.com mail is handled by 50 alt4.aspmx.l.google.com.
    google.com mail is handled by 40 alt3.aspmx.l.google.com.
    google.com mail is handled by 10 aspmx.l.google.com.
    

    【讨论】:

      【解决方案2】:

      实际上,一台机器的 IP 取决于用于该机器的网络接口卡 (NIC) 的数量。因此,如果一台机器安装了 3 个 NIC,则该框将有 1 个主机名,但有 3 个不同的 IP。

      【讨论】:

        【解决方案3】:

        不,一个主机名可能有多个 A 记录,在这种情况下,解析器会将所有 IP 地址作为列表返回。您几乎可以在每个大型网站上查看它:

        ;; QUESTION SECTION:
        ;google.com.                    IN      A
        
        ;; ANSWER SECTION:
        google.com.             283     IN      A       74.125.232.82
        google.com.             283     IN      A       74.125.232.81
        google.com.             283     IN      A       74.125.232.83
        google.com.             283     IN      A       74.125.232.80
        google.com.             283     IN      A       74.125.232.84
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-05-07
          • 1970-01-01
          • 2017-10-30
          • 2018-07-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多