Updated: 2022/Sep/29

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


GETADDRINFO(1)              General Commands Manual             GETADDRINFO(1)

NAME
     getaddrinfo - resolve names to socket addresses

SYNOPSIS
     getaddrinfo [-cNnP] [-f family] [-p protocol] [-s service[/protocol]]
                 [-t socktype] [hostname]

DESCRIPTION
     The getaddrinfo utility resolves host and service names to socket
     addresses as if with the getaddrinfo(3) routine and formats them to
     standard output.

     The output is a sequence of lines of space-separated fields:

           socket-type address-family protocol [af-specific data ...]

     For the "inet" and "inet6" address families, the af-specific data are the
     IP/IPv6 address and port number.

     Although the getaddrinfo utility may query the DNS to give answers,
     depending on the system's nsswitch.conf(5) configuration, it is not
     intended to be a general-purpose utility to query the DNS; use the dig(1)
     utility for that.

     The following options are available:

     -c      Look up a canonical name as if with the AI_CANONNAME flag to
             getaddrinfo(3) and print it on the first line before the socket
             addresses.

     -f family
             Specify an address family.  Address families are named like the
             AF_... constants for address family numbers in the <sys/socket.h>
             header file but without the AF_ prefix and lowercase.  For
             example, "inet" corresponds with AF_INET.

     -N      Treat the service as numeric and do not attempt service name
             resolution, as if with the AI_NUMERICSERV flag to getaddrinfo(3).

     -n      Treat the hostname as a numeric address and do not attempt name
             resolution, as if with the AI_NUMERICHOST flag to getaddrinfo(3).

     -P      Return socket addresses intended for use with bind(2), as if with
             the AI_PASSIVE flag to getaddrinfo(3).  By default, the socket
             addresses are intended for use with connect(2), sendto(2), or
             sendmsg(2).

     -p protocol
             Specify a protocol.  Protocols may be numeric, or symbolic as
             listed in protocols(5).

     -s service[/protocol]
             Specify a service to look up.  Services may be symbolic or
             numeric with an optional protocol suffix as listed in
             services(5).  If no service is specified, a hostname must be
             specified.

     -t socktype
             Specify a socket type.  Socket types are named like the SOCK_...
             constants for socket type numbers in the <sys/socket.h> header
             file but without the SOCK_ prefix and lowercase.  For example,
             "dgram" corresponds with SOCK_DGRAM.

EXIT STATUS
     The getaddrinfo utility exits 0 on success, and >0 if an error occurs.

EXAMPLES
     Look up "www.NetBSD.org":

           $ getaddrinfo www.NetBSD.org
           dgram inet6 udp 2001:4f8:3:7:2e0:81ff:fe52:9ab6 0
           dgram inet udp 149.20.53.67 0
           stream inet6 tcp 2001:4f8:3:7:2e0:81ff:fe52:9ab6 0
           stream inet tcp 149.20.53.67 0

     The port number here is zero because no service was specified.

     Look up "morden.NetBSD.org" for stream sockets on port 80, and show the
     canonical name:

           $ getaddrinfo -c -t stream -s 80 morden.NetBSD.org
           canonname ftp.NetBSD.org
           stream inet6 tcp 2001:470:1f05:3d::21 80
           stream inet tcp 199.233.217.249 80

SEE ALSO
     dig(1), getent(1), getaddrinfo(3), getnameinfo(3), resolver(3), hosts(5),
     nsswitch.conf(5), protocols(5), resolv.conf(5), services(5)

HISTORY
     The getaddrinfo command first appeared in NetBSD 7.0.

NetBSD 10.99                    April 22, 2014                    NetBSD 10.99