I've blatantly copied tedu@'s subject line from
http://www.tedunangst.com/flak/post/the-day-some-of-the-DNS-stopped
since he's a developer and I believe I've run into the same issue.

Almost every time the Internet connection goes down at home, unbound
1.5.7 on my 5.9-release router partly goes down with it and continues
to do so even when the Internet comes back up.  After the Internet is
back up, unbound is doing the following even an hour afterwards and
all local and non-local queries to the names in dump_requestlist
simply timeout:

$ unbound-control dump_requestlist
thread #0
#   type cl name    seconds    module status
  0    A IN 0.asia.pool.ntp.org. 3946.913123 iterator wants (empty_list)
  1    A IN au.v4.download.windowsupdate.com. 5064.308753 iterator
wants (empty_list)
  2    A IN api.branch.io. 2327.015803 iterator wants (empty_list)
  3    A IN app.adjust.com. 2326.984225 iterator wants (empty_list)
  4    A IN fe2.update.microsoft.com. 5170.824266 iterator wants (empty_list)
  5    A IN v10.vortex-win.data.microsoft.com. 5064.296510 iterator
wants (empty_list)
  6    A IN www.apple.com. 5609.053946 iterator wants (empty_list)
  7    A IN chat.us.freenode.net. 3386.286994 iterator wants (empty_list)
  8    A IN apple.com. 5608.955094 iterator wants (empty_list)
  9    A IN usapi.hik-online.com. 2463.221212 iterator wants (empty_list)
 10    A IN guzzoni.apple.com. 5612.065951 iterator wants (empty_list)
 11    A IN time-ios.apple.com. 5612.013224 iterator wants (empty_list)
 12    A IN alt1-mtalk.google.com. 5460.098682 iterator wants (empty_list)
 13    A IN init-p01st.push.apple.com. 2461.748309 iterator wants (empty_list)
 14    A IN safebrowsing.clients.google.com. 5612.854753 iterator
wants (empty_list)
 15    A IN settings-win.data.microsoft.com. 5609.266007 iterator
wants (empty_list)
 16    A IN media-cache-ak0.pinimg.com. 2317.233661 iterator wants (empty_list)
 17    A IN p06-ckdatabase-current.edge.icloud.apple-dns.net.
2768.238111 iterator wants (empty_list)
 18 AAAA IN 0.asia.pool.ntp.org. 3976.946286 iterator wants (empty_list)
 19 AAAA IN 0.africa.pool.ntp.org. 3916.874747 iterator wants (empty_list)
 20 AAAA IN connectivitycheck.gstatic.com. 5422.074636 iterator wants
(empty_list)

$ unbound-control dump_infra
67.212.140.4 winisp.net. expired rto 120000
198.41.0.4 . expired rto 120000
198.97.190.53 . expired rto 120000
192.58.128.30 . expired rto 120000
192.228.79.201 . expired rto 120000
75.75.76.76 . ttl 140 ping 10 var 39 rtt 166 rto 166 tA 0 tAAAA 0
tother 0 ednsknown 1 edns 0 delay 0 lame dnssec 0 rec 0 A 0 other 0
199.7.83.42 . expired rto 120000
204.236.132.56 searchfleet.com. expired rto 120000
75.75.75.75 . ttl 136 ping 9 var 15 rtt 69 rto 69 tA 0 tAAAA 0 tother
0 ednsknown 1 edns 0 delay 0 lame dnssec 0 rec 0 A 0 other 0
192.36.148.17 . expired rto 120000
202.12.27.33 . expired rto 120000


unbound-control flush_requestlist resolves the problem, but I'd like
this to be resolved without outside intervention and the expired
entries in dump_infra still remain afterward.  Any unbound experts
care to chime in?  I figured I'd try here first since unbound is in
base, but I might send this to the unbound-users mailing lists as
well.  My unbound.conf is below with some personal information
removed.

remote-control:
        control-enable: yes
        # control-use-cert: no
        server-key-file: "/var/unbound/etc/unbound_server.key"
        server-cert-file: "/var/unbound/etc/unbound_server.pem"
        control-key-file: "/var/unbound/etc/unbound_control.key"
        control-cert-file: "/var/unbound/etc/unbound_control.pem"

server:
        extended-statistics: yes

        num-threads: 2
        msg-cache-size: 8m              # default is 4m
        # Should be double msg-cache-size
        rrset-cache-size: 16m
        # This was increased from 1024 since the recommendation is to
have the outgoing-range be twice
        # this value and this value is 1024 by default
        num-queries-per-thread: 2048

        interface: 0.0.0.0
        interface: ::1
        # do-ip6: no

        # Reduce TTL for hosts. Hopefully this will resolve DNS issues
when connectivity issues occur.
        # Default is 900 seconds.
        infra-host-ttl: 300

        access-control: 0.0.0.0/0 allow
        access-control: ::0/0 refuse
        access-control: ::1 allow

        # root-hints: "/var/unbound/etc/root.hints"

        hide-identity: yes
        hide-version: yes

        prefetch: yes

forward-zone:
        name: "."                               # use for ALL queries
        forward-addr: 75.75.75.75               # Comcast
        forward-addr: 75.75.76.76               # Comcast
        forward-first: yes                      # try direct if forwarder fails

Reply via email to