DNSQUERY(@CMD_EXT_U@)

NAME
dnsquery - query domain name servers using resolver

SYNOPSIS
dnsquery [-n nameserver] [-t type] [-c class] [-r retry] [-p retry period] [-d] [-s] [-v] host

DESCRIPTION
The dnsquery program is a general interface to nameservers via BIND resolver library calls. The program supports queries to the nameserver with an opcode of QUERY. This program is intended to be a replacement or supplement to programs like nstest, nsquery and nslookup. All arguments except for host and ns are treated without case-sensitivity.

OPTIONS

-n  The nameserver to be used in the query. Nameservers can appear as either Internet addresses of the form w.x.y.z or can appear as domain names. (default: as specified in /etc/resolv.conf)

-t  The type of resource record of interest. Types include:

    A   address
    NS  nameserver
    CNAME
        canonical name
    PTR domain name pointer
    SOA start of authority
    WKS well-known service
    HINFO
        host information
    MINFO
        mailbox information
    MX  mail exchange
    RP  responsible person
    MG  mail group member
    AFSDB
        DCE or AFS server
    ANY wildcard

    Note that any case may be used. (default: ANY)

-c  The class of resource records of interest. Classes include:

    IN  Internet
    HS  Hesiod
    CHAOS
        Chaos
    ANY wildcard

    Note that any case may be used. (default: IN)

-r  The number of times to retry if the nameserver is not responding. (default: 4)

-p  Period to wait before timing out. (default: RES_TIMEOUT) options field. (default: any answer)

-d  Turn on debugging. This sets the RES_DEBUG bit of the resolver's options field. (default: no debugging)

-s  Use a stream rather than a packet. This uses a TCP stream connection with the nameserver rather than a UDP datagram. This sets the RES_USEVC bit of the resolver's options field. (default: UDP)

-v  Synonym for the 's' flag.

host
    The name of the host (or domain) of interest.

FILES
/etc/resolv.conf     to get the default ns and search lists
<arpa/nameser.h>     list of usable RR types and classes
<resolv.h>    list of resolver flags

SEE ALSO
nslookup(@SYS_OPS_EXT@), nstest(@CMD_EXT@), nsquery(@CMD_EXT@), named(@SYS_OPS_EXT@), resolver(@FORMAT_EXT@)

DIAGNOSTICS
If the resolver fails to answer the query and debugging has not been turned on, dnsquery will simply print a message like:

Query failed (rc = 1) : Unknown host

The value of the return code is supplied by h_errno.

BUGS
Queries of a class other than IN can have interesting results since ordinarily a nameserver only has a list of root nameservers for class IN resource records.

Query uses a call to inet_addr() to determine if the argument for the '-n' option is a valid Internet address. Unfortunately, inet_addr() seems to cause a segmentation fault with some (bad) addresses (e.g. 1.2.3.4.5).

AUTHOR
Bryan Beecher