ddns and dhcp (update to wrong DNS?)

Kevin Darcy kcd at daimlerchrysler.com
Fri Jan 4 03:41:27 UTC 2002


The algorithm that a Dynamic Update client should use to determine where to
send its updates is outlined in RFC 2136, Section 4. To summarize, it uses, by
default, the contents of the SOA record and the NS records for the zone in
question (which it typically obtains by sending DNS queries), to determine
where to send the update. But, this is only the *default* behavior. If an
implementation has "special" knowledge about the identity and/or reachability
of the zone's primary master, it may bypass the SOA/NS query rigamarole and
send the update directly. Whether your DHCP server has the capability to
perform such an "override" is really a question of DHCP server configuration,
and I can't really answer...


- Kevin

Gabrie wrote:

> Hi,
>
> I'm trying to get ddns and dhcp running. Wading through
> groups.google.com finding a solution brought me closer but not quite
> to the solution. I have the feeling that the wrong DNS is being
> updated.
>
> My home configuration:
> LAPTOP:  NL-MAA-L049658 (192.168.0.159 through dhcp)
> Server:  LINUX (192.168.0.1 static) running Bind8.2 /DHCP 3.x
>
> I own the basvanzanten.com domain, but it still remains with the ISP.
> I have configured the basvanzanten.com also as my internal domain. For
> the MX record and the www alias I have made entries refering to the
> correct external addresses.
>
> Now when I renew my IP on the laptop, I see the following in my log:
>
> Dec 25 08:27:22 linux dhcpd: ip length 328 disagrees with bytes
> received 1500.
> Dec 25 08:27:22 linux dhcpd: accepting packet with data after udp
> payload.
> Dec 25 08:27:22 linux dhcpd: DHCPRELEASE of 192.168.0.159 from
> 00:04:75:18:d3:59 (NL-MAA-L049658) via eth0 (found)
> Dec 25 08:27:26 linux dhcpd: ip length 329 disagrees with bytes
> received 1500.
> Dec 25 08:27:26 linux dhcpd: accepting packet with data after udp
> payload.
> Dec 25 08:27:26 linux dhcpd: DHCPDISCOVER from 00:04:75:18:d3:59
> (NL-MAA-L049658) via eth0
> Dec 25 08:27:27 linux dhcpd: DHCPOFFER on 192.168.0.159 to
> 00:04:75:18:d3:59 (NL-MAA-L049658) via eth0
> Dec 25 08:27:27 linux dhcpd: ip length 352 disagrees with bytes
> received 1500.
> Dec 25 08:27:27 linux dhcpd: accepting packet with data after udp
> payload.
> Dec 25 08:27:28 linux dhcpd: if IN A NL-MAA-L049658.basvanzanten.com
> domain doesn't exist add 216000 IN A NL-MAA-L049658.basvanzanten.com
> 192.168.0.159 add 216000 IN TXT NL-MAA-L049658.basvanzanten.com
> "31a6c1dd880398ef191455b3a25cc7df2d": timed out.
> Dec 25 08:27:28 linux dhcpd: DHCPREQUEST for 192.168.0.159
> (192.168.0.1) from 00:04:75:18:d3:59 (NL-MAA-L049658) via eth0
> Dec 25 08:27:28 linux dhcpd: DHCPACK on 192.168.0.159 to
> 00:04:75:18:d3:59 (NL-MAA-L049658) via eth0
>
> The line at 08:27:28 says something about a time out. Could it be that
> he is trying to update the real DNS server for basvanzanten.com on the
> internet instead of the dns on 192.168.0.1? The linux machine is
> configured with an ISDN card and ipchains. It dials into the internet
> through a very protected corporate network, which will only allow dns
> queries to a proxy and I guess it will not let me update dns outside.
> But I also don't want that. Can I somehow tell dhcp which DNS to
> update?
>
> Gabrie
>
> Here is my named.conf:
>
> ****** BEGIN NAMED.CONF **********
> acl InternePcs {
>         192.168.0/24;
>         };
> /* sample configuration file for BIND 8.1 or later
>  * should be installed as /etc/named.conf
>  *
>  * Author: Florian La Roche
>  */
>
> #
> # overall options of the server
> #
> options {
>         directory "/var/named";
>         # the default is to fail, if the master file is not correct
>         check-names master warn;
>
>         pid-file "/var/run/named.pid";
>
>         datasize default;
>         stacksize default;
>         coresize default;
>         files unlimited;
>         recursion yes;
>
>         multiple-cnames no;             // if yes, then a name my have more
>         forward first;
>         allow-query {
>                 InternePcs;
>                 };
> };
>
> zone "." IN {
>         type hint;
>         file "root.hint";
> };
>
> zone "localhost" IN {
>         type master;
>         file "localhost.zone";
>         check-names fail;
>         allow-update {
>                 InternePcs;
>                 };
> };
>
> zone "0.0.127.in-addr.arpa" IN {
>         type master;
>         file "127.0.0.zone";
>         check-names fail;
>         allow-update {
>                 InternePcs;
>                 };
> };
>
> zone "basvanzanten.com" {
>         type master;
>         file "/var/named/basvanzanten.com.hosts";
>         allow-update {
>                 InternePcs;
>                 };
>         allow-query {
>                 InternePcs;
>                 };
>         };
> logging {
>         category update {
>                 default_syslog;
>                 };
>         channel update_syslog {
>                 syslog syslog;
>                 severity info;
>                 };
>         };
>
> ********** END of NAMED.CONF ************
>
> ********** BEGIN OF DHCPD.CONF ***********
> # dhcpd.conf
> #
> # Sample configuration file for ISC dhcpd
> #
>
> # option definitions common to all supported networks...
> option domain-name "basvanzanten.com";
> option domain-name-servers 192.168.0.1;
>
> option subnet-mask 255.255.255.0;
> default-lease-time 432000;
> max-lease-time 457200;
>
> ddns-domainname "basvanzanten.com";
> ddns-update-style interim;
> ddns-rev-domainname "in-addr.arpa.";
> ddns-updates on;
>
> subnet 192.168.0.0 netmask 255.255.255.0 {
>         option domain-name-servers 192.168.0.1;
>         option domain-name "basvanzanten.com";
>         range 192.168.0.150 192.168.0.160;
>         option broadcast-address 192.168.0.255;
>         option routers 192.168.0.1;
>         }
>
> ************* END **************



More information about the bind-users mailing list