Имя хоста Vs Canonical Host Name

Может кто-нибудь объяснить мне разницу между именем хоста и именем Canonical Host?

В настоящее время я использую класс InetAddress для извлечения имени узла с помощью IP-адреса. Я столкнулся с этими двумя API. Поэтому мне просто интересно, какой из них я должен выбрать?

Ответы

Ответ 1

Существует несколько различий между ними:

  • getCanonicalHostName() будет пытаться разрешить полное полное доменное имя. Поэтому вы получите foo.mycompany.com, тогда как getHostName() может просто вернуть foo.

  • getCanonicalHostName() всегда будет выполнять обратный поиск DNS, тогда как getHostName() вернет сохраненное имя хоста, если вы предоставили его в конструкторе InetAddress.

Я подозреваю, что вы захотите использовать getCanonicalHostName(), если вы собираетесь сопоставлять IP-адреса с именами хостов.