{"id":2426,"date":"2014-04-25T05:00:00","date_gmt":"2014-04-25T08:00:00","guid":{"rendered":"http:\/\/www.radians.com.ar\/blog\/?p=2426"},"modified":"2015-09-18T18:27:12","modified_gmt":"2015-09-18T21:27:12","slug":"directory-services-tools-hoy-nslookup-exe","status":"publish","type":"post","link":"https:\/\/www.radians.com.ar\/blog\/?p=2426","title":{"rendered":"Directory Services Tools: hoy, NSLookUp.exe"},"content":{"rendered":"<p align=\"justify\"><a href=\"http:\/\/www.radians.com.ar\/Articulos\/Images\/c5bb8ffa51b5_8AEE\/DNS01.png\"><img loading=\"lazy\" decoding=\"async\" title=\"www.radians.com.ar \u00a9 2014\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; float: left; padding-top: 0px; padding-left: 0px; margin: 5px; display: inline; padding-right: 0px; border-top-width: 0px\" border=\"0\" alt=\"www.radians.com.ar \u00a9 2014\" src=\"http:\/\/www.radians.com.ar\/Articulos\/Images\/c5bb8ffa51b5_8AEE\/DNS01_thumb.png\" width=\"180\" align=\"left\" height=\"177\" \/><\/a>Hoy vamos a revisar una herramienta sumamente \u00fatil: <font color=\"#ff0000\" face=\"OCR A Extended\">nslookup.exe<\/font>. Esta herramienta de l\u00ednea de comandos nos sirve principalmente para probar y solucionar problemas de los servidores DNS de nuestra arquitectura. Se instala junto con el protocolo TCP\/IP, y vamos a ver varias cosas que podemos ver con esta utilidad.<\/p>\n<p align=\"justify\"><font size=\"2\">B\u00e1sicamente, este comando que se usa para detectar si el DNS est\u00e1 resolviendo correctamente los nombres y las IP; permiti\u00e9ndonos consultar un servidor de nombres y obtener informaci\u00f3n relacionada con el dominio o el host y as\u00ed diagnosticar los eventuales problemas de configuraci\u00f3n que pudieran haber surgido en el DNS. <\/font><\/p>\n<p align=\"justify\"><font size=\"2\">Los requerimientos m\u00ednimos para utilizarlo son los siguientes (Si, digamos que son obvios, pero bueno igual los nombramos):<\/font><\/p>\n<ul>\n<li>\n<div align=\"justify\"><font size=\"2\">El protocolo TCP\/IP debe estar instalado en el equipo donde se ejecuta Nslookup.exe <\/font><\/div>\n<\/li>\n<li>\n<div align=\"justify\"><font size=\"2\">Se debe especificar al menos un servidor DNS cuando se ejecuta el comando IPCONFIG \/ALL desde un s\u00edmbolo del sistema. <\/font><\/div>\n<\/li>\n<li>\n<div align=\"justify\"><font size=\"2\">Nslookup siempre devolver\u00e1 el nombre del contexto actual. Esto es muy importante si trabajamos con entornos multiplataforma. Si no califica totalmente la consulta del nombre (es decir, si no utilizamos el punto del final), la consulta se anexar\u00e1 al contexto actual. Por ejemplo, la configuraci\u00f3n del DNS es clarin.com y se realiza una consulta en <\/font><a href=\"http:\/\/www.radians.com.ar\"><font size=\"2\">www.radians.com.ar<\/font><\/a><font size=\"2\">; la primera consulta saldr\u00e1 como <\/font><a href=\"http:\/\/www.radians.com.ar.clarin.commicrosoft.com.att.com\"><font size=\"2\">www.radians.com.ar.clarin.com<\/font><\/a><font size=\"2\"> porque la consulta no est\u00e1 completa. Este comportamiento puede ser incoherente con las versiones de otro proveedor de Nslookup. <\/font><\/div>\n<\/li>\n<li>\n<div align=\"justify\"><font size=\"2\">Si ha implementado el uso de la lista de b\u00fasquedas en el Domain Suffix Search Order definido en las <b>Propiedades de TCP\/IP<\/b>, la devoluci\u00f3n no se producir\u00e1. La consulta se anexar\u00e1 a los sufijos de dominio especificados en la lista. Para evitar utilizar la lista de b\u00fasquedas, debemos utilizar siempre el nombre de dominio completo.<\/font><\/div>\n<\/li>\n<\/ul>\n<p align=\"justify\"><font size=\"2\">Podemos utilizar la herramienta NSLookup en dos modos: interactivo y no interactivo. Vamos a ver primero el modo no interactivo (la que se utiliza generalmente para consultas aisladas) ya que s\u00f3lo devuelve un fragmento de datos. La sintaxis para el modo no interactivo es la siguiente: <\/font><\/p>\n<p align=\"justify\"><font color=\"#ff0000\" size=\"2\" face=\"OCR A Extended\">nslookup [-option] [hostname] [server]<\/font><\/p>\n<p align=\"justify\"><font size=\"2\">Por ejemplo:<\/font> <\/p>\n<p align=\"justify\"><a href=\"http:\/\/www.radians.com.ar\/Articulos\/Images\/523b4274c884_122D5\/NSLookUp_01.png\"><img loading=\"lazy\" decoding=\"async\" title=\"www.radians.com.ar \u00a9 2014\" style=\"border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 5px; border-left: 0px; display: inline; padding-right: 0px\" border=\"0\" alt=\"www.radians.com.ar \u00a9 2014\" src=\"http:\/\/www.radians.com.ar\/Articulos\/Images\/523b4274c884_122D5\/NSLookUp_01_thumb.png\" width=\"544\" height=\"216\" \/><\/a><\/p>\n<p align=\"justify\">Ahora, el modo interactivo (usado generalmente para troobleshooting, ya que podemos hacer varias consultas; igualmente es cuesti\u00f3n de gustos, no?), solo basta con escribir \u201c<font color=\"#ff0000\" face=\"OCR A Extended\">nslookup<\/font>\u201d en la ventana de l\u00ednea de comandos:<\/p>\n<p align=\"justify\">Por ejemplo:<\/p>\n<p align=\"justify\"><a href=\"http:\/\/www.radians.com.ar\/Articulos\/Images\/523b4274c884_122D5\/NSLookUp_02.png\"><img loading=\"lazy\" decoding=\"async\" title=\"www.radians.com.ar \u00a9 2014\" style=\"border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 5px; border-left: 0px; display: inline; padding-right: 0px\" border=\"0\" alt=\"www.radians.com.ar \u00a9 2014\" src=\"http:\/\/www.radians.com.ar\/Articulos\/Images\/523b4274c884_122D5\/NSLookUp_02_thumb.png\" width=\"544\" height=\"144\" \/><\/a><\/p>\n<p align=\"justify\">Si se escribimos &quot;<font color=\"#ff0000\" face=\"OCR A Extended\">help<\/font>&quot; o &quot;<font color=\"#ff0000\" face=\"OCR A Extended\">?<\/font>&quot; nos mostrara una lista de comandos disponibles. <\/p>\n<p align=\"justify\"><a href=\"http:\/\/www.radians.com.ar\/Articulos\/Images\/523b4274c884_122D5\/NSLookUp_03.png\"><img loading=\"lazy\" decoding=\"async\" title=\"www.radians.com.ar \u00a9 2014\" style=\"border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 5px; border-left: 0px; display: inline; padding-right: 0px\" border=\"0\" alt=\"www.radians.com.ar \u00a9 2014\" src=\"http:\/\/www.radians.com.ar\/Articulos\/Images\/523b4274c884_122D5\/NSLookUp_03_thumb.png\" width=\"544\" height=\"618\" \/><\/a><\/p>\n<p align=\"justify\">Todo lo que escribamos en esta pantalla que no se reconozca como un comando v\u00e1lido se supone que es un nombre de host y se intentara resolver utilizando el servidor predeterminado. Para interrumpir comandos interactivos, debemos presionar <font color=\"#ff0000\" face=\"OCR A Extended\">CTRL+C<\/font>, y para salir del modo interactivo y volver al s\u00edmbolo del sistema, debemos escribir <font color=\"#ff0000\" face=\"OCR A Extended\">exit<\/font> en el s\u00edmbolo del sistema. <\/p>\n<p align=\"justify\">Por ejemplo, podemos ver varias opciones diferentes ejecutando la opci\u00f3n <font color=\"#ff0000\" face=\"OCR A Extended\">set<\/font>. Si queremos ver la lista completa de estas opciones, podemos hacerlo escribiendo <font color=\"#ff0000\" face=\"OCR A Extended\">set all<\/font>. Vea arriba, bajo el comando <b>set<\/b>, para obtener una lista de las opciones disponibles. <\/p>\n<p align=\"justify\"><a href=\"http:\/\/www.radians.com.ar\/Articulos\/Images\/523b4274c884_122D5\/NSLookUp_04.png\"><img loading=\"lazy\" decoding=\"async\" title=\"www.radians.com.ar \u00a9 2014\" style=\"border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 5px; border-left: 0px; display: inline; padding-right: 0px\" border=\"0\" alt=\"www.radians.com.ar \u00a9 2014\" src=\"http:\/\/www.radians.com.ar\/Articulos\/Images\/523b4274c884_122D5\/NSLookUp_04_thumb.png\" width=\"544\" height=\"474\" \/><\/a><\/p>\n<p align=\"justify\">Vamos a ver algunos ejemplos mas en concreto. Si queremos buscar datos diferentes dentro del espacio de nombres de dominio, utilice el comando <strong><font color=\"#ff0000\" face=\"OCR A Extended\">set type<\/font><\/strong> o <strong><font color=\"#ff0000\" face=\"OCR A Extended\">set q[uerytype]<\/font><\/strong> en el s\u00edmbolo del sistema. Por ejemplo, para consultar los datos del mail exchanger data, debemos escribir lo siguiente: <\/p>\n<p align=\"justify\"><a href=\"http:\/\/www.radians.com.ar\/Articulos\/Images\/523b4274c884_122D5\/NSLookUp_06.png\"><img loading=\"lazy\" decoding=\"async\" title=\"www.radians.com.ar \u00a9 2014\" style=\"border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 5px; border-left: 0px; display: inline; padding-right: 0px\" border=\"0\" alt=\"www.radians.com.ar \u00a9 2014\" src=\"http:\/\/www.radians.com.ar\/Articulos\/Images\/523b4274c884_122D5\/NSLookUp_06_thumb.png\" width=\"544\" height=\"276\" \/><\/a><\/p>\n<p align=\"justify\"><font size=\"2\">Cabe aclarar, que la primera vez que se realiza una consulta de un nombre remoto, la respuesta es autoritativa, pero las consultas subsiguientes no lo son. La primera vez que se consulta un host remoto, el servidor DNS local se pone en contacto con el servidor DNS que es autoritativo para ese dominio. El servidor DNS local almacenar\u00e1 en memoria cach\u00e9 esa informaci\u00f3n, por lo que las consultas subsiguientes se responder\u00e1n de forma no autoritativa a partir de la cach\u00e9 del servidor local. <\/font><\/p>\n<p align=\"justify\"><font size=\"2\">Otro ejemplo, podr\u00eda ser consultar directamente otro servidor de nombres, para ello utilizamos el comandos <font color=\"#ff0000\" face=\"OCR A Extended\">server <\/font>o <font color=\"#ff0000\" face=\"OCR A Extended\">lserver<\/font> para cambiar a ese servidor de nombres. El comando <font color=\"#ff0000\" face=\"OCR A Extended\">lserver<\/font> utiliza el servidor local para obtener la direcci\u00f3n del servidor al que se desea cambiar, mientras que el comando <font color=\"#ff0000\" face=\"OCR A Extended\">server <\/font>utiliza el servidor predeterminado actual para obtener la direcci\u00f3n.<\/font> <\/p>\n<p align=\"justify\"><a href=\"http:\/\/www.radians.com.ar\/Articulos\/Images\/523b4274c884_122D5\/NSLookUp_07.png\"><img loading=\"lazy\" decoding=\"async\" title=\"www.radians.com.ar \u00a9 2014\" style=\"border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 5px; border-left: 0px; display: inline; padding-right: 0px\" border=\"0\" alt=\"www.radians.com.ar \u00a9 2014\" src=\"http:\/\/www.radians.com.ar\/Articulos\/Images\/523b4274c884_122D5\/NSLookUp_07_thumb.png\" width=\"544\" height=\"238\" \/><\/a><\/p>\n<p align=\"justify\"><font size=\"2\">Tambi\u00e9n podr\u00edamos usar el Nslookup para transferir toda una zona mediante el comando <font color=\"#ff0000\" face=\"OCR A Extended\">ls<\/font>. Esto es \u00fatil para ver todos los hosts que hay dentro de un dominio remoto. La sintaxis del comando <font color=\"#ff0000\" face=\"OCR A Extended\">ls <\/font>es la siguiente:<\/font> <\/p>\n<p align=\"justify\"><font color=\"#ff0000\" size=\"2\" face=\"OCR A Extended\">ls [- a | d | t type] domain [&gt; filename]<\/font><\/p>\n<p align=\"justify\"><font size=\"2\">Si se utilizamos <font color=\"#ff0000\" face=\"OCR A Extended\">ls <\/font>sin argumentos nos devolver\u00e1 una lista de todas las direcciones y datos del servidor de nombres. El modificador <b><font color=\"#ff0000\" face=\"OCR A Extended\">-a<\/font><\/b> nos devolver\u00e1 el alias y los nombres can\u00f3nicos, <b><font color=\"#ff0000\" face=\"OCR A Extended\">-d<\/font><\/b> devolver\u00e1 todos los datos y <b><font color=\"#ff0000\" face=\"OCR A Extended\">-t<\/font><\/b> filtrar\u00e1 por tipo.<\/font> <\/p>\n<p align=\"justify\">El resultado seria:<\/p>\n<blockquote>\n<p align=\"justify\"><font color=\"#ff0000\" face=\"OCR A Extended\">&gt;ls domain.com        <br \/>[nameserver1.domain.com]         <br \/>nameserver1.domain.com.&#160;&#160;&#160;&#160;&#160; NS&#160;&#160;&#160;&#160;&#160;&#160;&#160; server = ns1.domain.com         <br \/>nameserver2.domain.com&#160;&#160;&#160;&#160;&#160;&#160; NS&#160;&#160;&#160;&#160;&#160;&#160;&#160; server = ns2.domain.com         <br \/>nameserver1&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; A&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 10.0.0.1         <br \/>nameserver2&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; A&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 10.0.0.2         <br \/>&gt; <\/font><\/p>\n<\/blockquote>\n<p align=\"justify\"><font size=\"2\">Las transferencias de zona se pueden bloquear en el servidor DNS de manera que s\u00f3lo las direcciones o las redes autorizadas puedan realizar esta funci\u00f3n. Se devolver\u00e1 el error siguiente si se ha establecido la seguridad de la zona: <\/font><\/p>\n<blockquote>\n<p align=\"justify\"><font size=\"2\"><font color=\"#ff0000\" face=\"OCR A Extended\">*** No se puede hacer una lista del dominio <var>ejemplo.com<\/var>.: Consulta rechazada<\/font> <\/font><\/p>\n<\/blockquote>\n<p align=\"justify\"><font size=\"2\">Como mencionamos anteriormente, esta herramienta es sumamente \u00fatil para hacer troubleshooting. Por ejemplo, si el nslookup nos devuelve el siguiente error:<\/font><\/p>\n<blockquote>\n<p align=\"justify\"><font color=\"#ff0000\" size=\"2\" face=\"OCR A Extended\">*** No se puede encontrar el nombre de servidor para la direcci\u00f3n <var>w.x.y.z<\/var>: Agotado el tiempo de espera <\/font><\/p>\n<\/blockquote>\n<p align=\"justify\"><font size=\"2\">Este error indica que no se puede alcanzar el servidor DNS o que el servicio no est\u00e1 ejecut\u00e1ndose en ese equipo. Para corregir este problema, deber\u00edamos verificar que este iniciado el servicio DNS en ese servidor o comprobar si hay problemas de conectividad. <\/font><\/p>\n<p align=\"justify\"><font size=\"2\">Si el error fuera: <\/font><\/p>\n<blockquote>\n<p align=\"justify\"><font size=\"2\"><font color=\"#ff0000\" face=\"OCR A Extended\">*** No se puede encontrar el nombre de servidor para la direcci\u00f3n 127.0.0.1: Agotado el tiempo de espera<\/font> <\/font><\/p>\n<\/blockquote>\n<p align=\"justify\"><font size=\"2\">La causa com\u00fan de este error es que no se ha definido ning\u00fan servidor en la lista Orden de b\u00fasqueda de servicio DNS. Para corregir este problema, deber\u00edamos agregar a esta lista la direcci\u00f3n IP de un servidor DNS v\u00e1lido. <\/font><\/p>\n<p align=\"justify\"><font size=\"2\">Otro ejemplo de errores comunes, podr\u00eda ser:<\/font><\/p>\n<blockquote>\n<p align=\"justify\"><font color=\"#ff0000\" size=\"2\" face=\"OCR A Extended\">*** No se puede encontrar el nombre de servidor para la direcci\u00f3n w.x.y.z: Dominio inexistente <\/font><\/p>\n<\/blockquote>\n<p align=\"justify\"><font size=\"2\">Generalmente, este error se produce cuando no hay ning\u00fan registro PTR para la direcci\u00f3n IP del servidor de nombres. Cuando Nslookup.exe se inicia, hace una b\u00fasqueda inversa para obtener el nombre del servidor predeterminado. Si no existen ning\u00fan dato PTR, se devuelve este mensaje de error. Para corregirlo, debemos asegurarnos que existe una zona de b\u00fasqueda inversa y que contiene registros PTR para los servidores de nombres. Esto es muy com\u00fan en los registros MX, generalmente en los DNS de los ISP, que no lo hacen si no se pide.<\/font><\/p>\n<p align=\"justify\">Espero que esta nota les sea de inter\u00e9s y los ayude en el d\u00eda a d\u00eda. Personalmente es una herramienta que utilizo frecuentemente, tanto en mis ambientes productivos como en los de testing, ya que me ayuda a comprobar que mis DNS funcionen correctamente.<\/p>\n<p align=\"justify\">Saludos, Roberto Di Lello.<\/p>\n<h2 align=\"justify\">Mas Informaci\u00f3n:<\/h2>\n<ul>\n<li>\n<div align=\"justify\"><a href=\"http:\/\/support.microsoft.com\/kb\/172060\/en-us\">NSLOOKUP: Can\u2019t Find Server Name for Address 127.0.0.1<\/a><\/div>\n<\/li>\n<li>\n<div align=\"justify\"><a href=\"http:\/\/support.microsoft.com\/kb\/193837\/en-us\">Windows NT 4.0 DNS Server Default Zone Security Settings<\/a><\/div>\n<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Hoy vamos a revisar una herramienta sumamente \u00fatil: nslookup.exe. Esta herramienta de l\u00ednea de comandos&#8230;<\/p>\n","protected":false},"author":1,"featured_media":4291,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[12,11,158,6],"tags":[301,194,195,243],"class_list":["post-2426","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-2003-r2","category-2008-r2","category-windows-server-2012","category-tools","tag-tools","tag-windows-server-2003-r2","tag-windows-server-2008-r2","tag-windows-server-2012-r2"],"_links":{"self":[{"href":"https:\/\/www.radians.com.ar\/blog\/index.php?rest_route=\/wp\/v2\/posts\/2426","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.radians.com.ar\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.radians.com.ar\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.radians.com.ar\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.radians.com.ar\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2426"}],"version-history":[{"count":2,"href":"https:\/\/www.radians.com.ar\/blog\/index.php?rest_route=\/wp\/v2\/posts\/2426\/revisions"}],"predecessor-version":[{"id":2428,"href":"https:\/\/www.radians.com.ar\/blog\/index.php?rest_route=\/wp\/v2\/posts\/2426\/revisions\/2428"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.radians.com.ar\/blog\/index.php?rest_route=\/wp\/v2\/media\/4291"}],"wp:attachment":[{"href":"https:\/\/www.radians.com.ar\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2426"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.radians.com.ar\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2426"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.radians.com.ar\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2426"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}