Infraestructura de Internet: ¿por qué todavía tenemos Hosts.txt localmente para las direcciones IP cuando el DNS básicamente ha desaprobado el uso de Hosts.txt hace 30 años?

Si tiene un clúster informático de alto rendimiento donde necesita que las máquinas tengan nombres, el protocolo DNS es demasiado lento. No va a agregar / eliminar máquinas con la frecuencia suficiente para preocuparse por las definiciones estáticas, pero absolutamente necesita ese rendimiento.

Si tiene un conjunto de máquinas en red, por ejemplo, en un automóvil (donde todos los componentes están computarizados ahora), la topología de la red es absolutamente fija en el momento del diseño. Aunque uno podría preguntarse si dicha red usaría nombres, los nombres facilitan la codificación y el mantenimiento. No puedo hablar de la frecuencia con la que los autos usan nombres de host, o si usan TCP / IP sobre su entramado de Ethernet, pero puedo decir que si tuviera que diseñar uno, preferiría que mis analizadores de protocolo me informaran sobre un nombre de host del motor que una dirección IP de 10.0.0.75, que necesitaría buscar.

DNS solo puede encontrar otros servidores DNS si hay un medio para arrancar la red. Esto se hace popularmente con DHCP, aunque los usuarios de IPv6 generalmente estarían mejor con el descubrimiento automático de recursos. Cada uno por su cuenta. Sin embargo, el DHCP no siempre se usa por varias razones. Si no hay DHCP, no hay forma de que el árbol DNS se forme completamente. El respaldo estándar es el archivo de hosts, que debe proporcionar la dirección de cada recurso clave que se necesita para que el sistema se configure por completo.

Cualquier dispositivo que use TCP / IP para comunicarse, pero físicamente solo está vinculado a su computadora, no tiene medios para comunicarse con el servidor DHCP, por ejemplo. Es una carga excesiva hacer que ejecute un servidor DNS para sí mismo y el puerto al que se conecta en su máquina, por lo que usaría un archivo de hosts para eso.

Por último, y este es quizás el factor más importante de todos, los protocolos DNS y DHCP son increíblemente inseguros. Son altamente vulnerables a la explotación y al ataque. También exponen el funcionamiento interno de una red a aquellos que no es deseable tener tan informados. La mejor manera de minimizar la explotación es minimizar el uso de estos protocolos en la medida de lo posible, mantener la información en las zonas a las que es pertinente. Las máquinas en la zona desmilitarizada de una red corporativa no deben ser arrancadas con DHCP interno y DNS interno si eso es remotamente posible. Los servidores DMZ deben tener conocimiento solo de las máquinas internas a las que deben acceder. A menos que un nombre de host externo sea realmente útil (y resolver nombres de host suele ser una operación costosa en tiempo de computadora), es infinitamente mejor registrar solo direcciones IP y tampoco tener acceso a DNS externo. Todos los nombres y direcciones utilizados, por lo tanto, deben provenir del archivo hosts.

Además de la respuesta de Alec Cawley, hay una pequeña pregunta de operación sin DNS.

Sí, el DNS está muy extendido en Internet hoy en día, pero estrictamente hablando no es un requisito para las redes IP. Si tiene interés en crear redes IP que no estén conectadas a Internet, ¿cómo se ocupa de nombrar? Hosts.txt no escala bien, pero es fácil y bastante suficiente para redes pequeñas.

Y es maravilloso si tiene que anular lo que hay en DNS.

Hosts.txt es muy útil para anular DNS cuando sea necesario. A modo de ejemplo, nosotros (como muchas otras compañías) tenemos un conjunto de puntos finales de “puesta en escena” para nuestro sitio web y los principales servicios de API que solo son accesibles al conocer sus direcciones IP y ponerlas en hosts.txt. Muchos de nosotros hacemos esto de tal manera que si hay un problema con esa versión del sitio, es probable que lo detectemos antes de que salga al resto del mundo.

Porque nadie quiere ser la persona que lo saca. Tiene usos en redes no conectadas a Internet, de las cuales, por razones de seguridad, hay muchas. No tienes que poner nada en él; probablemente se leerá en el inicio tomando un instante. Probablemente ocupa una unidad mínima de espacio en disco. ¿Por qué gastar tiempo y energía eliminando algo, a riesgo de romper cosas para alguien, en algún lugar, cuando el costo de dejarlo es trivial?

Hay múltiples razones:

  • Resolución de nombres ANTES de enrutamiento de red o servicios de nombres locales disponibles (como para un sistema de archivos montado en red crítico).
  • localhost
  • Probar el servicio que se está moviendo a una dirección IP alternativa para asegurarse de que los nombres de dominio y los Certificados SSL sean correctos.
  • Nombres privados cuando un servidor de nombres para ellos no está disponible.
  • Solución de problemas de DNS borked / fat-finger dedos que aún requieren nombres de host para funcionar.

Es posible que necesite uno en su servidor DNS para indicarle dónde está el servidor de almacenamiento mientras se inicia.

Además, en un entorno seguro es útil si desea nombrar dispositivos y no confía en el DNS, o no puede confiar en la red para que su servidor DNS esté activo.

Lo he usado en una red ad-hoc, para que mi tableta se comunique con mi computadora portátil cuando estoy navegando, así que puedo decir “tableta ssh” en lugar de “ssh 10.42.43.10”.

Es genial en un entorno de laboratorio donde no quiero pasar por la molestia burocrática de registrar cada sistema de prueba con servidores corporativos. También es útil en casa si su puerta de enlace a Internet no tiene capacidad de DNS.

More Interesting

¿Qué puede encontrar un pirata informático sobre usted en un paquete TCP IP?

¿Puedo obtener mi dirección IP de mi cuenta de correo electrónico?

¿En qué capa OSI funciona IPSec?

¿Cómo controla la ventana de congestión TCP la velocidad de envío en específico?

¿Qué es el envenenamiento de caché?

Cómo cambiar mi dirección IP

¿Alguien puede rastrear mi identificación a través de una aplicación de chat como Viber? ¿Y cuánto tiempo desaparece la dirección IP si no inicio sesión?

¿Funciona un socket de red en la capa 4 o 5 de un modelo OSI o un modelo TCP / IP? Si funciona en la capa 4, entonces qué hace realmente la capa de sesión, cuando los sockets son las conexiones reales que actúan como una interfaz entre la aplicación y las capas inferiores.

¿Cómo se redirige una solicitud HTTP al servidor con la dirección IP correspondiente?

¿Se les permite a los ISP controlar el tráfico (descartar paquetes) cuando el suscriptor cruza el límite de datos a alta velocidad? ¿No deberían dar forma al tráfico para que no desconectemos las conexiones existentes debido a la vigilancia?

¿Cómo puedo convertir IP pública a IP privada?

¿Es cierto que la calidad de una llamada VoIP es menor en comparación con una llamada de circuito conmutado?

Respuesta de : Host de destino inalcanzable, ¿es esta IP la puerta de enlace predeterminada desde mi PC al primer enrutador?

¿El modelo OSI también se aplica a las redes móviles?

Cómo rastrear a alguien a través de una dirección IP