Bug 30132 - nmbd on Samba4 DC does not claim master browser role
nmbd on Samba4 DC does not claim master browser role
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: Samba4
UCS 3.1
Other Linux
: P5 normal (vote)
: UCS 3.1-1
Assigned To: Stefan Gohmann
Arvid Requate
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-01-23 16:18 CET by Janis Meybohm
Modified: 2016-02-02 17:41 CET (History)
2 users (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments
log level 10 excerpt, standard config, firewall off (UCS 3.1-0) (14.73 KB, text/plain)
2013-01-24 13:24 CET, Arvid Requate
Details
/var/lock/samba/namelist.debug (7.22 KB, text/plain)
2013-01-24 22:29 CET, Arvid Requate
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Janis Meybohm univentionstaff 2013-01-23 16:18:54 CET
Every 15 minutes the nmbd writes to it's logfile:
---
[2013/01/23 11:42:14.568039,  0, pid=1430] ../source3/nmbd/nmbd_browsesync.c:354(find_domain_master_name_query_fail)
  find_domain_master_name_query_fail:
  Unable to find the Domain Master Browser name S4LISH<1b> for the workgroup S4LISH.
  Unable to sync browse lists in this workgroup.
---

Local master browser (<1d>) and domain master browser (<1b>) suffix is not registered for the domain.



With "domain master = yes" <1b> and <1d> are registered in wins but samba does not respond to "node status requests" for "DOMAIN#1d" (thus it does for "DOMAIN#1b"):

# nmblookup 'S4LISH#1d' -B $(ucr get interfaces/eth0/broadcast) -S
querying S4LISH on 10.200.6.255
10.200.6.100 S4LISH<1d>
Looking up status of 10.200.6.100
No reply from 10.200.6.100

# nmblookup 'S4LISH#1b' -B $(ucr get interfaces/eth0/broadcast) -S
querying S4LISH on 10.200.6.255
10.200.6.100 S4LISH<1b>
Looking up status of 10.200.6.100
        MASTER          <00> -         M <ACTIVE> 
        MASTER          <03> -         M <ACTIVE> 
        MASTER          <20> -         M <ACTIVE> 
        S4LISH          <1b> -         M <ACTIVE> 
        S4LISH          <1c> - <GROUP> M <ACTIVE> 
        S4LISH          <00> - <GROUP> M <ACTIVE> 
        __SAMBA__       <00> - <GROUP> M <ACTIVE> <PERMANENT> 
        __SAMBA__       <20> - <GROUP> M <ACTIVE> <PERMANENT> 

        MAC Address = 00-00-00-00-00-00



The error message in log.nmbd changes to:
---
[2013/01/23 15:41:43,  0] ../source3/nmbd/nmbd_browsesync.c:251(domain_master_node_status_fail)
  domain_master_node_status_fail:
  Doing a node status request to the domain master browser
  for workgroup S4LISH at IP 10.200.6.100 failed.
  Cannot sync browser lists.
---
Comment 1 Janis Meybohm univentionstaff 2013-01-23 16:22:42 CET
For S3 Domains nmblookup -S for "DOMAIN#1b" and "DOMAIN#1d" looks like:

#  nmblookup "KNUT#1d" -B 192.168.0.255 -S
querying KNUT on 192.168.0.255
192.168.0.3 KNUT<1d>
Looking up status of 192.168.0.3
        BILLY           <00> -         H <ACTIVE> 
        BILLY           <03> -         H <ACTIVE> 
        BILLY           <20> -         H <ACTIVE> 
        ..__MSBROWSE__. <01> - <GROUP> H <ACTIVE> 
        KNUT            <1d> -         H <ACTIVE> 
        KNUT            <1b> -         H <ACTIVE> 
        KNUT            <1c> - <GROUP> H <ACTIVE> 
        KNUT            <1e> - <GROUP> H <ACTIVE> 
        KNUT            <00> - <GROUP> H <ACTIVE> 

        MAC Address = 00-00-00-00-00-00
Comment 2 Janis Meybohm univentionstaff 2013-01-23 16:54:53 CET
This gets "better" with the fix from bug29865. Without nbt running in parallel with nmbd samba does no longer register itself as domain master browser in wins (even with "domain master = yes").

The "Unable to find the Domain Master Browser name" do not appear without nbt and "domain master = auto" (default), instead the domain_master_node_status_fail messages are shown (even with "domain master = yes").

---
[2013/01/23 16:50:36,  0] ../source3/nmbd/nmbd_browsesync.c:251(domain_master_node_status_fail)
  domain_master_node_status_fail:
  Doing a node status request to the domain master browser
  for workgroup S4LISH at IP 10.200.6.100 failed.
  Cannot sync browser lists.
---
Comment 3 Arvid Requate univentionstaff 2013-01-24 13:24:38 CET
Created attachment 5004 [details]
log level 10 excerpt, standard config, firewall off (UCS 3.1-0)
Comment 4 Arvid Requate univentionstaff 2013-01-24 22:29:58 CET
Created attachment 5009 [details]
/var/lock/samba/namelist.debug

Retrived by kill -HUP on the main nmbd process. the <1b> record is listed in the REMOTE_BROADCAST_SUBNET but not in the UNICAST_SUBNET, where process_node_status_request is looking for it.

On SIGTERM the nmbd finally writes the following list to log.nmbd:
==================================================
  wins_write_database: Dump of WINS name list.
  S4LISH<00>          TTL = Sun Jan 27 13:06:26 2013          0.0.0.0 e4
  *<00>               TTL = PERMANENT                    10.200.6.100 64
  MEMBER<00>          TTL = Sun Jan 27 12:55:43 2013     10.200.6.101 64
  S4LISH<1c>          TTL = Sun Jan 27 13:06:26 2013     10.200.6.100 e4
  __SAMBA__<20>       TTL = PERMANENT                    10.200.6.100 64
  *<20>               TTL = PERMANENT                    10.200.6.100 64
  __SAMBA__<00>       TTL = PERMANENT                    10.200.6.100 64
  MASTER<20>          TTL = Sun Jan 27 13:06:26 2013     10.200.6.100 66
  MEMBER<03>          TTL = Sun Jan 27 12:55:43 2013     10.200.6.101 64
  MASTER<03>          TTL = Sun Jan 27 13:06:26 2013     10.200.6.100 66
  S4LISH<1e>          TTL = Sun Jan 27 13:06:26 2013          0.0.0.0 e4
  MEMBER<20>          TTL = Sun Jan 27 12:55:43 2013     10.200.6.101 64
  MASTER<00>          TTL = Sun Jan 27 13:06:26 2013     10.200.6.100 66
  S4LISH<1b>          TTL = Sat Jan 26 14:47:29 2013     10.200.6.100 64
==================================================
Comment 5 Stefan Gohmann univentionstaff 2013-03-08 16:02:51 CET
After setting 'domain master = Yes' it worked for me like expected. I've added a new UCR variable samba/domain/master to configure it. On a DC Master with S4 it will be set during the installation.

The update enables it by default on a dc master with S4.

root@master501:~# nmblookup 'DEADLOCK50#1d' -B $(ucr get interfaces/eth0/broadcast) -S
querying DEADLOCK50 on 10.201.255.255
10.201.50.1 DEADLOCK50<1d>
Looking up status of 10.201.50.1
        MASTER501       <00> -         H <ACTIVE> 
        MASTER501       <03> -         H <ACTIVE> 
        MASTER501       <20> -         H <ACTIVE> 
        ..__MSBROWSE__. <01> - <GROUP> H <ACTIVE> 
        DEADLOCK50      <00> - <GROUP> H <ACTIVE> 
        DEADLOCK50      <1b> -         H <ACTIVE> 
        DEADLOCK50      <1c> - <GROUP> H <ACTIVE> 
        DEADLOCK50      <1d> -         H <ACTIVE> 
        DEADLOCK50      <1e> - <GROUP> H <ACTIVE> 

        MAC Address = 00-00-00-00-00-00

root@master501:~# nmblookup 'DEADLOCK50#1b' -B $(ucr get interfaces/eth0/broadcast) -S
querying DEADLOCK50 on 10.201.255.255
10.201.50.1 DEADLOCK50<1b>
Looking up status of 10.201.50.1
        MASTER501       <00> -         H <ACTIVE> 
        MASTER501       <03> -         H <ACTIVE> 
        MASTER501       <20> -         H <ACTIVE> 
        ..__MSBROWSE__. <01> - <GROUP> H <ACTIVE> 
        DEADLOCK50      <00> - <GROUP> H <ACTIVE> 
        DEADLOCK50      <1b> -         H <ACTIVE> 
        DEADLOCK50      <1c> - <GROUP> H <ACTIVE> 
        DEADLOCK50      <1d> -         H <ACTIVE> 
        DEADLOCK50      <1e> - <GROUP> H <ACTIVE> 

        MAC Address = 00-00-00-00-00-00

root@master501:~# ucr search --brief wins
windows/wins-server: <empty>
windows/wins-support: yes
root@master501:~# nmblookup 'DEADLOCK50#1b' -U master501 -S
querying DEADLOCK50 on 10.201.50.1
10.201.50.1 DEADLOCK50<1b>
Looking up status of 10.201.50.1
        MASTER501       <00> -         H <ACTIVE> 
        MASTER501       <03> -         H <ACTIVE> 
        MASTER501       <20> -         H <ACTIVE> 
        ..__MSBROWSE__. <01> - <GROUP> H <ACTIVE> 
        DEADLOCK50      <00> - <GROUP> H <ACTIVE> 
        DEADLOCK50      <1b> -         H <ACTIVE> 
        DEADLOCK50      <1c> - <GROUP> H <ACTIVE> 
        DEADLOCK50      <1d> -         H <ACTIVE> 
        DEADLOCK50      <1e> - <GROUP> H <ACTIVE> 

        MAC Address = 00-00-00-00-00-00

root@master501:~# nmblookup 'DEADLOCK50#1d' -U master501 -S
querying DEADLOCK50 on 10.201.50.1
10.201.50.1 DEADLOCK50<1d>
Looking up status of 10.201.50.1
        MASTER501       <00> -         H <ACTIVE> 
        MASTER501       <03> -         H <ACTIVE> 
        MASTER501       <20> -         H <ACTIVE> 
        ..__MSBROWSE__. <01> - <GROUP> H <ACTIVE> 
        DEADLOCK50      <00> - <GROUP> H <ACTIVE> 
        DEADLOCK50      <1b> -         H <ACTIVE> 
        DEADLOCK50      <1c> - <GROUP> H <ACTIVE> 
        DEADLOCK50      <1d> -         H <ACTIVE> 
        DEADLOCK50      <1e> - <GROUP> H <ACTIVE> 

        MAC Address = 00-00-00-00-00-00

Tests:

nmblookup "$(ucr get windows/domain)#1d" -B $(ucr get interfaces/eth0/broadcast) -S
nmblookup "$(ucr get windows/domain)#1b" -B $(ucr get interfaces/eth0/broadcast) -S
nmblookup "$(ucr get windows/domain)#1d" -U $(ucr get hostname) -S
nmblookup "$(ucr get windows/domain)#1b" -U $(ucr get hostname) -S

This works since Samba 4.0.3, it does not work with 4.0.0rc6+.
Comment 6 Arvid Requate univentionstaff 2013-03-18 17:24:40 CET
Things definitely look better now on the Master and they look good on a joined Memberserver too. On a Samba4 DC Slave there still seems to be something not quite optimal, see Bug 30815.

Changelog OK.
Comment 7 Stefan Gohmann univentionstaff 2013-03-25 19:56:54 CET
UCS 3.1-1 has been released: 
 http://download.univention.de/doc/release-notes-3.1-1_en.pdf
 http://download.univention.de/doc/release-notes-3.1-1.pdf

If this error occurs again, please use "Clone This Bug".