Hello, At home I use static IPs, but when I take my laptop to work I end up using DHCP. Typically there are no issues, however, at work, if the link goes down, when it comes back up, the saved resolv.conf file gets clubbered with previous DHCP-ed version and leaves me to reconstruct my resolv.conf when I return home and discover things in a broken state.
I believe there is no good reason for dhclient-script to override an already existing /etc/resolv.conf.save file. If I'm correct, the following patch[0] solves this issue. I don't have a way to test the IPv6 edition, but I have been running a pre 1.16 revision of this script with my patch for a couple of weeks now. Open to suggestions and corrections. Thanks, --patrick [0] Index: dhclient-script =================================================================== RCS file: /cvs/obsd/src/sbin/dhclient/dhclient-script,v retrieving revision 1.16 diff -u -p dhclient-script --- dhclient-script 4 Apr 2010 22:53:50 -0000 1.16 +++ dhclient-script 7 Apr 2010 08:17:07 -0000 @@ -131,8 +131,10 @@ add_new_resolv_conf() { # In case (e.g. during OpenBSD installs) /etc/resolv.conf # is a symbolic link, take care to preserve the link and write # the new data in the correct location. + # However, don't override an already existing + # /etc/resolv.conf.save file. - if [ -f /etc/resolv.conf ]; then + if [ -f /etc/resolv.conf -a ! -e /etc/resolv.conf.save ]; then cat /etc/resolv.conf > /etc/resolv.conf.save fi cat /etc/resolv.conf.std > /etc/resolv.conf @@ -172,8 +174,10 @@ ip6_add_new_resolv_conf() { # In case (e.g. during OpenBSD installs) /etc/resolv.conf # is a symbolic link, take care to preserve the link and write # the new data in the correct location. + # However, don't override an already existing + # /etc/resolv.conf.save file. - if [ -f /etc/resolv.conf ]; then + if [ -f /etc/resolv.conf -a ! -e /etc/resolv.conf.save ]; then cat /etc/resolv.conf > /etc/resolv.conf.save fi cat /etc/resolv.conf.std6 > /etc/resolv.conf