DDNS cannot set up "A" record

Dave dave at lepertheory.net
Wed May 15 10:49:26 UTC 2002



Hello all,

I'm having a very strange problem getting one particular computer (XP 
Pro) in my home network to work with ISC DHCPD & BIND DDNS.  All other 
computers work fine with DDNS (1 XP Pro & 2 XP Home).  For some reason I 
can't figure out, the A record is never created when a DHCP request is 
made.  I have the DHCP server configured to do the DDNS updates, and do 
not allow any other computer to do them.  This works fine with every 
computer but one.  Here are the log messages that I get for a DHCP 
request with the "broken" computer:

May 15 04:51:14 lepertheory named[2579]: client 127.0.0.1#1027: updating 
zone '10.IN-ADDR.ARPA/IN': deleting an rrset
May 15 04:51:14 lepertheory named[2579]: client 127.0.0.1#1027: updating 
zone '10.IN-ADDR.ARPA/IN': adding an RR
May 15 04:51:14 lepertheory named[2579]: journal file 
int.10.IN-ADDR.ARPA.jnl does not exist, creating it
May 15 04:51:14 lepertheory dhcpd: delete IN PTR 
254.0.2.10.in-addr.arpa. add 21600 IN PTR 254.0.2.10.in-addr.arpa. 
lithium.lepertheory.net: success.
May 15 04:51:14 lepertheory named[2579]: zone 10.IN-ADDR.ARPA/IN: 
sending notifies (serial 2002032402)
May 15 04:51:14 lepertheory dhcpd: DHCPREQUEST for 10.2.0.254 from 
00:40:f4:06:3a:16 via eth3
May 15 04:51:14 lepertheory dhcpd: DHCPACK on 10.2.0.254 to 
00:40:f4:06:3a:16 (lithium) via eth3
May 15 04:51:14 lepertheory dhcpd: DHCPREQUEST for 10.2.0.254 from 
00:40:f4:06:3a:16 (lithium) via eth3
May 15 04:51:14 lepertheory dhcpd: DHCPACK on 10.2.0.254 to 
00:40:f4:06:3a:16 (lithium) via eth3
********
********
******** The next line is the end of the line for me being able to 
narrow down the problem, I don't understand why this is different than 
the working computer ********
May 15 04:51:14 lepertheory named[2579]: client 10.2.0.254#3118: 
updating zone 'lepertheory.net/IN': update failed: 'RRset exists (value 
dependent)' prerequisite not satisfied (NXRRSET)
May 15 04:51:14 lepertheory named[2579]: client 10.2.0.254#3121: update 
'lepertheory.net/IN' denied
May 15 04:51:14 lepertheory named[2579]: client 10.2.0.254#3124: 
updating zone 'lepertheory.net/IN': update failed: 'RRset exists (value 
dependent)' prerequisite not satisfied (NXRRSET)
May 15 04:51:14 lepertheory named[2579]: client 10.2.0.254#3127: update 
'lepertheory.net/IN' denied

A computer making a successful request looks like this:

May 15 04:55:38 lepertheory named[2579]: client 127.0.0.1#1027: updating 
zone 'lepertheory.net/IN': adding an RR
May 15 04:55:38 lepertheory named[2579]: client 127.0.0.1#1027: updating 
zone 'lepertheory.net/IN': adding an RR
May 15 04:55:38 lepertheory named[2579]: journal file 
int.lepertheory.net.jnl does not exist, creating it
*******
********
******* I cannot figure out why this is different on the working 
computer.  I don't even know if whatever command is logged here is being 
executed the same for the non-working computer, or at all. *******
May 15 04:55:38 lepertheory dhcpd: if IN A dickheadii.lepertheory.net 
domain doesn't exist add 21600 IN A dickheadii.lepertheory.net 
10.1.0.254 add 21600 IN TXT dickheadii.lepertheory.net 
"317997d60c0dc0b578cd001b80f96d6fa4": success.
May 15 04:55:38 lepertheory named[2579]: client 127.0.0.1#1027: updating 
zone '10.IN-ADDR.ARPA/IN': deleting an rrset
May 15 04:55:38 lepertheory named[2579]: client 127.0.0.1#1027: updating 
zone '10.IN-ADDR.ARPA/IN': adding an RR
May 15 04:55:38 lepertheory dhcpd: delete IN PTR 
254.0.1.10.in-addr.arpa. add 21600 IN PTR 254.0.1.10.in-addr.arpa. 
dickheadii.lepertheory.net: success.
May 15 04:55:38 lepertheory named[2579]: zone lepertheory.net/IN: 
sending notifies (serial 2002032402)
May 15 04:55:38 lepertheory named[2579]: zone 10.IN-ADDR.ARPA/IN: 
sending notifies (serial 2002032403)
May 15 04:55:38 lepertheory dhcpd: DHCPREQUEST for 10.1.0.254 from 
00:90:27:b6:91:30 via eth3
May 15 04:55:39 lepertheory dhcpd: DHCPACK on 10.1.0.254 to 
00:90:27:b6:91:30 (dickheadii) via eth3
May 15 04:55:39 lepertheory dhcpd: DHCPREQUEST for 10.1.0.254 from 
00:90:27:b6:91:30 (dickheadii) via eth3
May 15 04:55:39 lepertheory dhcpd: DHCPACK on 10.1.0.254 to 
00:90:27:b6:91:30 (dickheadii) via eth3

