Today, I have had some issues with one of my DNS servers.
The configuration is: one master and one slave for the zone. Yesterday night the master failed due to hard-disk failure. Today when I was reinstalled / upgraded the master, the slave start to respond “servfail” to all the queries for that zone. The thing was very strange because the slave still was the nameserver for that zone. Fortunately I managed to fix. The problem was in the SOA record.
As you know from an earlier post the zone looks something like this:
$TTL 3600
@ IN SOA example.com. root.example.com. (
0605200803 ; serial (d. adams)
36000 ; refresh
36000 ; retry
36000 ; expiry
36000 ) ; minimum
IN NS example.com.
example.com. IN A 192.168.2.141
example.org. IN A 192.168.2.142
www CNAME example.com.
The expiry timer is set to 36000 that in seconds means 10 hours. So the zone on slave will expire in 10 hours if the master cannot be contacted in the meantime. Keep in mind that the timers are in seconds and the slave WILL NOT ANSWER ANY QUERY WHEN THE ZONE HAS EXPIRED (the answer will be SERVFAIL).