domingo, 25 de noviembre de 2012

dig *excavación*

Saludos Mundo Libre.

Hoy me he encontrado con una exelente herramienta llamada Dig que acontinuacion explicare para ustedes.

Introducción

dig es una herramienta de línea de comandos para consultar servidores de nombres DNS para obtener información acerca de las direcciones de host, intercambios de correo, servidores de nombres, e información relacionada. La excavación (1) página de manual está algo que desear cuando se trata de ejemplos, una deficiencia presente artículo trata de remediar.

El código fuente de excavación es parte de la distribución de BIND mayor ISC. Compilar e instalar BIND son temas que están fuera del alcance de este documento, pero en Linux excavación es por lo general parte de un paquete común: bind-tools (Gentoo), bind-utils (Red Hat, Fedora), o dnsutils (Debian).

Si usted está buscando información sobre la configuración del servidor de nombres BIND, usted puede ser que encuentre mi BIND artículo para la pequeña LAN más a su gusto.
Comprender la salida por defecto

El más típico, el más simple consulta es para un solo host. De forma predeterminada, sin embargo, dig es bastante detallado. Es probable que no necesitan toda la información en la salida por defecto, pero es probable que vale la pena saber lo que es. A continuación se muestra una consulta de anotaciones.

$ Dig www.isc.org

Esa es la invocación de línea de comandos de excavación que he usado.

; << >> << >> DiG 9.2.3 www.isc.org
;; Opciones globales: printcmd

La primera sección de salida dig nos dice un poco acerca de sí mismo (versión 9.2.3) y las opciones globales que se establecen (en este caso, printcmd). Esta parte de la salida puede ser sofocado mediante la opción nocmd +, pero sólo si es el primer argumento en la línea de comandos (incluso anterior al anfitrión que está consultando).

;; Got respuesta:
;; - << >> HEADER - opcode: QUERY, estado: NOERROR, id: 43071
;; Banderas: qr ra rd; QUERY: 1, RESPUESTA: 1, AUTORIDAD: 3, ADICIONALES: 3

Aquí, dig nos dice algunos detalles técnicos sobre la respuesta recibida del servidor DNS. Esta sección de la salida puede activarse con la opción-pero + [no] Comentarios ten cuidado que la desactivación de los comentarios también se apaga muchos encabezados de sección.

;; Sección de preguntas:
; Www.isc.org. EN UN

En la sección de preguntas, dig nos recuerda nuestra consulta. La consulta predeterminada es una dirección de Internet (A). Puede activar esta salida activado o desactivado con las teclas + [no] opción cuestión.

;; RESPUESTA SECCIÓN:
www.isc.org. 600 IN A 204.152.184.88

Por último, tenemos nuestra respuesta: la dirección de www.isc.org es 204.152.184.88. No sé por qué nunca querría apagar la respuesta, pero puede cambiar esta sección de la salida con las teclas + [no] opción de respuesta.

;; AUTORIDAD SECCIÓN:
isc.org. 2351 IN NS ns-int.isc.org.
isc.org. 2351 IN NS ns1.gnac.com.
isc.org. 2351 IN NS ns-ext.isc.org.

La sección de autoridad nos dice qué servidores DNS pueden proporcionar una respuesta autorizada a nuestra consulta. En este ejemplo, isc.org tiene tres servidores de nombres. Puede alternar esta sección de la salida con las teclas + [no] opción autoridad.

;; SECCIÓN ADICIONAL:
ns1.gnac.com. 171551 IN A 209.182.216.75
ns-int.isc.org. 2351 IN A 204.152.184.65
ns-int.isc.org. 2351 IN AAAA 2001:4 f8: 0:2 :: 15

La sección adicional suele incluir las direcciones IP de los servidores DNS mostrado en la sección de autoridad. Esta sección de la salida se puede activar con las teclas + [no] opción adicional.

;, Tiempo de consulta: 2046 ms
;; SERVER: 127.0.0.1 # 53 (127.0.0.1)
;; CUÁNDO: Vie Ago 27 08:22:26 2004
;; MSG SIZE rcvd: 173

La sección final de la salida predeterminada contiene información sobre la consulta, sino que puede ser activado con el + [no] opción stats.
¿Qué puedo descubrir?

