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?
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.