¿Cuál es la diferencia entre 127.0.0.1 y 0.0.0.0?
La mayoría de nosotros hemos oído hablar de '127.0.0.1 y 0.0.0.0', pero es probable que no hayamos pensado mucho en ellos, pero si ambos parecen apuntar a la misma ubicación, ¿cuál es la diferencia real entre los dos? La publicación de preguntas y respuestas de SuperUser de hoy ayuda a aclarar las cosas para un lector confundido.
La sesión de Preguntas y Respuestas de hoy nos llega por cortesía de SuperUser, una subdivisión de Stack Exchange, un grupo de sitios web de preguntas y respuestas impulsado por la comunidad..
Foto cortesía de Kate Gardiner (Flickr)..
La pregunta
El lector superusuario Sagnik Sarkar quiere saber cuál es la diferencia entre 127.0.0.1 y 0.0.0.0:
Entiendo que 127.0.0.1 apunta a localhost y que 0.0.0.0 también lo hace (corrígeme si me equivoco). Entonces, ¿cuál es la diferencia entre 127.0.0.1 y 0.0.0.0??
¿Cuál es la diferencia entre 127.0.0.1 y 0.0.0.0??
La respuesta
DavidPostill, colaborador de Superusuario, tiene la respuesta para nosotros:
¿Cuál es la diferencia entre 127.0.0.1 y 0.0.0.0??
- 127.0.0.1 es la dirección de bucle de retorno (también conocida como localhost).
- 0.0.0.0 es una meta-dirección no enrutable que se utiliza para designar un objetivo no válido, desconocido o no aplicable (un titular de una 'no dirección particular').
En el contexto de una entrada de ruta, generalmente significa la ruta predeterminada.
En el contexto de los servidores, 0.0.0.0 significa Todas las direcciones IPv4 en la máquina local. Si un host tiene dos direcciones IP, 192.168.1.1 y 10.1.2.1, y un servidor que se ejecuta en el host escucha 0.0.0.0, será accesible en ambas IPs..
¿Qué es la dirección IP 127.0.0.1??
127.0.0.1 es la dirección del protocolo de Internet (IP) de bucle de retorno, también denominada dirección localhost. La dirección se utiliza para establecer una conexión IP a la misma máquina o computadora que está utilizando el usuario final.
La misma convención se define para las computadoras que admiten el direccionamiento IPv6 utilizando la connotación de :: 1. Establecer una conexión utilizando la dirección 127.0.0.1 es la práctica más común; sin embargo, el uso de cualquier dirección IP en el rango de 127 ... * funcionará de la misma manera o de una manera similar. La construcción de bucle invertido le da a una computadora o dispositivo capaz de conectar en red la capacidad de validar o establecer la pila de IP en la máquina.
Fuente: 127.0.0.1 - ¿Cuáles son sus usos y por qué es importante??
Direcciones especiales
Al número de red de clase A 127 se le asigna el loopback una función, es decir, un datagrama enviado por un protocolo de nivel superior a una dirección de red 127 debería regresar dentro del host. Sin datagrama expedido a una red 127 la dirección siempre debe aparecer en cualquier red en cualquier lugar.
Fuente: Números de red
Si es la Clase A completa, ¿cuál es el punto de otros valores arbitrarios para los últimos tres octetos??
El propósito del rango de bucle invertido es probar la implementación del protocolo TCP / IP en un host. Dado que las capas inferiores están cortocircuitadas, el envío a una dirección de bucle invertido permite que las capas superiores (IP y superiores) se prueben efectivamente sin la posibilidad de que se manifiesten problemas en las capas inferiores. 127.0.0.1 es la dirección más utilizada para fines de prueba.
Fuente: IP Reservado, Loopback y Direcciones Privadas
Para más información vea la Pregunte a Ubuntu pregunta: ¿Qué es el dispositivo de bucle invertido y cómo lo uso??
¿Qué es la dirección IP 0.0.0.0??
0.0.0.0 es una sintaxis de dirección válida. Por lo tanto, debe analizar como válido donde se espera una dirección IP en la notación decimal con puntos tradicional. Una vez analizado y convertido a una forma numérica viable, su valor determina lo que sucede a continuación.
El valor de todo cero tiene un significado especial. Así es válido, pero tiene un significado que puede no ser apropiado (y, por lo tanto, tratado como no válido) para circunstancias particulares. Es básicamente el marcador de posición "sin dirección particular". Para cosas como el enlace de direcciones de las conexiones de red, el resultado puede ser asignar una dirección de interfaz adecuada a la conexión. Si lo está utilizando para configurar una interfaz, puede eliminar una dirección de la interfaz. Depende del contexto de uso para determinar lo que realmente hace 'ninguna dirección en particular'.
En el contexto de una entrada de ruta, usualmente significa la ruta predeterminada. Eso sucede como resultado más de la máscara de dirección, que selecciona los bits para comparar. Una máscara de 0.0.0.0 no selecciona bits, por lo que la comparación siempre tendrá éxito. Por lo tanto, cuando se configura una ruta de este tipo, siempre hay un lugar para que vayan los paquetes (si se configura con un destino válido).
En algunos casos, simplemente '0' también funcionará y tendrá el mismo efecto. Pero esto no está garantizado. El formulario 0.0.0.0 es la forma estándar de decir 'sin dirección particular' (en IPv6 que es :: 0 o solo ::).
Fuente: ¿Cuál es el significado de la dirección IP 0.0.0.0??
En la versión 4 del Protocolo de Internet, la dirección 0.0.0.0 es una meta-dirección no enrutable que se utiliza para designar un destino no válido, desconocido o no aplicable. Para dar un significado especial a un dato por lo demás inválido es una aplicación de señalización en banda..
En el contexto de los servidores, 0.0.0.0 significa Todas las direcciones IPv4 en la máquina local. Si un host tiene dos direcciones IP, 192.168.1.1 y 10.1.2.1, y un servidor que se ejecuta en el host escucha 0.0.0.0, se podrá acceder a ambas IP (Nota: Este texto en particular se repite desde arriba como parte de la respuesta general.).
En el contexto del enrutamiento, 0.0.0.0 generalmente significa la ruta predeterminada, es decir, la ruta que conduce al "resto de" Internet en lugar de a algún lugar de la red local.
Los usos incluyen:
- La dirección que un host reclama como propia cuando aún no se le ha asignado una dirección. Por ejemplo, al enviar el paquete DHCPDISCOVER inicial al usar DHCP.
- La dirección que un host se asigna a sí misma cuando una solicitud de dirección a través de DHCP ha fallado, siempre que la pila de IP del host lo admita. Este uso ha sido reemplazado por el mecanismo APIPA en los sistemas operativos modernos..
- Una forma de especificar cualquier IPv4-host en absoluto. Se utiliza de esta manera cuando se especifica una ruta predeterminada..
- Una forma de especificar explícitamente que el objetivo no está disponible. Fuente: 127.0.0.1 - ¿Cuáles son sus usos y por qué es importante??
- Una forma de especificar cualquier dirección IPv4 en absoluto. Se usa de esta manera cuando se configuran servidores (es decir, cuando se enlazan sockets de escucha). Esto es conocido por los programadores de TCP como INADDR_ANY. Elbind (2) se une a direcciones, no a interfaces.]
En IPv6, la dirección de todos los ceros se escribe como ::
Fuente: 0.0.0.0 [Wikipedia]
Descubrimiento / Solicitud DHCP
Cuando un cliente arranca por primera vez, se dice que está en el estado de inicialización, y transmite un mensaje DHCPDISCOVER en su subred física local a través del puerto 67 (servidor BootP) del Protocolo de datagramas de usuario (UDP). Como el cliente no tiene forma de saber la subred a la que pertenece, el DHCPDISCOVER es una difusión de todas las subredes (dirección IP de destino de 255.255.255.255), con una dirección IP de origen de 0.0.0.0. La dirección IP de origen es 0.0.0.0 ya que el cliente no tiene una dirección IP configurada.
Si existe un servidor DHCP en esta subred local y está configurado y funcionando correctamente, el servidor DHCP escuchará la transmisión y responderá con un mensaje DHCP. Si no existe un servidor DHCP en la subred local, debe haber un Agente de retransmisión DHCP / BootP en esta subred local para reenviar el mensaje DHCPDISCOVER a una subred que contenga un servidor DHCP.
Este agente de retransmisión puede ser un host dedicado (Microsoft Windows Server, por ejemplo) o un enrutador (un enrutador Cisco configurado con declaraciones de ayudante de IP a nivel de interfaz, por ejemplo).
...
Después de que el cliente recibe un DHCPOFFER, responde con un mensaje DHCPREQUEST, indicando su intención de aceptar los parámetros en el DHCPOFFER, y se mueve a la estado solicitante. El cliente puede recibir múltiples mensajes DHCPOFFER, uno de cada servidor DHCP que recibió el mensaje DHCPDISCOVER original. El cliente elige un DHCPOFFER y responde solo a ese servidor DHCP, rechazando implícitamente todos los demás mensajes de DHCPOFFER. El cliente identifica el servidor seleccionado llenando el Identificador de servidor campo de opción con la dirección IP del servidor DHCP.
El DHCPREQUEST también es una transmisión, por lo que todos los servidores DHCP que enviaron un DHCPOFFER verán el DHCPREQUEST, y cada uno sabrá si su DHCPOFFER fue aceptado o rechazado. Cualquier opción de configuración adicional que requiera el cliente se incluirá en el campo de opciones del mensaje DHCPREQUEST. Aunque se le haya ofrecido una dirección IP al cliente, enviará el mensaje DHCPREQUEST con una dirección IP de origen 0.0.0.0. En este momento, el cliente aún no ha recibido la verificación de que está claro usar la dirección IP.
...
Conversación cliente-servidor para un cliente que obtiene una dirección DHCP donde el cliente y el servidor DHCP residen en la misma subred:
Fuente: Comprensión y solución de problemas de DHCP en Catalyst Switch o redes empresariales
Ruta por defecto
Este documento explica cómo configurar una ruta o puerta de enlace predeterminada de último recurso. Estos comandos de IP se utilizan:
- puerta de enlace predeterminada de ip
- red predeterminada de ip
- ruta ip 0.0.0.0 0.0.0.0
Ruta IP 0.0.0.0 0.0.0.0
Crear una ruta estática a la red 0.0.0.0 0.0.0.0 es otra forma de establecer la puerta de enlace de último recurso en un enrutador. Como con el red predeterminada de ip comando, el uso de la ruta estática a 0.0.0.0 no depende de ningún protocolo de enrutamiento. Sin embargo, el enrutamiento IP debe estar habilitado en el enrutador.
Nota: IGRP no entiende una ruta a 0.0.0.0. Por lo tanto, no puede propagar rutas predeterminadas creadas usando el ruta ip 0.0.0.0 0.0.0.0 mando. Utilizar el red predeterminada de ip comando para que IGRP propague una ruta por defecto.
Fuente: Configuración de una puerta de enlace de último recurso mediante comandos de IP
¿Tienes algo que agregar a la explicación? Apaga el sonido en los comentarios. ¿Quieres leer más respuestas de otros usuarios de Stack Exchange con experiencia en tecnología? Echa un vistazo a la discusión completa aquí.