What does named log message "deleted from unreachable cache" mean?
An example of the message being logged is:
02-Aug-2012 07:58:20.601 general: info: primary 192.0.2.4#53 (source 192.0.2.8#0) deleted from unreachable cache
BIND maintains a cache of unreachable primaries to which it refers when handling a zone refresh. If a zone refresh fails with a specific primary (either during the query for the SOA or after querying and while attempting a subsequent zone transfer), then this primary is cached as 'unreachable' for 10 minutes.
As of versions 9.6-ESV-R6, 9.7.5, 9.8.2 and 9.9.0 onwards, the change below implements an earlier removal of a primary server from the unreachable cache if a NOTIFY is received from it. Note that receipt of a NOTIFY (which is a UDP packet travelling from primary to secondary) doesn't guarantee that the primary will be reachable from the secondary, but it does ensure quicker recovery in the situation where a primary was temporarily unavailable, for example for a reboot.
In the CHANGES file, it is described thus:
3204. [bug] When a master server that has been marked as unreachable sends a NOTIFY, mark it reachable again. [RT #25960]
To further investigate (if for example, the message is being logged persistently, which suggests that notifies are being received, but that many zone transfers are failing), you need to examine what is being logged under category xfer-in. For events that would lead to the primary being added to unreachable cache, search for messages containing "failed to connect" or "could not refresh". For example:
xfer-in: error: transfer of 'testzone.example.com/IN' from 192.0.2.4#53: failed to connect: timed out
You may also see other logged messages that indicate that a transfer has not happened because this primary is currently listed in unreachable cache. There are several different messages that can be logged (from different circumstances), but they all contain the text "unreachable (cached)". For example:
general: info: zone testzone.example.com/IN: refresh: skipping zone transfer as primary 192.0.2.4#53 (source 192.0.2.8#0) is unreachable (cached)