[Samba] WinXP SP2 machines disappear from the workgroup controlled by Samba

Modestas Vainius geromanas at mailas.com
Fri Oct 8 19:49:42 GMT 2004


I have a problem which I couldn't solve myself thus decided to ask here. My 
setup is rather basic. There are over 20 PCs in the network, most of them 
running WinXP Home SP2 and WinXP Pro SP2, a few Windows 98 SE and the Linux 
(Debian) server running samba 3.0.7(-1). They all are in the same subnet. 
Windows clients and samba are configured to participate in the same 
workgroup. WINS is disabled. I want samba host to be a local master for the 
workgroup, thus I set the following options in the smb.conf:

local master = yes
preffered master = yes
os level = 65

Everything works as expected for approx. 30 mins since samba was started: 
samba wins browser elections and becomes a local master for the workgroup. 
All PCs are visible (either in "My Network Places" or smbclient -L) and 
accessible. However, WinXP machines just disappear from the list of known 
servers after ~30 mins (they are still accessible directly 
via //netbiosname/, but they are missing from "smbclient -L localmaster" or 
"My Network Places"). Win98SE clients and samba server stay in the list all 
the time though.

The situation turns completely different way if I let WinXP to win the 
elections. Then none of hosts disappear including WinXP PCs. However, I want 
the linux box to be local master, but not WinXP.

With the help of ethereal and after looking up in the samba source I 
discovered that samba maintains the server list relying on BROWSER Host 
Announcements from other network hosts. However, WinXP doesn't send them on 
regular basis. WinXP sends one on boot and one on shutdown. Irregularly 
several announcements slip through approx. two times a day, but, obviously, 
that's not enough, so samba just expires not-responding hosts after ~30 mins. 
MS docs claim that Windows XP PCs should announce about themselves every 12 
minutes, but that's not true in my case for some reason. BTW, win98SEs send 
host announcements every 4 minutes, so they don't disappear.

When Windows XP is operating as the local master, other WinXP hosts don't send 
announcements either. However, it seems WinXP uses another way to check which 
hosts are still alive...

How could I solve this issue? I imagine, a solution would be to enable WINS 
server in smb.conf and all clients or to setup a domain (but XP Homes can't 
join it). Maybe I miss an option in smb.conf? or do I need to change some 
deeply hidden registry setting in WinXP?

P.S. It doesn't matter if Windows XP SP2 firewall is enabled (with appropriate 
exceptions of cource) or disabled. I haven't tested with SP1 though, thus 
this issue may be related to WinXP SP2 Home/Pro Editions only.

More information about the samba mailing list