appliedsec/Powerglove-DNS

P-G need to update the notify_serial field in the domains table

Closed this issue · 0 comments

The notify_serial field contains the value for the SOA (Start of Authority) serial number.
This number needs to change when ever there is a change to a DNS record in the given domain.

This serial number is used to notify slave DNS nodes that a change is available.


Here is what needs to happen:

Anytime a DNS record is changed, the notified_serial field in the domains table needs to be updated for the given domain.
The serial number is composed of the following values:

YYYYMMDDXX

YYYY - Year
MM - Month
DD - Day
XX - incremental value, starting at 01 and incrementing by +1 if is a change in the same day

Build rule: Upon a change of a DNS record (any type) with in domain X;
  1. fetch the value of notify_serial field (for the effext domain) in the domain table;
    separate the date-part for the increment part (XX)

  2. Generate a new candidate date-part value

  3. Compare the original date-part for (1) to date-part of (2)
    If they are different:
    Update the notify_serial with the candidate date-part and the value 01 concatenated to it
    Else
    Increment the XX value by +1 and update the notify_serial with the new value

Here are some link to provide some background/context:
http://wiki.powerdns.com/trac/wiki/fields
http://www.debian-administration.org/articles/381