такое имя хоста для ip сопоставления один-к-одному? - PullRequest
5 голосов
/ 07 августа 2011

является ли имя хоста для сопоставления один к одному? Как имя хоста может иметь несколько IP-адресов? согласно getAllByName Java, он возвращает список ips для hostName, но его документация предлагает иное или, по крайней мере, не объясняет сопоставление один ко многим:

The host name can either be a machine name, such as "java.sun.com", or a textual representation of its IP address.

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

Ответы [ 3 ]

8 голосов
/ 07 августа 2011

Нет, каждое имя хоста может иметь несколько записей DNS A, указывающих на разные IP-адреса. Это часто используется для балансировки нагрузки высокого уровня. Вы можете проверить это, например, на 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.
1 голос
/ 07 августа 2011

На самом деле IP-адрес компьютера зависит от количества сетевых интерфейсных плат (NIC), которые используются для этого блока. Таким образом, если на машине установлено 3 NIC, для этого блока будет 1 имя хоста, но 3 разных IP.

0 голосов
/ 07 августа 2011

Нет, имя хоста может иметь несколько записей 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
...