[Pdns-users] MongoDB Backend merged Re: Mongo DB and PowerDNS part 3: Now with DNSSEC

fredrik danerklint fredan-pdns at fredan.org
Thu May 26 12:44:01 UTC 2011


Nick,

To answer all of your questions, please take a look at the source file 
'communicator.cc'. At the end of that file there is a function called 
"void CommunicatorClass::mainloop(void)" that checks slave and master every 
other 'slave-cycle-interval' seconds (parameter taken from the pdns.conf 
file). I assume that this function is running in a seperate thread.

This is how PowerDNS knows when to send a update to other nameservers.


> On 25/5/2011 11:25 ΌΌ, fredrik danerklint wrote:
> > PowerDNS ask each backend for domains which has a different
> > 'notified_serial' than 'serial' for the domain.
> 
> Thanks Fredrik for the info. If I understand it right, 'notified_serial'
> is the one PowerDNS knows as current for a domain, and 'serial' is the
> one stored in the same domain (in the backend), which may be updated or
> not.
> 
> But how/when is this question from PowerDNS triggered? I mean, how
> PowerDNS knows *when* to ask the backend for an updated serial?
> 
> > This function is called getUpdatedMasters(vector<DomainInfo>* domains)
> > and exists in the source file 'master.cc' for MongoDB backend.
> 
> I understand that the above function is part of the master (if I name it
> correctly) process (i.e. not the backend). So, how is it in a file of
> the backend?
> 
> > What PowerDNS except after a call to this function is a list of all
> > domains that has a different serialnumber than notified serialnumber.
> > 
> > Every backend can implement this functionallity differently since
> > PowerDNS does not know how the information about a domain is stored.
> 
> That's trivial to retrieve, whatever the backend.
> 
> > The good part that you asked about this is that I (you!) found a bug
> > which would not fill out the domains that has a different serial number
> > against the real serial number. I've sent Bert a patch to be included in
> > the source code to fix this.
> 
> I am glad I helped (even without knowing it) for a fix!
> 
> 
> Nick

-- 
//fredan



More information about the Pdns-users mailing list