dig le permitirá realizar cualquier consulta DNS válido, el más común de los cuales son A (la dirección IP), TXT (anotaciones de texto), MX (intercambio de correo), servidores NS nombre o el ómnibus HAY.

# Obtener la dirección (es) para yahoo.com
cavar yahoo.com A + + Noall respuesta

# Obtener una lista de servidores de correo yahoo
cavar yahoo.com MX + + Noall respuesta

# Obtener una lista de servidores DNS autoritativos para yahoo.com
cavar yahoo.com NS + + Noall respuesta

# Obtener todo lo anterior
cavar yahoo.com CUALQUIER + + Noall respuesta

Más oscura, por el momento, de todos modos, también puede sondear la dirección IPv6 del host utilizando la opción de AAAA.

dig + short www.isc.org AAAA

Si el dominio que desea consultar permite transferencias de DNS, puede obtener esos, también. La realidad de la vida en Internet, sin embargo, es que los dominios muy pocos permitir transferencias sin restricciones estos días.

dig yourdomain.com AXFR

¿Cómo lo hago ...
Obtener una respuesta rápida?

Cuando todo lo que quiero es una respuesta rápida, la opción + corta es su amigo:

$ Dig + short www.isc.org
204.152.184.88

Obtener una respuesta no del todo-tan-corta?

Tenga en cuenta que una respuesta corta es diferente de sólo una respuesta. La manera de obtener una respuesta detallada, pero sin ninguna información auxiliar, es apagar todos los resultados (+ Noall) y vuelva a encender sólo las secciones que desee.

Aquí hay una respuesta corta seguido por sólo una respuesta, esta última incluye toda la información de configuración, incluyendo Time-To-Live (TTL), los datos que se muestran en un formato compatible con los archivos de configuración de BIND.

$ Dig + short fsf.org mx
20 mx20.gnu.org.
30 mx30.gnu.org.
10 mx10.gnu.org.

$ Dig + nocmd fsf.org mx + + Noall respuesta
fsf.org. 3583 IN MX 30 mx30.gnu.org.
fsf.org. 3583 IN MX 10 mx10.gnu.org.
fsf.org. 3583 IN MX 20 mx20.gnu.org.

Obtener una respuesta larga?

De acuerdo con su página de manual, la opción + multiline le dará una respuesta con "los registros SOA en un detallado multi-formato de línea con comandos legibles." En general, las respuestas recuperar con la opción + multilínea aparecerá más como BIND archivos de configuración de lo que será sin ella.

$ Dig + nocmd ogi.edu cualquier multiline + + + Noall respuesta
ogi.edu. 14267 IN A 129.95.59.31
ogi.edu. 14267 IN MX 5 cse.ogi.edu.
ogi.edu. 14267 IN MX 15 hermes.admin.ogi.edu.
ogi.edu. 14267 IN SOA zeal.admin.ogi.edu. hostmaster.admin.ogi.edu. (
                   200408230, serial
                   14400; refresh (4 horas)
                   900; reintento (15 minutos)
                   3600000; expirar (5 semanas 6 días 16 horas)
                   14400; mínimo (4 horas)
                   )
ogi.edu. 14267 EN zeal.admin.ogi.edu NS.
ogi.edu. 14267 EN cse.ogi.edu NS.
ogi.edu. 14267 EN fork.admin.ogi.edu NS.

Haga una búsqueda inversa?

Utilice la opción-x para buscar el nombre del sistema principal asociado a una dirección IP.

$ Dig-x 204.152.184.167 + short
mx-1.isc.org.

En un bucle, esta es una manera hábil para asignar los nombres en una subred:

#! / Bin / bash
NET = 07/18/22
para n en $ (seq 1 254); hacer
  ADDR = $ {NET}. $ {N}
  echo-e "$ {DIR} \ t $ (dig-x $ {DIR} + short)"
hecho

Consultar un servidor de nombres diferentes?

Sólo tienes que especificar en la línea de comandos:

dig@ns1.google.com www.google.com

Utilice la lista de búsqueda en / / resolv.conf etc?

La utilidad anfitrión utilizará automáticamente la lista de búsqueda en el archivo / etc / resolv.conf.

