Comment 17 for bug 90681

Revision history for this message
Dominic Chambers (dominic-chambers) wrote :

okay, so this is my understanding of how things should work:

1. on a local network without DHCP, resolv.conf is configured manually by the user
2. on a local network with DHCP, resolv.conf is set once at connection time, but then may be updated each time the DHCP lease is renewed
3. on a remote network (via PPP or VPN), resolv.conf contains the merge of local and remote settings, and is set once at connection time, but then may be upated each time either of the leases are renewed -- both local and remote
-- 3b. if the remote network does not provide DNS information then resolv.conf should be left unchanged
4. when the remote network connection is brought down, resolv.conf must be restored to either its state before the conntection was established, or -- if the local lease was renewed during this period -- to its latest lease value

one way for this to happen would be for NM to take a copy of resolv.conf at the point it establishes the connection, and then have it listen to resolv.conf for update notifications. if resolv.conf is changed by some other party (e.g. dhcpclient or dhcpd) then it can update the copy of the file that it will use to restore when the connection ends, and can also recompute the local/remote merge.

@alan ezust: perhaps other people can tell you how it is done for the time-being, but I happen to know that what you want is coming in a nice gui form in the yet to be released, NetworkManager 0.7.