web-dev-qa-db-fra.com

Nom d'hôte contre nom d'hôte canonique

Quelqu'un peut-il m'expliquer la différence entre le nom d'hôte et le nom d'hôte canonique?

J'utilise actuellement la classe InetAddress pour récupérer le nom d'hôte à l'aide de l'adresse IP. Je suis tombé sur ces 2 API. Je me demande donc lequel choisir?

26
Aryan

Il y a quelques différences entre les deux:

  • getCanonicalHostName() tentera de résoudre le FQDN . Par conséquent, vous obtiendrez foo.mycompany.com alors que getHostName() pourrait simplement renvoyer foo .

  • getCanonicalHostName() fera toujours une recherche DNS inversée, tandis que getHostName() retournera le nom d'hôte stocké si vous en avez fourni un dans le constructeur InetAddress.

Je soupçonne que vous souhaiterez utiliser getCanonicalHostName() si vous avez l'intention de mapper les adresses IP aux noms d'hôte.

29
Duncan Jones