Yes, I encountered the same problem. But I fixed it.
In /usr/lib/avahi/avahi-daemon-check-dns.sh I replaced string here:
# OUT=`LC_ALL=C host -t soa local. 2>&1`
# if [ $? -eq 0 ] ; then
# if echo "$OUT" | egrep -vq 'has no|not found'; then
# return 0
# fi
# else.
# Checking the dns servers failed. Assuming no .local unicast dns, but
# remove the nameserver cache so we recheck the next time we're triggered
# rm -f ${NS_CACHE}
# return 1
# fi
to this:
OUT=`LC_ALL=C awk '/^nameserver/ {print $2}' /etc/resolv.conf`
if [ $? -eq 0 ]; then
for INDEX in $OUT; do
if `host -t soa $INDEX | grep -qE 'local'`; then
return 0
fi;
done;
else
# Checking the dns servers failed. Assuming no .local unicast dns, but
# remove the nameserver cache so we recheck the next time we're triggered
rm -f ${NS_CACHE}
return 1
fi
Yes, I encountered the same problem. But I fixed it.
In /usr/lib/ avahi/avahi- daemon- check-dns. sh I replaced string here:
# OUT=`LC_ALL=C host -t soa local. 2>&1`
# if [ $? -eq 0 ] ; then
# if echo "$OUT" | egrep -vq 'has no|not found'; then
# return 0
# fi
# else.
# Checking the dns servers failed. Assuming no .local unicast dns, but
# remove the nameserver cache so we recheck the next time we're triggered
# rm -f ${NS_CACHE}
# return 1
# fi
to this:
OUT=`LC_ALL=C awk '/^nameserver/ {print $2}' /etc/resolv.conf`
if [ $? -eq 0 ]; then
for INDEX in $OUT; do
if `host -t soa $INDEX | grep -qE 'local'`; then
return 0
fi;
done;
else
# Checking the dns servers failed. Assuming no .local unicast dns, but
# remove the nameserver cache so we recheck the next time we're triggered
rm -f ${NS_CACHE}
return 1
fi
May be it is not correct. but it works for me.