[CentOS] WINS server (nmbd) puzzle

Sun Sep 4 00:51:45 UTC 2011
Kenneth Porter <shiva at sewingwitch.com>

My client Windows XP boxes are failing to register with my WINS server 
(running nmbd from Samba). I'm puzzled how to figure out what I'm doing 
wrong.

Background: I'm setting up BackupPC to back up my Windows clients using 
rsync. I've installed cwRsync to the clients. BackupPC uses nmblookup to 
find the client's IP address given its Windows NETBIOS name.

I'm distributing the WINS server address via DHCP and see it on the client 
using "ipconfig /all". I can run tcpdump on the server (filtering for this 
client and the NETBIOS port) and see the register/response sequence at UDP 
137:

MULTIHOMED REGISTRATION; REQUEST; UNICAST
REGISTRATION; POSITIVE; RESPONSE; UNICAST
REGISTRATION; REQUEST; UNICAST
REGISTRATION; POSITIVE; RESPONSE; UNICAST

If I signal the nmbd process with SIGHUP to make it dump its table to 
nmbd.log, I don't see client in the list. I do see the server and my 
Windows Active Directory server's records in the list, but no clients.

nmblookup finds the client by broadcast (the client responds with the 
record) but nmblookup -U 127.0.0.1 says there's no record of it. (A query 
for the server's own record finds it, so I know the WINS service is at 
least working to that degree.)

So why is nmbd not remembering client records?