DynDNS

From Jan's Wiki
Revision as of 21:26, 25 February 2015 by Der Jan (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Add to pdns.conf:

experimental-dnsupdate=yes
allow-dnsupdate-from=

Check the domain id in psql

sudo psql -U powerdns -W powerdns
select id from domains where name='conti.work';

insert into domainmetadata(domain_id, kind, content) values(DOMAINIDHERE, 'ALLOW-DNSUPDATE-FROM','172.16.0.0/16');
insert into tsigkeys (name, algorithm, secret) values ('dyndns', 'hmac-md5', 'ReplaceWithBase64Key==');
insert into domainmetadata (domain_id, kind, content) values (DOMAINIDHERE, 'TSIG-ALLOW-DNSUPDATE', 'dyndns');

For reference see here [1]

On OpenWRT create the following script in /usr/lib/ddns/update_nsupdate.sh :

#!/bin/sh
[ $use_ipv6 -eq 1 ] && rrtype="AAAA" || rrtype="A"
echo "Update $domain to ip $__IP $rrtype"
cat <<EOF  | /usr/bin/nsupdate -y $username:$password
server $dns_server
update del $domain $rrtype
update add $domain 60 $rrtype $__IP
send
EOF

In OpenWRT DDNS put custom script /usr/lib/ddns/update_nsupdate.sh, username dyndns, password ReplaceWithBase64Key==, domain dyn.conti.work