[Samba] Strange problem with WINS address resolution

Peter Keitler peter.keitler at baltech.de
Wed May 5 12:08:06 GMT 2004


Hi,

I've got a strange problem with address resolution in a mixed Network 
with Samba on Linux as Server and Win2k / XP clients.

At first my setup:
- SuSE Linux 8.1
- Samba Version 2.2.5-SuSE on SuSE 8.1 (smd.conf attached)
- nmbd is configured to act as a WINS server.
- DHCP is installed (dhcpd.conf attached)
- No DNS is installed

Everything worked fine until a temporary Server-Down-Time, where another 
Win2k PC took over the DHCP job. Now, one XP PC, which acts as a 
Compiler-Server, in our network is no longer reachable via the Network 
Environment in the Windows Explorer. However, it is still visible as 
"Compilerserver".
During switching back to the Linux server, the DHCP on the windows 
machine was still active for some time but is now definitely switched of.

On the Linux server, which now runs again, address resolution seems to 
be somehow strange. Doing a normal WINS lookup does the following:

PAGANINI:/var/log/samba # nmblookup -U 192.168.115.253 -R compilerserver
querying compilerserver on 192.168.115.253
192.168.115.52 compilerserver<00>

A lookup by broadcast however does the following:

PAGANINI:/var/log/samba # nmblookup -B 192.168.115.255 -R compilerserver
querying compilerserver on 192.168.115.255
192.168.145.1 compilerserver<00>
192.168.6.1 compilerserver<00>
192.168.115.70 compilerserver<00>

The last line shows the correct IP address of "compilerserver" which I 
can connect from my local workstation (Win2k) via the IP. Using the 
NetBIOS name "compilerserver" fails however.

The only related information about this topic that I could find in the 
Internet during several ours of search is, that the file 
/var/lib/samba/wins.dat is rewritten regularly or at shutdown of nmbd. 
Deleting the file (and maybe also browse.dat) may solve the problem.

However, even after I had deleted both files, they reoccured again, 
still containing the same incorrect address shown above (192.168.115.52).

...
"COMPILERSERVER#00" 1083900657 192.168.115.52 64R
"COMPILERSERVER#20" 1083900666 192.168.115.52 64R
...

A reboot of "compilerserver" also does not solve the problem.

Where else is this information kept by nmbd?
How can I force a rebuild of the database?
What do the other two addresses (192.168.6.1 and 192.168.145.1) mean in 
the nmblookup call above?


smb.conf
--------

...
# Global parameters
[global]
         workgroup = ENTWICKLUNG
         server string = Samba 2.2.5 - Linux Fileserver
         encrypt passwords = Yes
         log level = 2
         announce version = 5.0
         socket options = SO_KEEPALIVE IPTOS_LOWDELAY TCP_NODELAY
         printcap name = CUPS
         character set = ISO8859-15
         os level = 255
         preferred master = True
         enhanced browsing = No
         wins support = Yes
         create mask = 0777
         force security mode = 0440
         directory mask = 0777
         force directory mode = 0550
         printing = cups
         veto files = /*.eml/*.nws/riched20.dll/*.{*}/
         map archive = No
         dos filemode = Yes
         dos filetimes = Yes
         dos filetime resolution = Yes
...


dhcpd.conf
----------

#Default time of validity of assigned IP address in the case that not 
requested differently by the client
default-lease-time              86400;

#Maximum time an assigned IP address is valid (higher requests will be 
rejected)
max-lease-time                  604800;

#Don't assign hostnames
get-lease-hostnames             false;

option subnet-mask              255.255.255.0;
option domain-name              "baltech.de";

#Maximum IP packet size
option interface-mtu            1500;

ddns-update-style               ad-hoc;


subnet 192.168.115.0 netmask 255.255.255.0 {
#No router necessary (all internet traffic managed by KEN proxy server)
#       option routers 192.168.115.1;

#DNS not necessary (all internet traffic managed by KEN proxy server)
#       option domain-name-servers 192.168.114.252,192.168.114.253;
         option subnet-mask 255.255.255.0;

#Resolve NetBIOS names (necessary for Samba)
         option netbios-name-servers 192.168.115.253;

# Force Windows clients to use NetBIOS name server (NBNS) instead of 
broadcasting all the time
# Description: This parameter specifies the mode of NetBIOS name 
resolution used by NetBIOS over TCP/IP.
# 1 = b-node (broadcasts)
# 2 = p-node (point-to-point name queries to a WINS server)
# 4 = m-node (broadcast then query name server)
# 8 = h-node (query name server, then broadcast). If DNS is enabled 
(which also enabled LMHOSTS in Windows
95), name resolution will also follow the mode defined by this 
parameter. This value can also be configured
  using DHCP.
         option netbios-node-type 8;

#Assign address range for dynamic assignment of IP addresses via DHCP
         range 192.168.115.40 192.168.115.80;
}


Any help is welcome
Greetings

-- 
Mit freundlichen Grüßen,
Best Regards,

Peter Keitler
BALTECH AG
Lilienthalstrasse 27
85399 Hallbergmoos
Germany
phone: +49 (0)811 99881-0
fax:   +49 (0)811 99881-11
mailto:peter.keitler at baltech.de




More information about the samba mailing list