En supposant que ce qui suit est défini dans .../hosts
:
127.0.0.1 localhost
Quelles sont, le cas échéant, les différences réelles entre l'utilisation 127.0.0.1
et localhost
comme nom de serveur, en particulier lorsque vous frappez des processus s'exécutant localement et à l'écoute des connexions?
sockets
networking
dns
localhost
Bohème
la source
la source
localhost
c'est indépendant du protocole, IPv4 et IPv6 fonctionneront.Réponses:
Eh bien, la différence la plus probable est que vous avez encore à faire une réelle recherche de
localhost
quelque part.Si vous utilisez
127.0.0.1
, un logiciel (intelligent) transformera simplement cela directement en adresse IP et l'utilisera. Certaines implémentations degethostbyname
détecteront le format pointillé (et probablement le format IPv6 équivalent) et ne feront pas du tout de recherche.Sinon, le nom doit être résolu. Et il n'y a aucune garantie que votre
hosts
fichier sera réellement utilisé pour cette résolution (d'abord ou pas du tout) etlocalhost
peut donc devenir une adresse IP totalement différente .J'entends par là que, sur certains systèmes, un
hosts
fichier local peut être contourné. Lehost.conf
fichier contrôle cela sur Linux (et de nombreux autres Unices).la source
/etc/nsswitch.conf
sélectionne sihosts
ou DNS est utilisé en premier pour une recherche d'hôte, si nss est en cours d'exécution.Wikipédia résume bien cela:
La seule différence est que cela chercherait dans le DNS le système à quoi il
localhost
résout. Cette recherche est vraiment, vraiment rapide. Par exemple, pour vous y rendre,stackoverflow.com
saisissez-le dans la barre d'adresse (ou utilisez un bookmarklet pointant ici). Quoi qu'il en soit, vous êtes arrivé ici via un nom d'hôte.localhost
fournit une fonctionnalité similaire.la source
certaines applications traiteront spécialement "localhost". le client mysql traitera localhost comme une demande de connexion au socket de domaine local unix au lieu d'utiliser tcp pour se connecter au serveur sur 127.0.0.1. Cela peut être plus rapide et se trouver dans une zone d'authentification différente.
Je ne connais pas d'autres applications qui traitent localhost différemment de 127.0.0.1, mais il y en a probablement.
la source
Eh bien, par IP, c'est plus rapide.
Fondamentalement, lorsque vous appelez par nom de serveur, il est converti en IP d'origine.
Mais il serait difficile de mémoriser une adresse IP, pour cette raison le nom de domaine a été créé.
Personnellement, j'utilise à la
http://localhost
place dehttp://127.0.0.1
ouhttp://username
.la source
localhost
d'une manière particulière . D'autres applications chercheront probablement encorelocalhost
.Il n'y a rien de différent. L'un est plus facile à retenir que l'autre. En général, vous définissez un nom à associer à une adresse IP. Vous n'avez pas à spécifier localhost pour 127.0.0.1, vous pouvez spécifier le nom de votre choix.
la source
La principale différence est que la connexion peut être établie via Unix Domain Socket, comme indiqué ici: localhost vs 127.0.0.1
la source