Question

Est-il toujours possible d'envoyer une requête ping à l'hôte local et cela résout 127.0.0.1?

Je sais que Windows Vista, XP, Ubuntu et Debian le font, mais est-ce que tout le monde le fait?

Était-ce utile?

La solution

Toute implémentation correcte de TCP / IP réservera l'adresse 127.0.0.1 pour faire référence à la machine locale. Cependant, le mappage du nom "localhost" Cette adresse dépend généralement du fichier système hosts . Si vous supprimez l'entrée localhost de hôtes , le nom de l'hôte local peut ne plus être résolu correctement du tout.

Autres conseils

127.0.0.1 est réservé dans toute pile IP pour l'hôte local.

" localhost " Un nom d’hôte n’est pas garanti. Si les paramètres hôte / DNS sont mal configurés, localhost ne sera pas résolu.

Exemple sur une boîte de dialogue debian:

topaz:/root# vi /etc/hosts
[comment out localhost entry]

topaz:/root# ping localhost 
ping: unknown host localhost

Non. Pour commencer, localhost est une convention plutôt qu'une règle. Généralement, il est défini par défaut, mais rien ne l'exige.

Deuxièmement, rien ne dit que vous pouvez toujours envoyer une requête ping à 127.0.0.1. Par exemple (sur un système Unix), essayez ce qui suit:

sudo ifconfig lo down ping 127.0.0.1

As cruizer , a déclaré , 127.0.0.1 (s’il existe) est défini comme étant la machine locale. Mais cela ne doit pas nécessairement exister.

La réponse pédante (pardon, Greg :), est de lire RFC 3330 . :

   127.0.0.0/8 - This block is assigned for use as the Internet host
   loopback address.  A datagram sent by a higher level protocol to an
   address anywhere within this block should loop back inside the host.
   This is ordinarily implemented using only 127.0.0.1/32 for loopback,
   but no addresses within this block should ever appear on any network
   anywhere [RFC1700, page 5].

(Le "ordinairement" ci-dessus doit probablement être lu comme "souvent" - la plupart des systèmes d'exploitation actuels prennent en charge l'utilisation de 127.0.0.0/8 en boucle.)

En ce qui concerne le "localhost" résout toujours à 127.0.0.1 - il a raison, c'est en général le même, mais techniquement, il est spécifique à la mise en œuvre:

~> dig localhost.t...e.org

...

;; ANSWER SECTION:
localhost.t...e.org. 86400 IN    A       127.0.0.2

Si les serveurs DNS auxquels votre client est connecté suit rfc1912, alors oui, localhost doit être résolu en 127.0.0.1.

RFC1912
4.1
...
   Certain zones should **always be present** in nameserver configurations:
           primary         localhost               localhost
           primary         0.0.127.in-addr.arpa    127.0
...
   The "localhost" address is a "special" address which always refers to
   the local host.  It should contain the following line:

           localhost.      IN      A       127.0.0.1

   The "127.0" file should contain the line:

           1    PTR     localhost.

Je pense que localhost résoud à 127.0.0.1 pour la plupart des plateformes, mais toutes les adresses IP commençant par 127. . . * sont également résolus en localhost. Essayez de faire un ping sur 127.255.255.254 et il répondra toujours.

En théorie, il peut arriver que cela n’existe pas. En pratique, c'est toujours là.

De bons pare-feu vous permettent de filtrer l'accès aux interfaces de bouclage. Il est donc possible de configurer une règle de pare-feu qui supprime les paquets ping icmp destinés à localhost (127.0.0.1). De plus, comme tout le monde l’a déjà mentionné, même l’existence de l’adresse localhost ou 127.0.0.1 et de l’interface de bouclage n’est pas garantie.

La réponse est:

127.0.0.1, souvent appelé "boucle de rappel", est requis. Bien que votre ordinateur puisse vous permettre de faire des choses stupides, telles que le désactiver ou configurer cette plage sur une interface physique, celles-ci ne sont pas valides.

" localhost " est simplement un nom d’hôte qui, par convention, devrait être 127.0.0.1 En tant qu’administrateur système ou maître d’hôte, vous devez éviter les configurations permettant à localhost de pointer vers d’autres adresses.

Vous ne devez pas modifier votre fichier hosts pour modifier l'adresse de "localhost". Vous devez configurer vos domaines pour avoir un hôte local. et l'entrée localhost.domain.com qui pointe vers 127.0.0.1.

Vous ne devez pas laisser vos serveurs proxy répondre à " localhost " ou tout nom de domaine complet commençant par localhost.

Ok.

La raison pour laquelle il est résolu est un enregistrement dans le fichier% WINDOWS_DIR% \ System32 \ drivers \ etc \ hosts, comme suit:

127.0.0.1 localhost

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top