4

Here is my base file

root@iracavcsdbc03:~# cat /etc/resolvconf/resolv.conf.d/base
nameserver 1.1.1.1
nameserver 2.2.2.2
nameserver 3.3.3.3
nameserver 4.4.4.4

After running resolvconf -u why does the new generated resolv.conf file only show 3 IPs not all 4 as mentioned in the base file?

root@iracavcsdbc03:~# cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
#
# Modify /etc/resolvconf/resolv.conf.d/base to make changes permanent!
#
nameserver 1.1.1.1
nameserver 2.2.2.2
nameserver 3.3.3.3
search infra.aic.att.net
options attempts:2
options timeout:3
Zanna
  • 70,465
Aneel Khan
  • 41
  • 1
  • 2

1 Answers1

4

The update script for resolvconf writes up to three nameserver lines to resolv.conf.

If you access man pages for resolvconf, you can find this information:

$ man resolvconf

Go to line 47, or libc subsection from CONSUMERS OF NAMESERVER INFORMATION section and watch for the number 1 item:

   libc
       The most important software package that  subscribes  to  the  notification  service  is  the  GNU  C  Library
       resolver(3).   This  library  is used by many applications that need to resolve domain names.  When nameserver
       information is updated, the script /etc/resolvconf/update.d/libc generates a new version of the resolver  con‐
       figuration file, /run/resolvconf/resolv.conf, as described below.  If the new version of the file differs from
       the previously generated one then the hook scripts found in /etc/resolvconf/update-libc.d/ are executed.

       The dynamically generated resolver  configuration  file  always  starts  with  the  contents  of  /etc/resolv‐
       conf/resolv.conf.d/head  and  ends  with the contents of /etc/resolvconf/resolv.conf.d/tail.  Between head and
       tail the libc script inserts dynamic nameserver information compiled from,  first,  information  provided  for
       configured  interfaces;  second, static information from /etc/resolvconf/resolv.conf.d/base.  Specifically, it
       writes:

         1) up to three nameserver lines, ordered according to /etc/resolvconf/interface-order, possibly fewer if one
            of  the  addresses is a loopback address and the TRUNCATE_NAMESERVER_LIST_AFTER_LOOPBACK_ADDRESS environ‐
            ment variable is affirmatively set, as discussed in the ENVIRONMENT VARIABLES section;

         2) up to one search line containing the combined domain search list from all  "domain"  and  "search"  input
            lines, also ordered according to interface-order(5);

         3) all other non-comment input lines.