Hi there
After some digging in the code I found some Problems with the ddns component of IPFire and especially with the nsupdate provider. The main thing which renders the nsupdate provider unusable, I reported under Bug #12837 [1]. It seems to me there are more problems, but since I don't use IPFire, I do not feel to get involved to much.
It seems to me that the scriptlet the nsupdate provider produces is missing the "update" commands. It connects, authenticates and saves, but does not pass any information to the server. A generated scriptlet for nsupdate should look like this:
server $SERVER zone $ZONE update delete $HOSTNAME $RR update add $HOSTNAME $TTL $RR $IP send
...where: $SERVER is the name server to send the record update/ deletion $ZONE is the domain in which to update the host record $HOSTNAME is the dynamic host's FQDN $TTL is the time to live value for the record $IP is the numerical IP address of the dynamic host $RR is the record type, "A" for an IPv4, "AAAA" for an IPv6 host address
If I watch the debug output of ddns I do not see the update command being sent. I did not check this good enough to report a bug.
The whole provider does not work at all and the code in the ddns seems half baken to me. I started to report bugs, but I gave up, when I saw, that it nsupdate doesn't work at all. So if some one corrects the code and tests it (who actually knows to code in Python unlike me), those deficiencies should get discovered anyway. I hope I could help with some bug reports against the ddns core and the hint in this mail here.
Best regards, Adrian.