Package: rdnssd Version: 1.0.1-1 Severity: normal Tags: ipv6 I don't know how and why this happens, but sometimes rdnssd thinks it got no nameserver information, so it just removes everything from /etc/resolv.conf or resolvconf leaving the system with the wrong resolver configuration.
As the work-around, the merge hook can be modified to replace the nameservers only if the rdnssd's internal resolv.conf isn't empty. The patch to /etc/rdnssd/merge-hook is attached. -- System Information: Debian Release: wheezy/sid APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental') Architecture: i386 (i686) Kernel: Linux 2.6.38-1-686 (SMP w/2 CPU cores) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_GB.UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages rdnssd depends on: ii adduser 3.112+nmu1 add and remove users and groups ii libc6 2.11.2-2 Embedded GNU C Library: Shared lib Versions of packages rdnssd recommends: ii resolvconf 1.48 name server information handler Versions of packages rdnssd suggests: ii ndisc6 1.0.1-1 IPv6 diagnostic tools -- no debconf information
--- a/merge-hook +++ b/merge-hook @@ -17,9 +17,15 @@ # * along with this program. If not, see <http://www.gnu.org/licenses/>. * # ************************************************************************* -PATH=/sbin:/bin +PATH=/sbin:/bin:/usr/bin INPUT="/var/run/rdnssd/resolv.conf" +nonempty=$(wc -w < "$INPUT") + +if [ $nonempty = 0 ]; then + exit +fi + if [ -x /sbin/resolvconf ]; then /sbin/resolvconf -a 000.rdnssd < "$INPUT" else