diff --git a/etc/inc/services.inc b/etc/inc/services.inc index f55e6d4deb..1813860fe7 100644 --- a/etc/inc/services.inc +++ b/etc/inc/services.inc @@ -925,7 +925,10 @@ EOD; fclose($fd); /* generate update instructions */ - $upinst = "update delete {$config['dnsupdate']['host']} A\n"; + $upinst = ""; + if ($config['dnsupdate']['server']) + $upinst .= "server {$config['dnsupdate']['server']}\n"; + $upinst .= "update delete {$config['dnsupdate']['host']} A\n"; $upinst .= "update add {$config['dnsupdate']['host']} {$config['dnsupdate']['ttl']} A {$wanip}\n"; $upinst .= "\n"; /* mind that trailing newline! */ @@ -1311,4 +1314,4 @@ function upnp_start() { } } -?> \ No newline at end of file +?> diff --git a/usr/local/www/services_dyndns.php b/usr/local/www/services_dyndns.php index 3c5fe21381..3e6591bdef 100755 --- a/usr/local/www/services_dyndns.php +++ b/usr/local/www/services_dyndns.php @@ -45,6 +45,7 @@ $pconfig['wildcard'] = isset($config['dyndns']['wildcard']); $pconfig['dnsupdate_enable'] = isset($config['dnsupdate']['enable']); $pconfig['dnsupdate_host'] = $config['dnsupdate']['host']; +$pconfig['dnsupdate_server'] = $config['dnsupdate']['server']; $pconfig['dnsupdate_ttl'] = $config['dnsupdate']['ttl']; if (!$pconfig['dnsupdate_ttl']) $pconfig['dnsupdate_ttl'] = 60; @@ -106,6 +107,7 @@ if ($_POST) { $config['dnsupdate']['enable'] = $_POST['dnsupdate_enable'] ? true : false; $config['dnsupdate']['host'] = $_POST['dnsupdate_host']; + $config['dnsupdate']['server'] = $_POST['dnsupdate_server']; $config['dnsupdate']['ttl'] = $_POST['dnsupdate_ttl']; $config['dnsupdate']['keyname'] = $_POST['dnsupdate_keyname']; $config['dnsupdate']['keytype'] = $_POST['dnsupdate_keytype']; @@ -146,6 +148,7 @@ function enable_change(enable_change) { endis = !(document.iform.dnsupdate_enable.checked || enable_change); document.iform.dnsupdate_host.disabled = endis; + document.iform.dnsupdate_server.disabled = endis; document.iform.dnsupdate_ttl.disabled = endis; document.iform.dnsupdate_keyname.disabled = endis; document.iform.dnsupdate_keytype[0].disabled = endis; @@ -247,6 +250,12 @@ function enable_change(enable_change) { + + Server + + + + TTL @@ -261,7 +270,7 @@ function enable_change(enable_change) { This must match the setting on the DNS server. - Key type + Key type > Zone   > Host   @@ -275,7 +284,7 @@ function enable_change(enable_change) { Paste an HMAC-MD5 key here. - Protocol + Protocol > Use TCP instead of UDP