.\" $NetBSD: nslookup.8,v 1.1.6.1 2024/02/29 12:28:01 martin Exp $ .\" .\" .\" ++Copyright++ 1985, 1989 .\" - .\" Copyright (c) 1985, 1989 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" - .\" Portions Copyright (c) 1993 by Digital Equipment Corporation. .\" .\" Permission to use, copy, modify, and distribute this software for any .\" purpose with or without fee is hereby granted, provided that the above .\" copyright notice and this permission notice appear in all copies, and that .\" the name of Digital Equipment Corporation not be used in advertising or .\" publicity pertaining to distribution of the document or software without .\" specific, written prior permission. .\" .\" THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. DISCLAIMS ALL .\" WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL DIGITAL EQUIPMENT .\" CORPORATION BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL .\" DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR .\" PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS .\" ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS .\" SOFTWARE. .\" - .\" --Copyright-- .\" .\" @(#)nslookup.8 5.3 (Berkeley) 6/24/90 .\" .Dd June 24, 1990 .Dt NSLOOKUP 8 .Os .Sh NAME .Nm nslookup .Nd query Internet name servers interactively .Sh SYNOPSIS .Nm nslookup .Op Fl option Ar ... .Op Ar host-to-find | Fl Op Ar server .Sh DESCRIPTION .Nm is a program to query Internet domain name servers. .Nm has two modes: interactive and non-interactive. Interactive mode allows the user to query name servers for information about various hosts and domains or to print a list of hosts in a domain. Non-interactive mode is used to print just the name and requested information for a host or domain. .Sh ARGUMENTS Interactive mode is entered in the following cases: .Bl -enum .It when no arguments are given (the default name server will be used), .It when the first argument is a hyphen .Pq Sq \&- and the second argument is the host name or Internet address of a name server. .El .Pp Non-interactive mode is used when the name or Internet address of the host to be looked up is given as the first argument. The optional second argument specifies the host name or address of a name server. .Pp The options listed under the .Dq Li set command below can be specified in the .Pa .nslookuprc file in the user's home directory if they are listed one per line. Options can also be specified on the command line if they precede the arguments and are prefixed with a hyphen. For example, to change the default query type to host information, and the initial timeout to 10 seconds, type: .Bd -literal -offset indent nslookup -query=hinfo -timeout=10 .Ed .Sh INTERACTIVE COMMANDS Commands may be interrupted at any time by typing a control-C. To exit, type a control-D .Pq Dv EOF or type .Li exit . The command line length must be less than 256 characters. To treat a built-in command as a host name, precede it with an escape character .Pq Sq \e . .Em N.B.: \&An unrecognized command will be interpreted as a host name. .Bl -tag -width "lserver" .It Ar host Op Ar server Look up information for .Ar host using the current default server or using .Ar server , if specified. If .Ar host is an Internet address and the query type is .Dv A or .Dv PTR , the name of the host is returned. If .Ar host is a name and does not have a trailing period, the default domain name is appended to the name. (This behavior depends on the state of the .Ic set options .Ic domain , srchlist , defname , and .Ic search . ) .Pp To look up a host not in the current domain, append a period to the name. .It Ic server Ar domain .It Ic lserver Ar domain Change the default server to .Ar domain ; .Ic lserver uses the initial server to look up information about .Ar domain , while .Ic server uses the current default server. If an authoritative answer can't be found, the names of servers that might have the answer are returned. .It Ic root Changes the default server to the server for the root of the domain name space. Currently, the host .Li ns.internic.net is used. (This command is a synonym for .Dq Ic lserver ns.internic.net . ) The name of the root server can be changed with the .Dq Ic set root command. .It Ic finger Oo Ar name Oc Op Ic \*[Gt] Ar filename .It Ic finger Oo Ar name Oc Op Ic \*[Gt]\*[Gt] Ar filename Connects with the finger server on the current host. The current host is defined when a previous lookup for a host was successful and returned address information (see the .Dq Ic set querytype Ns = Ns Dv A command). The .Ar name is optional. .Ic \*[Gt] and .Ic \*[Gt]\*[Gt] can be used to redirect output in the usual manner. .It Ic ls Oo Ar option Oc Ar domain Op Ic \*[Gt] Ar filename .It Ic ls Oo Ar option Oc Ar domain Op Ic \*[Gt]\*[Gt] Ar filename List the information available for .Ar domain , optionally creating or appending to .Ar filename . The default output contains host names and their Internet addresses. .Ar Option can be one of the following: .Bl -tag -width "-a " .It Fl t Ar querytype lists all records of the specified type (see .Ar querytype below). .It Fl a lists aliases of hosts in the domain; synonym for .Dq Fl t Dv CNAME . .It Fl d lists all records for the domain; synonym for .Dq Fl t Dv ANY . .It Fl h lists CPU and operating system information for the domain; synonym for .Dq Fl t Dv HINFO . .It Fl s lists well-known services of hosts in the domain; synonym for .Dq Fl t Dv WKS . .El .Pp When output is directed to a file, hash marks are printed for every 50 records received from the server. .It Ic view Ar filename Sorts and lists the output of previous .Ic ls command(s) with .Xr more 1 . .It Ic help .It Ic ?\& Prints a brief summary of commands. .It Ic exit Exits the program. .It Ic set Ar keyword Ns Op = Ns Ar value This command is used to change state information that affects the lookups. Valid keywords are: .Bl -tag -width "class=v" .It Ic all Prints the current values of the frequently-used options to .Ic set . Information about the current default server and host is also printed. .It Ic class Ns = Ns Ar value Change the query class to one of: .Bl -tag -width "HESIOD " .It Dv IN the Internet class .It Dv CHAOS the Chaos class .It Dv HESIOD the MIT Athena Hesiod class .It Dv ANY wildcard (any of the above) .El .Pp The class specifies the protocol group of the information. .Pp (Default = .Dv IN ; abbreviation = .Ic cl ) .It Oo Ic no Oc Ns Ic debug Turn debugging mode on. A lot more information is printed about the packet sent to the server and the resulting answer. .Pp (Default = .Ic nodebug ; abbreviation = .Oo Ic no Oc Ns Ic deb ) .It Oo Ic no Oc Ns Ic d2 Turn exhaustive debugging mode on. Essentially all fields of every packet are printed. .Pp (Default = .Ic nod2 ) .It Ic domain Ns = Ns Ar name Change the default domain name to .Ar name . The default domain name is appended to a lookup request depending on the state of the .Ic defname and .Ic search options. The domain search list contains the parents of the default domain if it has at least two components in its name. For example, if the default domain is CC.Berkeley.EDU, the search list is CC.Berkeley.EDU and Berkeley.EDU. Use the .Dq Ic set srchlist command to specify a different list. Use the .Dq Ic set all command to display the list. .Pp (Default = value from .Xr hostname 1 , .Pa /etc/resolv.conf , or .Ev LOCALDOMAIN ; abbreviation = .Ic do ) .It Ic srchlist Ns No = Ns Ar name1 Ns No / Ns Ar name2 Ns No / Ns Ar ... Change the default domain name to .Ar name1 and the domain search list to .Ar name1 , name2 , etc. A maximum of 6 names separated by slashes .Pq Sq / can be specified. For example, .Bd -literal -offset indent set srchlist=lcs.MIT.EDU/ai.MIT.EDU/MIT.EDU .Ed .Pp sets the domain to lcs.MIT.EDU and the search list to the three names. This command overrides the default domain name and search list of the .Dq Ic set domain command. Use the .Dq Ic set all command to display the list. .Pp (Default = value based on .Xr hostname 1 , .Pa /etc/resolv.conf , or .Ev LOCALDOMAIN ; abbreviation = .Ic srchl ) .It Oo Ic no Oc Ns Ic defname If set, append the default domain name to a single-component lookup request (i.e., one that does not contain a period). .Pp (Default = .Ic defname ; abbreviation = .Oo Ic no Oc Ns Ic defname ) .It Oo Ic no Oc Ns Ic search If the lookup request contains at least one period but .Em doesn't end with a trailing period, append the domain names in the domain search list to the request until an answer is received. .Pp (Default = .Ic search ; abbreviation = .Oo Ic no Oc Ns Ic sea ) .It Ic port Ns = Ns Ar value Change the default TCP/UDP name server port to .Ar value . .Pp (Default = 53; abbreviation = .Ic \&po ) .It Ic querytype Ns = Ns Ar value .It Ic type Ns = Ns Ar value Change the type of information query to one of: .Bl -tag -width "HINFO " .It Dv A the host's Internet address. .It Dv CNAME the canonical name for an alias. .It Dv HINFO the host CPU and operating system type. .It Dv MINFO the mailbox or mail list information. .It Dv MX the mail exchanger. .It Dv NS the name server for the named zone. .It Dv PTR the host name if the query is an Internet address; otherwise, the pointer to other information. .It Dv SOA the domain's .Dq start-of-authority information. .It Dv TXT the text information. .It Dv UINFO the user information. .It Dv WKS the supported well-known services. .El .Pp Other types .Dv ( ANY , AXFR , MB , .Dv MD , MF , NULL ) are described in the RFC-1035 document. .Pp (Default = .Dv A ; abbreviations = .Ic q , ty ) .It Oo Ic no Oc Ns Ic recurse Tell the name server to query other servers if it does not have the information. .Pp (Default = .Ic recurse ; abbreviation = .Oo Ic no Oc Ns Ic rec ) .It Ic retry Ns = Ns Ar number Set the number of retries to .Ar number . When a reply to a request is not received within a certain amount of time (changed with .Dq Ic set timeout ) , the timeout period is doubled and the request is resent. The retry value controls how many times a request is resent before giving up. .Pp (Default = 4, abbreviation = .Ic ret ) .It Ic ndots Ns = Ns Ar number This keyword sets the number of dots (label separators) in a domain that disables searching. Absolute names always stop searching. .It Ic root Ns = Ns Ar host Change the name of the root server to .Ar host . This affects the .Dq Ic root command. .Pp (Default = .Ic ns.internic.net. ; abbreviation = .Ic ro ) .It Ic timeout Ns = Ns Ar number Change the initial timeout interval for waiting for a reply to .Ar number seconds. Each retry doubles the timeout period. .Pp (Default = 5 seconds; abbreviation = .Ic ti ) .It Oo Ic no Oc Ns Ic vc Always use a virtual circuit when sending requests to the server. .Pp (Default = .Ic novc ; abbreviation = .Oo Ic no Oc Ns Ic v ) .It Oo Ic no Oc Ns Ic ignoretc Ignore packet truncation errors. .Pp (Default = .Ic noignoretc ; abbreviation = .Oo Ic no Oc Ns Ic ig ) .It Oo Ic no Oc Ns Ic fail This keyword tries the next nameserver if a nameserver responds with .Dv SERVFAIL or a referral (nofail), or terminates the query (fail) on such a response. .Pp The default is nofail. .El .El .Sh IDN SUPPORT If .Nm has been built with IDN (internationalized domain name) support, it can accept and display non-ASCII domain names. .Nm appropriately converts character encoding of a domain name before sending a request to a DNS server or displaying a reply from the server. To turn off IDN support, define the IDN_DISABLE environment variable. IDN support is disabled if the variable is set when .Nm runs, or when the standard output is not a tty. .Sh ENVIRONMENT .Bl -tag -width "HOSTALIASESXXXX" -compact .It Ev HOSTALIASES file containing host aliases .It Ev LOCALDOMAIN overrides default domain .It Ev IDN_DISABLE turns off IDN support .El .Sh FILES .Bl -tag -width "/etc/resolve.conf" -compact .It Pa /etc/resolv.conf initial domain name and name server addresses .El .Sh EXIT STATUS .Nm returns with an exit status of .Dv 1 if any query failed, and .Dv 0 otherwise. .Sh DIAGNOSTICS If the lookup request was not successful, an error message is printed. Possible errors are: .Bl -tag -width "Timed" .It Li Timed out The server did not respond to a request after a certain amount of time (changed with .Dq Ic set timeout Ns = Ns Ar value ) and a certain number of retries (changed with .Do .Ic set retry Ns = Ns Ar value .Dc ) . .It Li \&No response from server No name server is running on the server machine. .It Li \&No records The server does not have resource records of the current query type for the host, although the host name is valid. The query type is specified with the .Dq Ic set querytype command. .It Li Non-existent domain The host or domain name does not exist. .It Li Connection refused .It Li Network is unreachable The connection to the name or finger server could not be made at the current time. This error commonly occurs with .Ic ls and .Ic finger requests. .It Li Server failure The name server found an internal inconsistency in its database and could not return a valid answer. .It Li Refused The name server refused to service the request. .It Li Format error The name server found that the request packet was not in the proper format. It may indicate an error in .Nm nslookup . .El .Sh SEE ALSO .Xr dig 1 , .Xr resolver 3 , .Xr resolv.conf 5 , .Xr named 8 .Rs .%A P.V. Mockapetris .%T Domain Names - Concepts and Facilities .%R RFC 1034 .%D Nov 1, 1987 .Re .Rs .%A P.V. Mockapetris .%T Domain Names - Implementation and Specification .%R RFC 1035 .%D Nov 1, 1987 .Re .Sh AUTHORS .An Andrew Cherenson