I'm not sure what causes the doubling of some of the entries, probably a 
problem for another day and not one I'm real worried about now.  Anyway, 
as far as I can tell the two machines are configured exactly the same 
way, as far as anything that would affect the DHCP request.  Here's the 
one that doesn't work (from the Computer Name tab of System.cpl in XP):

Full computer name: lithium.
Workgroup:          DANK

Not sure if it has any effect (it hasn't that I've been able to find, 
and I've looked high and low) that the computer name is lithium. instead 
of lithium.lepertheory.net., but as you can see, the example computer 
that works fine is configured exactly the same, as are the rest of the 
computers in the house:

Full computer name: dickheadii.
Workgroup:          DANK

And, of course, here is my dhcpd.conf:

option domain-name "lepertheory.net";
option routers 10.0.0.1;
option domain-name-servers 10.0.0.1;
ddns-update-style interim;

key DHCP_UPDATER {
         algorithm HMAC-MD5.SIG-ALG.REG.INT;
         secret "***CENSORED: It's the same as in named.conf***";
};

zone lepertheory.net. {
         primary 127.0.0.1;
         key DHCP_UPDATER;
}

zone 10.in-addr.arpa. {
         primary 127.0.0.1;
         key DHCP_UPDATER;
}

class "ip2" {
         match if (option host-name = "dickheadii");
}

class "ip3" {
         match if (option host-name = "lithium");
}

subnet 10.0.0.0 netmask 255.0.0.0 {
         pool {
                 range 10.0.0.11 10.0.0.254;
                 deny members of "ip2";
                 deny members of "ip3";
         }
         pool {
                 range 10.1.0.11 10.1.0.254;
                 allow members of "ip2";
                 deny members of "ip3";
         }
         pool {
                 range 10.2.0.11 10.2.0.254;
                 deny members of "ip2";
                 allow members of "ip3";
         }
}

host albania.lepertheory.net {
         hardware ethernet 00:50:BF:3A:2C:5C;
         fixed-address 10.0.0.2;
}

host prometheus.lepertheory.net {
         hardware ethernet 00:E0:18:26:4A:69;
         fixed-address 10.0.0.3;
}

The working computer in this config file is set up almost exactly the 
same as the non-working computer, the only difference being the IP pool 
that is assigned to each.  I use it to specify different external IP's 
(It's a gaming household).

Here is my named.conf:

options {
         directory "/etc/namedb";
         forwarders {
                 24.93.1.119;
                 24.93.1.250;
                 24.93.1.120;
                 24.93.1.249;
                 24.92.226.174;
         };
};

key "rndc-key" {
         algorithm hmac-md5;
         secret "***CENSORED***";
};

key "DHCP_UPDATER" {
         algorithm HMAC-MD5.SIG-ALG.REG.INT;
         secret "***CENSORED: It's the same as in dhcpd.conf";
};

controls {
         inet 127.0.0.1 port 953
                 allow { 127.0.0.1; } keys { "rndc-key"; };
};

view "internal" {
         match-clients { 10.0.0.0/8; 127.0.0.1; };
         zone "lowroad.dhs.org" {
                 type master;
                 file "int.lowroad.dhs.org";
                 allow-update { key DHCP_UPDATER; };
         };
         zone "lepertheory.net" {
                 type master;
                 file "int.lepertheory.net";
                 allow-update { key DHCP_UPDATER; };
         };
         zone "10.IN-ADDR.ARPA" {
                 type master;
                 file "int.10.IN-ADDR.ARPA";
                 allow-update { key DHCP_UPDATER; };
         };
         zone "15.93.24.IN-ADDR.ARPA" {
                 type master;
                 file "ext.15.93.24.IN-ADDR.ARPA";
         };
         zone "47.24.24.IN-ADDR.ARPA" {
                 type master;
                 file "ext.47.24.24.IN-ADDR.ARPA";
         };
         zone "219.95.24.IN-ADDR.ARPA" {
                 type master;
                 file "ext.219.95.24.IN-ADDR.ARPA";
         };
         zone "0.0.127.IN-ADDR.ARPA" {
                 type master;
                 file "int.0.0.127.IN-ADDR.ARPA";
         };
};

view "external" {
         match-clients { any; };
         zone "lowroad.dhs.org" {
                 type master;
                 file "ext.lowroad.dhs.org";
         };
         zone "lepertheory.net" {
                 type master;
                 file "ext.lepertheory.net";
         };
         zone "15.93.24.IN-ADDR.ARPA" {
                 type master;
                 file "ext.15.93.24.IN-ADDR.ARPA";
         };
         zone "47.24.24.IN-ADDR.ARPA" {
                 type master;
                 file "ext.47.24.24.IN-ADDR.ARPA";
         };
         zone "219.95.24.IN-ADDR.ARPA" {
                 type master;
                 file "ext.219.95.24.IN-ADDR.ARPA";
         };
};

And here's my zone files for the offending zone:

int.lepertheory.net:
$ORIGIN .
$TTL 86400      ; 1 day
lepertheory.net         IN SOA  lepertheory.net. root.lepertheory.net. (
                                 2002032402 ; serial
                                 3600       ; refresh (1 hour)
                                 300        ; retry (5 minutes)
                                 3600000    ; expire (5 weeks 6 days 16 
hours)
                                 3600       ; minimum (1 hour)
                                 )
                         NS      ns1.lepertheory.net.
                         NS      ns2.lepertheory.net.
                         NS      ns3.lepertheory.net.
                         A       10.0.0.1
                         MX      10 smtp.lepertheory.net.
$ORIGIN lepertheory.net.
albania                 A       10.0.0.2
$TTL 21600      ; 6 hours
dickheadii              A       10.1.0.254
                         TXT     "317997d60c0dc0b578cd001b80f96d6fa4"
$TTL 86400      ; 1 day
imap                    A       10.0.0.2
irc                     A       10.0.0.2
ns1                     A       10.0.0.1
ns2                     A       10.0.0.1
ns3                     A       10.0.0.1
pop3                    A       10.0.0.2
prometheus              A       10.0.0.3
smtp                    A       10.0.0.2
ssh                     A       10.0.0.2
www                     A       10.0.0.2

int.10.IN-ADDR.ARPA:
$ORIGIN .
$TTL 86400      ; 1 day
10.IN-ADDR.ARPA         IN SOA  lepertheory.net. root.lepertheory.net. (
                                 2002032403 ; serial
                                 3600       ; refresh (1 hour)
                                 300        ; retry (5 minutes)
                                 3600000    ; expire (5 weeks 6 days 16 
hours)
                                 3600       ; minimum (1 hour)
                                 )
                         NS      ns1.lepertheory.net.
                         NS      ns2.lepertheory.net.
                         NS      ns3.lepertheory.net.
                         MX      10 smtp.lepertheory.net.
$ORIGIN 10.IN-ADDR.ARPA.
$ORIGIN 0.0.10.IN-ADDR.ARPA.
1                       PTR     lepertheory.net.
2                       PTR     albania.lepertheory.net.
3                       PTR     prometheus.lepertheory.net.
$ORIGIN 10.IN-ADDR.ARPA.
$TTL 21600      ; 6 hours
254.0.1                 PTR     dickheadii.lepertheory.net.
254.0.2                 PTR     lithium.lepertheory.net.

As you can see, the PTR record gets set up just fine, but the A record 
is nowhere to be found.  I checked to see if it somehow ended up in an 
external (ext.) zone file, or in a lowroad.dhs.org zone file, but it 
wasn't there.

If you've managed to keep reading this far and have any idea what is 
going on here, please let me know, any tips at all would be appreciated. 
  I've checked everything I can think of short of ... ugh, sorry for 
posting this while I can still think of a place to look, but it's late 
and I've spent all this time writing this post, if the problem sticks 
out for you please let me know... I'll be doing a tcpdump of the DHCP 
conversation (that's what I just thought of and I don't know why I 
didn't think to do it earlier, prolly because it's almost 7:00 AM and 
I'm still up) when I sit down and work on this tomorrow (today), maybe 
that will shed some more light.  If you need any more info let me know.

Thank you.

- Dave


More information about the bind-users mailing list