$ Host www
www.madboa.com tiene la dirección 65.102.49.170

De forma predeterminada, sin embargo, cavar doesnt-que puede producir resultados inesperados. Si desea utilizar nombres de host locales en lugar de nombres de dominio completos, utilice la opción de búsqueda +.

dig www + búsqueda

Hacer búsquedas a granel?

Si desea consultar un gran número de nombres de host, puede ponerlos en un archivo (un nombre por línea) y utilice la opción-f para consultar cada uno de ellos.

# Hacer búsquedas completas para un número de nombres de host
dig-f / ruta / a / host-list.txt

# La misma salida, con más centrado
dig-f / ruta / a / host-list.txt + + Noall respuesta

Por lo que yo puedo decir, cavar versiones hasta e incluyendo la 9.2.3 no pueden hacer búsquedas inversas utilizando la opción-f.
Verificación de las asignaciones de DNS

Una configuración incorrecta de la configuración DNS puede ser realmente molesto. Usted quiere asegurarse de que sus asignaciones de trabajo en ambos sentidos:

    Cada host debe resolver en una dirección, y esa dirección debe resolver de nuevo al propio nombre de host.

    Si una dirección en la subred (s) se ha asignado un puntero inverso para un nombre de host, nombre de host que debe apuntar a la dirección original.

Hay excepciones a estas dos reglas, por supuesto. Un CNAME se resolverá como también por primera vez el nombre de host, y sólo entonces a una dirección. A veces los nombres de host múltiple apuntará a la misma dirección, pero esa dirección tendrá un solo puntero inverso.

Aún así, es bueno saber que sus asignaciones básicas funcionan como se esperaba.

Usted puede crear un script tal examen si usted construye un archivo que contiene los nombres de hosts conocidos. El script de ejemplo a continuación es bastante simple, se romperá si se alimenta un CNAME, y va a informar de un error en alguna parte si el punto de nombres de host múltiple a la misma dirección. Supongamos que el archivo que contiene los nombres de host se llama named-anfitriones.

#! / Bin / bash
#
# Test DNS hacia adelante y hacia atrás-mapping
#

# Editar esta variable para reflejar clase subred local C (s)
NETS = "192.168.1 192.168.2"

# Prueba de nombre a dirección para nombrar validez
eco
echo-e "\ tname -> Dirección -> nombre"
echo '----------------------------------'
mientras leído H, hacer
  ADDR = $ (dig $ H + short)
  if test-n "$ ADDR", y luego
    HOST = $ (dig-x $ ADDR + short)
    si la prueba "$ H" = "$ HOST" y luego
      echo-e "ok \ t $ H -> $ ADDR -> $ HOST"
    elif test-n "$ HOST" y luego
      echo-e "fail \ t $ H -> $ ADDR -> $ HOST"
    más
      echo-e "fail \ t $ H -> $ ADDR -> [sin asignar]"
    fi
  más
    echo-e "fail \ t $ H -> [sin asignar]"
  fi
Done
# Prueba de dirección a nombre para hacer frente a la validez
eco
echo-e "\ TAddress -> nombre -> dirección"
echo '-------------------------------------'
NET para en $ nets; hacer
  para n en $ (seq 1 254); hacer
    A $ = {NET}. $ {N}
    HOST = $ (dig-x $ A + short)
    if test-n "$ HOST" y luego
      ADDR = $ (dig + short $ HOST)
      si la prueba "$ A" = "$ ADDR", y luego
        echo-e "ok \ t $ A -> $ HOST -> $ ADDR"
      elif test-n "$ ADDR", y luego
        echo-e "fail \ t $ A -> $ HOST -> $ ADDR"
      más
        echo-e "fail \ t $ A -> $ HOST -> [sin asignar]"
      fi
    fi
  hecho
hecho

cavar diversión
Ruede su propio archivo named.root

Cualquier servidor DNS conectado a Internet es probable que tenga una copia del archivo named.root el InterNIC que enumera los servidores de nombres raíz para la totalidad de Internet. Siempre puede descargar ese archivo en el modo de servidor ftp aburrido el InterNIC. O, en una verdadera construcción de bricolaje de la moda, se puede construir con dig.

