Manual Reference Pages  - gai.conf (5)


gai.conf - getaddrinfo(3) configuration file


See Also


A call to getaddrinfo(3) might return multiple answers. According to RFC 3484 these answers must be sorted so that the answer with the highest success rate is first in the list. The RFC provides an algorithm for the sorting. The static rules are not always adequate, though. For this reason the RFC also requires that system administrators get the chance to dynamically change the sorting. For the glibc implementation this can be achieved with the /etc/gai.conf file.

Each line in the configuration file consists of a keyword and its parameters. White spaces in any place are ignored. Lines starting with ‘#’ are comments and are ignored.

The keywords currently recognized are:
label netmask precedence
  The value is added to the label table used in the RFC 3484 sorting. If any label definition is present in the configuration file is present the default table is not used. All the label definitions of the default table which are to be maintained have to be duplicated. Following the keyword the line has to contain a network mask and a label value.

precedence netmask precedence
  This keyword is similar to label but instead the value is added to the precedence table as specified in RFC 3484. Once again, the presence of a single precedence line in the configuration file causes the default table to not be used.

reload <yes|no>
  This keyword control whether a process checks whether the configuration file has been changes since the last time it was read. If the value is ‘yes’ the file is re-read. This might cause problems in multi-threaded applications and is generally a bad idea. The default is ‘no’.

scopev4 mask value
  Add another rule to the RFC 3484 scope table for IPv4 address. By default the scope IDs described in section 3.2 in RFC 3438 are used. Changing these defaults should hardly ever be necessary.


The default table according to RFC 3484 would be specified with the following configuration file:

label  ::1/128       0
label  ::/0          1
label  2002::/16     2
label ::/96          3
label ::ffff:0:0/96  4
precedence  ::1/128       50
precedence  ::/0          40
precedence  2002::/16     30
precedence ::/96          20
precedence ::ffff:0:0/96  10




Ulrich Drepper <drepper redhat com>


getaddrinfo(3), RFC 3484

gai.conf gai.conf (5) May 2006
blog comments powered by Disqus