[Bug 1045616] Re: DHCP server handing out DNS server but DHCP client not loading DNS settings to client
Thomas Hood
1045616 at bugs.launchpad.net
Wed Sep 5 09:18:37 UTC 2012
Hi David.
As Steve has already said, if you are using a DHCP client to configure
the interface then any nameserver addresses that the client receives
will (normally) be supplied to resolvconf, whether the DHCP client is
started by ifup or by NetworkManager. On many, many systems this is
exactly what happens.
Based on the nameserver addresses that have been supplied to it,
resolvconf writes /run/resolvconf/resolv.conf. Normally
/etc/resolv.conf is a symbolic link to /run/resolvconf/resolv.conf.
Please note that if a local nameserver is running and the loopback
address 127.0.0.1 has been registered with resolvconf then (normally)
resolvconf only lists that one address in resolv.conf. This has been
known to confuse people.
You (David) wrote:
> Trying to fix with: adding to /etc/network/interfaces
> dns-nameservers 4.2.2.2 4.2.2.3
> dns-search xyz.com
> FAIL. Because you have iface eth0 inet dhcp that option isn't read
If the interface is being configured by NetworkManager then it's true
that those options have no effect; NetworkManager does not fully emulate
ifup. The interface is configured by NetworkManager if you are running
NetworkManager and /etc/NetworkManager/NetworkManager.conf contains
[ifupdown]
managed=true
If the interface is configured by ifup then the dns-* options ARE
effective even for an "inet dhcp" interface.
If you can't figure out what's wrong with your configuration, please do
the following.
* Reboot, connect to the Internet, fix up DNS, if necessary by editing /etc/resolv.conf by hand, then run "apport-collect 1045616" in order to supply information about the affected system.
* Run the following commands in a terminal and post the output here.
ls -l /run/resolvconf
cat /run/resolvconf/resolv.conf
ls -l /run/resolvconf/interface
for F in /run/resolvconf/interface/* ; do echo === $F === ; cat $F ; done
ls -l /etc/resolvconf/resolv.conf.d
for F in /etc/resolvconf/resolv.conf.d/* ; do echo === $F === ; cat $F ; done
cat /etc/resolvconf/interface-order
cat /etc/NetworkManager/NetworkManager.conf
cat /etc/network/interfaces
dpkg -l resolvconf network-manager
** Summary changed:
- DHCP server handing out DNS server but DHCP client not loading DNS settings to client
+ DHCP server handing out DNS server addresses but DHCP client does not write these to resolv.conf
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to resolvconf in Ubuntu.
https://bugs.launchpad.net/bugs/1045616
Title:
DHCP server handing out DNS server addresses but DHCP client does not
write these to resolv.conf
Status in “resolvconf” package in Ubuntu:
Incomplete
Bug description:
ARGH!!!!! Every release causes new problems >:(
If you have:
linux DHCP server on the network with options:
option domain-name "xyz.com";
option domain-name-servers 4.2.2.2, 4.2.2.3;
In Ubuntu 10.x it works fine and pulls the DHCP client pulls the DNS
servers from the DHCP fine.
Ubuntu 12.x - It's broken.
Trying to fix with: adding to /etc/network/interfaces
dns-nameservers 4.2.2.2 4.2.2.3
dns-search xyz.com
FAIL. Because you have iface eth0 inet dhcp that option isn't read
Try and configure with Network Manager from commandline because your running a server.
NOPE, network manager doesn't run from CLI commandline only GUI
Can't manually specify the DNS server in /etc/resolv.conf because it's
always getting overwritten.
What's the best option here? I think this might be a bug. Only option
I haven't tried is using the head file from this description:
Resolvconf has a /etc/resolvconf/resolv.conf.d/ directory that can contain “base”, “head”, “original” and “tail” files. All in resolv.conf format.
base: Used when no other data can be found
head: Used for the header of resolv.conf, can be used to ensure a DNS server is always the first one in the list
original: Just a backup of your resolv.conf at the time of resolvconf installation
tail: Any entry in tail is appended at the end of the resulting resolv.conf. In some cases, upgrading from a previous Ubuntu release, will make tail a symlink to original (when we think you manually modified resolv.conf in the past)
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/resolvconf/+bug/1045616/+subscriptions
More information about the foundations-bugs
mailing list