Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.

NSLOOKUP(8)                 System Manager's Manual                NSLOOKUP(8)

     nslookup - query Internet name servers interactively

     nslookup [-option ...] [host-to-find | -[server]]

     nslookup is a program to query Internet domain name servers.  nslookup
     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

     Interactive mode is entered in the following cases:

     1.   when no arguments are given (the default name server will be used),

     2.   when the first argument is a hyphen (`-') and the second argument is
          the host name or Internet address of a name server.

     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.

     The options listed under the "set" command below can be specified in the
     .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:

                   nslookup -query=hinfo  -timeout=10

     Commands may be interrupted at any time by typing a control-C.  To exit,
     type a control-D (EOF) or type 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 (`\').  N.B.: An unrecognized command
     will be interpreted as a host name.

     host [server]
              Look up information for host using the current default server or
              using server, if specified.  If host is an Internet address and
              the query type is A or PTR, the name of the host is returned.
              If 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 set options domain, srchlist,
              defname, and search.)

              To look up a host not in the current domain, append a period to
              the name.

     server domain

     lserver domain
              Change the default server to domain; lserver uses the initial
              server to look up information about domain, while server uses
              the current default server.  If an authoritative answer can't be
              found, the names of servers that might have the answer are

     root     Changes the default server to the server for the root of the
              domain name space.  Currently, the host ns.internic.net is used.
              (This command is a synonym for "lserver ns.internic.net".) The
              name of the root server can be changed with the "set root"

     finger [name] [> filename]

     finger [name] [>> 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 "set
              querytype=A" command).  The name is optional.  > and >> can be
              used to redirect output in the usual manner.

     ls [option] domain [> filename]

     ls [option] domain [>> filename]
              List the information available for domain, optionally creating
              or appending to filename.  The default output contains host
              names and their Internet addresses.  Option can be one of the

              -t querytype
                    lists all records of the specified type (see querytype

              -a    lists aliases of hosts in the domain; synonym for "-t

              -d    lists all records for the domain; synonym for "-t ANY".

              -h    lists CPU and operating system information for the domain;
                    synonym for "-t HINFO".

              -s    lists well-known services of hosts in the domain; synonym
                    for "-t WKS".

              When output is directed to a file, hash marks are printed for
              every 50 records received from the server.

     view filename
              Sorts and lists the output of previous ls command(s) with


     ?        Prints a brief summary of commands.

     exit     Exits the program.

     set keyword[=value]
              This command is used to change state information that affects
              the lookups.  Valid keywords are:

              all      Prints the current values of the frequently-used
                       options to set.  Information about the  current default
                       server and host is also printed.

                       Change the query class to one of:

                       IN        the Internet class

                       CHAOS     the Chaos class

                       HESIOD    the MIT Athena Hesiod class

                       ANY       wildcard (any of the above)

                       The class specifies the protocol group of the

                       (Default = IN; abbreviation = cl)

                       Turn debugging mode on.  A lot more information is
                       printed about the packet sent to the server and the
                       resulting answer.

                       (Default = nodebug; abbreviation = [no]deb)

              [no]d2   Turn exhaustive debugging mode on.  Essentially all
                       fields of every packet are printed.

                       (Default = nod2)

                       Change the default domain name to name.  The default
                       domain name is appended to a lookup request depending
                       on the state of the defname and 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 "set srchlist" command to specify a different
                       list.  Use the "set all" command to display the list.

                       (Default = value from hostname(1), /etc/resolv.conf, or
                       LOCALDOMAIN; abbreviation = do)

                       Change the default domain name to name1 and the domain
                       search list to name1, name2, etc.  A maximum of 6 names
                       separated by slashes (`/') can be specified.  For

                             set srchlist=lcs.MIT.EDU/ai.MIT.EDU/MIT.EDU

                       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 "set domain"
                       command.  Use the "set all" command to display the

                       (Default = value based on hostname(1),
                       /etc/resolv.conf, or LOCALDOMAIN; abbreviation = srchl)

                       If set, append the default domain name to a single-
                       component lookup request (i.e., one that does not
                       contain a period).

                       (Default = defname; abbreviation = [no]defname)

                       If the lookup request contains at least one period but
                       doesn't end with a trailing period, append the domain
                       names in the domain search list to the request until an
                       answer is received.

                       (Default = search; abbreviation = [no]sea)

                       Change the default TCP/UDP name server port to value.

                       (Default = 53; abbreviation = po)


                       Change the type of information query to one of:

                       A         the host's Internet address.

                       CNAME     the canonical name for an alias.

                       HINFO     the host CPU and operating system type.

                       MINFO     the mailbox or mail list information.

                       MX        the mail exchanger.

                       NS        the name server for the named zone.

                       PTR       the host name if the query is an Internet
                                 address; otherwise, the pointer to other

                       SOA       the domain's "start-of-authority"

                       TXT       the text information.

                       UINFO     the user information.

                       WKS       the supported well-known services.

                       Other types (ANY, AXFR, MB, MD, MF, NULL) are described
                       in the RFC-1035 document.

                       (Default = A; abbreviations = q, ty)

                       Tell the name server to query other servers if it does
                       not have the information.

                       (Default = recurse; abbreviation = [no]rec)

                       Set the number of retries to number.  When a reply to a
                       request is not received within a certain amount of time
                       (changed with "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.

                       (Default = 4, abbreviation = ret)

                       This keyword sets the number of dots (label separators)
                       in a domain that disables searching.  Absolute names
                       always stop searching.

                       Change the name of the root server to host.  This
                       affects the "root" command.

                       (Default = ns.internic.net.; abbreviation = ro)

                       Change the initial timeout interval for waiting for a
                       reply to number seconds.  Each retry doubles the
                       timeout period.

                       (Default = 5 seconds; abbreviation = ti)

              [no]vc   Always use a virtual circuit when sending requests to
                       the server.

                       (Default = novc; abbreviation = [no]v)

                       Ignore packet truncation errors.

                       (Default = noignoretc; abbreviation = [no]ig)

                       This  keyword  tries  the next nameserver if a
                       nameserver responds with SERVFAIL or a referral
                       (nofail), or terminates the query (fail) on such a

                       The default is nofail.

     If nslookup has been built with IDN (internationalized domain name)
     support, it can accept and display non-ASCII domain names.  nslookup
     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 nslookup runs, or when
     the standard output is not a tty.

     HOSTALIASES      file containing host aliases
     LOCALDOMAIN      overrides default domain
     IDN_DISABLE      turns off IDN support

     /etc/resolv.conf   initial domain name and name server addresses

     nslookup returns with an exit status of 1 if any query failed, and 0

     If the lookup request was not successful, an error message is printed.
     Possible errors are:

     Timed out
            The server did not respond to a request after a certain amount of
            time (changed with "set timeout=value") and a certain number of
            retries (changed with "set retry=value").

     No response from server
            No name server is running on the server machine.

     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 "set querytype" command.

     Non-existent domain
            The host or domain name does not exist.

     Connection refused

     Network is unreachable
            The connection to the name or finger server could not be made at
            the current time.  This error commonly occurs with ls and finger

     Server failure
            The name server found an internal inconsistency in its database
            and could not return a valid answer.

            The name server refused to service the request.

     Format error
            The name server found that the request packet was not in the
            proper format.  It may indicate an error in nslookup.

     dig(1), resolver(3), resolv.conf(5), named(8)

     P.V. Mockapetris, Domain Names - Concepts and Facilities, RFC 1034, Nov
     1, 1987.

     P.V. Mockapetris, Domain Names - Implementation and Specification, RFC
     1035, Nov 1, 1987.

     Andrew Cherenson

NetBSD 9.99                      June 24, 1990                     NetBSD 9.99