unsuccessful update of A record
Simon Hobson
dhcp at thehobsons.co.uk
Mon Apr 3 09:28:04 UTC 2006
Ross Boylan wrote:
>While working on some network problems I rebooted a dhcp client system
>several times. For some reason, one of those times the client got a
>new IP address from the dhcpd server. My forward (A) DNS ended up
>pointing at the old location, and the bind logs show the update to the
>A record failed because there was an existing entry for that name.
>
>The logs also show that before updating the reverse record the old
>entry is deleted.
Can you post the log entries.
>In previous discussion on this list, someone mentioned a proposed
>standard that involved not updating records that already exist (I
>think just the forward ones), so this behavior is consistent with
>that.
That is correct, the standard functionality is that the server will
not replace an active entry
>Why are the forward records left in place while the reverse records
>are deleted before update? Is this part of the asymmetry noted a few
>weeks ago, in which the DHCP server is deemed more authoritative about
>the IP addresses than the names?
>
>Second, should the client, when shutdown normally, tell the server
>that it is going down, so the dhcp server could make appropriate
>adjustments--including deleting DNS entries?
That is up to the client. Mac OS X clients do that, they explicitly
release their lease before shutting down, most clients don't. There
are pros and cons both ways : releasing the lease virtually
eliminates the problems caused by moving subnets when the dhcp server
is not authoritative; on the other hand, hanging on to it makes the
client more robust (it generally has a working address when it starts
so less problems if the dhcp server dies or there's a temporary
network problem).
> The DNS entries only get
>cleared out for me when the lease expires. The dhcpd.conf man page in
>REFERENCE: EVENTS refers explicitly to a "release event, when the
>client has released the server from its commitment."
If the client releases the lease, then the dhcp server will delete
the dns entries, if not then they will remain until the lease expires.
>Is there a way to get the DNS records deleted when the client goes
>down
Only if the client releases the lease - otherwise, the server has no
way of knowing if the client is really gone or if it's going to pop
back up and carry on using the address (which it is entitled to do
until the lease expires).
> and, failing that, to get old information replaced with new
>information? It would be easier if this could be done once on the
>server, particularly since some of my clients are MS Windows some of
>the time.
Can you come up with a reliable and SAFE methond for deciding what
dns entries it's safe to replace, and which need to stay ?
>My leases are relatively brief, so at least the problems tend to
>self-correct after a few hours.
They can be manually corrected. Use nsupdate to delete the old
records and then get the client to renew it's lease. For completeness
you also need to stop the dhcp server and remove the ddns-update
entries in the old lease record.
Better still, if you knwo that you are modifying the client, manually
release it's lease beforehand (on Windows it's "ifconfig /release").
Simon
More information about the dhcp-users
mailing list