por favor dígame cómo funciona DNS en Linux con comandos y también depuración

por favor dígame cómo funciona DNS en Linux con comandos y también depuración

Quiero entender el flujo que ocurre cuando escribimos una URL en el navegador y cómo depurar si algo no funciona usando los comandos de Linux.

Respuesta1

[Quiero] entender el flujo que ocurre cuando escribimos alguna URL en el navegador.

ver por ejemplo

y como depurar

Las herramientas más útiles probablemente sean

  • tcpdump.
  • nslookupo sus equivalentes más modernos hosty dig.
  • wgeto curl. Lea sus páginas de manual para descubrir opciones útiles como
    • --server-response,
    • --debug,
    • --verbose,
    • --no-dns-cache

Sin embargo, primero debe comprender la resolución de nombres locales porque hay servicios de nombres que pueden usarse antes que DNS (por ejemplo, archivos de hosts locales y también, en algunas configuraciones poco comunes, otros servicios de red como NBNS, YP, etc.). empezaría leyendoman resolv.conf

Respuesta2

El sistema Linux se envía con una serie de bibliotecas del sistema, incluida una implementación de sys/sockets.hprogramas C que implementa elAPI de enchufes BerkeleyyPOSIXestándares. La especificación POSIX incluye la definición de unmétodollamado getaddrinfo()que devuelve la dirección IP del host a un programa que la necesita. Cada tiempo de ejecución de programación (p. ej.Pitón,perla,PHP, etc) implementa sus propias interfaces mediante las cuales llamanobteneraddrinfo()pero la mayoría de ellos en realidad utilizan el método del kernel para procesar una solicitud de DNS.

Una conexión de sockets implica una serie de llamadas a métodos, incluidos socket(), bind(), connect(), etc. Vea mi respuestaaquísobre cómo se coordinan esas llamadas para crear una conexión de red.

La solución de problemas de resolución de DNS en el lado del cliente simplemente se reduce al Servidor y la Caché. El servidor responderá con la dirección que conoce para el destino, pero si no es la dirección que desea por cualquier motivo (geolocalización, lista negra, etc.), puede cambiar de servidor a uno que tenga la dirección que desea. Si se está conectando a un servidor con la dirección que desea, pero aún obtiene un mal resultado, puede deberse a una respuesta almacenada en caché en su host o en un enrutador o proxy de almacenamiento en caché.

información relacionada