Monday, February 1, 2010

SAMBA: nmbd/nmbd_elections.c

SkyHi @ Monday, February 01, 2010
--------------------- samba Begin ------------------------


**Unmatched Entries**
nmbd/nmbd_elections.c:send_election_dgram(41) send_election_dgram: Sending election packet for workgroup HIP on subnet 192.60.218.96 : 284 Time(s)

Scenario:
WINS server looses election irregular in a heterogeneous network
Dear Samba-Users,

I have to administer a Samba WINS Server in a heterogenous network. It's a
student hostel with about 200 mixed (Windows, Linux, Mac OS X) computers. We
have a DHCP, which delivers the WINS-Server address to the clients. I don't
have access to the clients.

The problem is, that the WINS-Server (Samba 3.0.27) looses the
Master-Browser election irregulary. I can't configure Samba a way, that
it keeps the MSB.

Example from the log.nmbd:

===
[2008/06/09 22:15:45, 0]
nmbd/nmbd_incomingdgrams.c:process_local_master_announce(309)
process_local_master_announce: Server GUERO at IP 10.0.80.221 is announcing
itself as a local master browser for workgroup WODANLAN and we think we are
master. Forcing election.
[2008/06/09 22:15:45, 2]
nmbd/nmbd_become_lmb.c:unbecome_local_master_browser(280)
unbecome_local_master_browser: unbecoming local master for workgroup
WODANLAN on subnet 10.0.80.5
[2008/06/09 22:15:45, 0]
nmbd/nmbd_become_lmb.c:unbecome_local_master_success(149)
*****

Samba name server SHODAN has stopped being a local master browser for
workgroup WODANLAN on subnet 10.0.80.5

*****
===

SHODAN is the name of the server. Today it's GUERO, who is winning the
election. Yesterday, it was another computer.

When I restart the smbd/nmdb it wins the election and the network browsing
operates normally. Is there any way to be sure, that SHODAN keeps the MSB?

At the moment I have a cron, which restarts the smb-server every 30 minutes,
so that it wins the election and becomes the MSB, but that's really a nasty
thing.

This is my configuration:

smb.conf:
===
[global]
workgroup = WODANLAN
netbios name = Shodan
server string = Wodanlan Master Browser
hosts allow = 10.0.80.
log level = 2

domain master = yes
local master = yes
preferred master = yes
enhanced browsing = Yes
os level = 255

wins support = yes
dns proxy = no
===

Can you help me?

Thank you very much
Timo Meinen

============================================================================================
============================================================================================

Have you tried setting your "announce version" instead of just
manipulating OS level?

   announce version = 4.9  is the default, which is less than XP for example.

Perhaps an "announce version = 5.3" would solve your problem, I dunno.

--Charlie

============================================================================================
============================================================================================

Dear Charlie,

thank you for the tip of setting "announce version" to keep Master Browser.
But it just keeps Master Browser for 6 hours. This is the nmb-log:

===

[2008/06/19 23:51:00, 2] nmbd/nmbd_elections.c:run_elections(204)
  run_elections: >>> Won election for workgroup WODANLAN on subnet 10.0.80.5<<<
[2008/06/19 23:51:00, 2]
nmbd/nmbd_become_lmb.c:become_local_master_browser(525)
  become_local_master_browser: Awaiting potential browser state. Current
state is 4
[2008/06/19 23:51:09, 0]
nmbd/nmbd_incomingdgrams.c:process_local_master_announce(309)
  process_local_master_announce: Server ERSTER at IP 10.0.80.219 is
announcing itself as a local master browser for workgroup WODANLAN and we
think we are master. Forcing election.
[2008/06/19 23:51:09, 2]
nmbd/nmbd_become_lmb.c:unbecome_local_master_browser(280)
  unbecome_local_master_browser: unbecoming local master for workgroup
WODANLAN on subnet 10.0.80.5
[2008/06/19 23:51:09, 0]
nmbd/nmbd_become_lmb.c:unbecome_local_master_success(149)
  *****

  Samba name server SHODAN has stopped being a local master browser for
workgroup WODANLAN on subnet 10.0.80.5

  *****
[2008/06/19 23:51:11, 2] nmbd/nmbd_elections.c:send_election_dgram(41)
  send_election_dgram: Sending election packet for workgroup WODANLAN on
subnet 10.0.80.5

===

Do you have any other ideas? I don't understand why the election is won when
the server is restarted, but why it is lost, when it keeps a few hours
online.

Best regards,

Timo


============================================================================================
============================================================================================


Same issue.

I put the following in cron:

#!/bin/sh
PATH=/usr/bin:/usr/sbin:/bin:/sbin
nmblookup -M -- - 2>&1 | grep  "IP address of my samba server"  >/dev/null 2>&1
if [ $? != 0 ]; then
        nmblookup -M -- -|mail -s "Force master browser election" "my email"
        /usr/bin/smbcontrol nmbd force-election
fi

The smbcontrol command has the same effect as restarting samba
(election is won).

Then I tell the person using the PC I see in the email to turn off the
"browser" service in his/her XP to avoid the same issue in the future.

============================================================================================
============================================================================================

--
giulioo

Dear Giulio,

thank you for the script. I will use it to "solve" my problem. I
searched for a command, which restarts an election.

Although it's not really a good solution, it is much better than my
cron-samba-restart.

Best regards,
Timo



REFERENCE
http://old.nabble.com/WINS-server-looses-election-irregular-in-a-heterogeneous-network-td17773028.html