# Comparar con ftp://ftp.internic.net/domain/named.root
dig + nocmd. NS + + respuesta + Noall adicional

Sus valores TTL puede ser un poco en el lado corto, pero por lo demás, es lo más al día una lista que usted encontrará!
Camino de seguimiento de excavación

Tal vez usted es un devoto de traceroute y me gusta ver cómo llegar del punto A al punto B. Se puede hacer algo similar con la opción de dig + trace.

dig + trace gentoo.de

Vas a ver la cabeza de excavación a los servidores de nombres raíz, luego a los servidores responsables de todos los archivos *. Dominios de, y finalmente a los servidores de nombres responsables de gentoo.de.
Agarrando información SOA

Como administrador de DNS, a veces hacer cambios y quiere ver si alguno de mis servidores de nombres siguen empujando los datos antiguos. El nssearch + proporciona una clara rendición de cuentas de los servidores públicos.

# La verdad desnuda
dig cse.ogi.edu + nssearch

# El mismo, mostrando sólo el número de serie y el nombre de host
dig cse.ogi.edu + nssearch | cut-d ''-f4, 11

Interpretación de los números TTL

Me encanta Google, por muchas razones, una de ellas es que proporciona cadenas referenciales en mis registros web que hacen que sea fácil de averiguar qué tipo de preguntas llevan a las personas a las páginas de este sitio.

Algo inesperado, he visto un montón de preguntas que solicitan información sobre TTL (time-to-live) números. Nunca me hubiera imaginado que TTL sería un tema de interés, pero se aprende algo nuevo cada día. Así que, por demanda popular, he aquí una breve introducción a TTL.

Si le preguntas a tu servidor local de DNS para una dirección de Internet, el servidor se da cuenta de dónde encontrar una respuesta autorizada y luego pide. Una vez que el servidor recibe una respuesta, que se mantendrá la respuesta en una caché local de modo que si usted pide la misma dirección de nuevo un poco más tarde, se le puede dar una respuesta rápida en lugar de buscar el Internet para todo de nuevo.

Cuando los administradores de dominio configurar sus registros DNS, deciden cuánto tiempo los documentos deben permanecer en cachés remotas. Este es el número TTL (generalmente expresada en número de segundos).

Típicamente, un servidor remoto sólo almacenará en memoria caché los registros para el período de tiempo especificado por el TTL. Después de eso, el servidor remoto hará que se vacíe su caché local y pedir de nuevo una respuesta autoritaria.

Cuando se utiliza cavar para consultar un servidor DNS, relativa a un determinado registro, el servidor le dirá a cavar el tiempo (en segundos) que el registro se mantendrá en la memoria caché.

Por ejemplo, a partir de este escrito, el TTL de los registros MX para el dominio gmail.com es de 300 segundos. Los administradores gmail.com están pidiendo que sus servidores remotos MX caché los registros de no más de cinco minutos. Así que la primera vez que pedir que conjunto de registros, dig reportará un TTL de 300.

$ Dig + nocmd gmail.com MX + + Noall respuesta
gmail.com. 300 IN MX 20 gsmtp57.google.com.
gmail.com. 300 IN MX 10 gsmtp171.google.com.

Si le preguntas a los pocos segundos, verá el número TTL reduce en aproximadamente el número de segundos que se demoró en volver a preguntar.

$ Dig + nocmd gmail.com MX + + Noall respuesta
gmail.com. 280 IN MX 10 gsmtp171.google.com.
gmail.com. 280 IN MX 20 gsmtp57.google.com.

Si el tiempo es bueno, se puede tomar el registro al final de su vida útil.

$ Dig + nocmd gmail.com MX + + Noall respuesta
gmail.com. 1 IN MX 10 gsmtp171.google.com.
gmail.com. 1 IN MX 20 gsmtp57.google.com.

Después de eso, el servidor DNS que está consultando a "olvidar" la respuesta a esa pregunta, por lo que el ciclo comenzará de nuevo (en este ejemplo, a 300 segundos) que la próxima vez que realice esa consulta.


Descarga:http://www.madboa.com/geek/dig/

Traduccion:Dellcom1@.

Testeada por :Dellcom1@.


Saludos Mundo Libre.

No hay comentarios:

Publicar un comentario