Los geeks de todo el mundo conocen a su anfitrión local como 127.0.0.1, pero ¿por qué esa dirección específica, de todas las direcciones disponibles, está reservada para el anfitrión local? Sigue leyendo para profundizar en la historia de los anfitriones locales.
Imagen de GMPhoenix; disponible como fondo de pantalla aquí.
La sesión de preguntas y respuestas de hoy nos llega por cortesía de SuperUser, una subdivisión de Stack Exchange, una agrupación de sitios web de preguntas y respuestas impulsada por la comunidad.
¿De qué vamos a hablar?
La pregunta
El lector de SuperUser Roee Adler, curioso sobre la IP de host local predeterminada, planteó la siguiente pregunta a la comunidad:
Me preguntaba cuál es el origen de la decisión a tomar
localhost
Dirección IP de ‘s127.0.0.1
. ¿Cuál es el “significado” de127
? ¿Cuál es el “significado” de0.0.1
?
¿Cuál es el significado, de hecho? Si bien es posible vivir toda tu existencia geek sin saber la respuesta a esas preguntas, estamos listos para profundizar.
Las respuestas
Varios colaboradores colaboraron para responder a la pregunta de Roee, cada una de sus contribuciones ayuda a arrojar más luz sobre cómo 127.0.0.1 es el lugar que todos llamamos hogar. John T escribe:
127 es el último número de red de una red de clase A con una máscara de subred de
255.0.0.0
.127.0.0.1
es la primera dirección asignable de la subred.127.0.0.0
no se puede usar porque ese sería el número de cable. Pero usar cualquier otro número para la parte del host debería funcionar bien y volver a usar127.0.0.1
. Puedes probarlo tú mismo haciendo ping127.1.1.1
si quieres. ¿Por qué esperaron hasta el último número de red para implementar esto? No creo que esté documentado.
Hyperslug hace un poco de investigación de archivos al cavar a través de viejos memorandos sobre el tema:
La primera mención que puedo encontrar con respecto a la asignación de 127 como loopback es noviembre de 1986 RFC 990 escrito por Reynolds y Postel:
La dirección cero debe interpretarse como que significa “esto”, como en “esta red”.
Por ejemplo, la dirección 0.0.0.37 podría interpretarse como el host 37 en esta red.
…
A la clase A número de red 127 se le asigna la función “loopback”, es decir, un datagrama enviado por un protocolo de nivel superior a una dirección de red 127 debe volver a bucle dentro del host. Ningún datagrama “enviado” a una dirección de red 127 debe aparecer en ninguna red en ningún lugar.
Ya en septiembre de 1981 RFC 790, 0 y 127 ya estaban reservados:
000.rrr.rrr.rrr Reserved [JBP] ... 127.rrr.rrr.rrr Reserved [JBP]0 y 127 eran las únicas redes reservadas de Clase A en 1981. 0 se usó para apuntar a un host específico, por lo que dejó 127 para el bucle invertido.
Sé que esto no responde a la pregunta, pero esto es lo más atrás que pude cavar. Podría haber tenido más sentido elegir 1.0.0.0 para el bucle invertido, pero eso ya se le dio a BBN Packet Radio Network.
Si bien todos conocemos y amamos 127.0.0.1 como localhost, vale la pena señalar que no será el localhost para siempre. 127.0.0.1 es como se designa el host local en las comunicaciones IPv4 y, a medida que IPv6 se hace cargo lentamente, será designado por un número mucho más intuitivo: 0:0:0:0:0:0:0:0:1.
¿Tienes algo que añadir a la explicación? Sonido apagado en los comentarios. ¿Desea leer más respuestas de otros usuarios expertos en tecnología de Stack Exchange? Echa un vistazo a la hilos de discusión completos aquí.