Notes; when "things are working", host does either:
while on VPN: {{{ $ LC_ALL=C host -t soa local. Host local. not found: 3(NXDOMAIN) $ LC_ALL=C dig -t soa local. ; <<>> DiG 9.11.3-1ubuntu1.1-Ubuntu <<>> -t soa local. ;; global options: +cmd ;; Got answer: ;; WARNING: .local is reserved for Multicast DNS ;; You are currently testing what happens when an mDNS query is leaked to DNS ;; ->>HEADER<<- opcode: QUERY, status: FORMERR, id: 7637 ;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1 ;; WARNING: recursion requested but not available ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ; COOKIE: e1ff5e7222ad62da (echoed) ;; QUESTION SECTION: ;local. IN SOA ;; Query time: 21 msec ;; SERVER: 192.168.194.20#53(192.168.194.20) ;; WHEN: Mon Aug 20 12:01:19 EDT 2018 ;; MSG SIZE rcvd: 46 }}} while off VPN: {{{ $ LC_ALL=C host -t soa local. Host local not found: 2(SERVFAIL) $ LC_ALL=C dig -t soa local. ; <<>> DiG 9.11.3-1ubuntu1.1-Ubuntu <<>> -t soa local. ;; global options: +cmd ;; Got answer: ;; WARNING: .local is reserved for Multicast DNS ;; You are currently testing what happens when an mDNS query is leaked to DNS ;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 61619 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 65494 ;; QUESTION SECTION: ;local. IN SOA ;; Query time: 0 msec ;; SERVER: 127.0.0.53#53(127.0.0.53) ;; WHEN: Mon Aug 20 12:02:24 EDT 2018 ;; MSG SIZE rcvd: 34 }}} ===== while in the broken/hung state: ^^^^^^^^^^^ ===== {{{ $ LC_ALL=C host -t soa local. <HANGS FOREVER> :( }}} (even hangs w/ "-W 1") ... dig command augmented returns!: {{{ $ LC_ALL=C dig -t soa local. ; <<>> DiG 9.11.3-1ubuntu1.1-Ubuntu <<>> -t soa local. ;; global options: +cmd ;; Got answer: ;; WARNING: .local is reserved for Multicast DNS ;; You are currently testing what happens when an mDNS query is leaked to DNS ;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 16967 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 65494 ;; QUESTION SECTION: ;local. IN SOA ;; Query time: 0 msec ;; SERVER: 127.0.0.53#53(127.0.0.53) ;; WHEN: Mon Aug 20 11:56:58 EDT 2018 ;; MSG SIZE rcvd: 34 }}} (I am not familiar enough with SOAL local. lookups though to say if it can replace the host invocation in this method) /usr/lib/avahi/avahi-daemon-check-dns.sh dns_has_local() { # Some magic to do tests if [ -n "${FAKE_HOST_RETURN}" ] ; then if [ "${FAKE_HOST_RETURN}" = "true" ]; then return 0; else return 1; fi fi 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} fi return 1 } -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1752411 Title: bind9-host, avahi-daemon-check-dns.sh hang forever causes network connections to get stuck To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/avahi/+bug/1752411/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs