Martin Elliott
2002-Mar-19 06:07 UTC
[Samba] Browsing Problems (Samba 2.2.3a-1 for Debian)
Hi all, I've been having some problems with samba and browsing on a network of about 150 computers (in a residential college at a university). Samba is the PDC for the main domain, STUDENTS. It handles logins from the NT and 2000 workstations in the small computer room we have, along with browsing for the whole STUDENTS domain (which all the students are a part of) and we have a FreeBSD box running squid that authenticates against the STUDENTS domain for web access. There are other domains, some of them from people having misconfigured computers on the network (like a student having left WORKGROUP in their computer rather than entering STUDENTS). The other domains have 1 or 2 computers on them. Samba works fine for domain logons from the computer room and for remote printing. The promlem is that once samba starts, it builds up the browse list without any problems, but after a while (5-15 mins), the browse list just goes away. On a closer inspection of the logs (at log level 3), it looks as if samba is just expiring everything in the browse list. Here is an extract from the logs. In it you can see that 22:07:31 (the 4th message), a browse list synchronisation takes place. After that, the other workgroups are expired, and you can see the first few of a large number of timed out server removals. At the end, the browse list is written to /var/samba/. Sometimes, not all the servers are expired; there might be one or two left, which might stay around for a while, then disappear, or be replaced by others. 2002/03/19 22:07:31, 3] nmbd/nmbd_incomingrequests.c:process_name_query_request(480) process_name_query_request: Name query from 203.28.249.88 on subnet 203.28.248.7 for name DEIMOS<20> [2002/03/19 22:07:31, 3] nmbd/nmbd_sendannounce.c:send_local_master_announcement(175) send_local_master_announcement: type c9b0b for name STUPDC on subnet 203.28.248.7 for workgroup STUDENTS [2002/03/19 22:07:31, 3] nmbd/nmbd_sendannounce.c:send_workgroup_announcement(194) send_workgroup_announcement: on subnet 203.28.248.7 for workgroup STUDENTS [2002/03/19 22:07:31, 2] nmbd/nmbd_browsesync.c:announce_local_master_browser_to_domain_master_browser(119) announce_local_master_browser_to_domain_master_browser: We are both a domain and a local master browser for workgroup STUDENTS. Do not announce to ourselves. [2002/03/19 22:07:31, 2] nmbd/nmbd_browsesync.c:sync_with_dmb(158) sync_with_dmb: Initiating sync with domain master browser STUPDC<20> at IP 203.28.248.7 for workgroup STUDENTS [2002/03/19 22:07:31, 3] nmbd/nmbd_workgroupdb.c:expire_workgroups_and_servers(343) expire_workgroups_and_servers: Removing timed out workgroup WORKGROUP [2002/03/19 22:07:31, 3] nmbd/nmbd_workgroupdb.c:remove_workgroup_from_subnet(126) remove_workgroup: Removing workgroup WORKGROUP [2002/03/19 22:07:31, 3] nmbd/nmbd_workgroupdb.c:expire_workgroups_and_servers(343) expire_workgroups_and_servers: Removing timed out workgroup STUDENT [2002/03/19 22:07:31, 3] nmbd/nmbd_workgroupdb.c:remove_workgroup_from_subnet(126) remove_workgroup: Removing workgroup STUDENT [2002/03/19 22:07:31, 3] nmbd/nmbd_workgroupdb.c:expire_workgroups_and_servers(343) expire_workgroups_and_servers: Removing timed out workgroup HOME [2002/03/19 22:07:31, 3] nmbd/nmbd_workgroupdb.c:remove_workgroup_from_subnet(126) remove_workgroup: Removing workgroup HOME [2002/03/19 22:07:31, 3] nmbd/nmbd_serverlistdb.c:expire_servers(212) expire_old_servers: Removing timed out server 4030CDT [2002/03/19 22:07:31, 3] nmbd/nmbd_serverlistdb.c:expire_servers(212) expire_old_servers: Removing timed out server HAIRYDATE [2002/03/19 22:07:31, 3] nmbd/nmbd_serverlistdb.c:expire_servers(212) expire_old_servers: Removing timed out server CR03 Once all the servers have been removed, the list is not rebuilt. The PDC, stupdc, is always visible on the network. Occasionally, a few other computers will appear, and then disappear again. If samba is restarted, the list is properly rebuilt, but again, after 5-15 mins, is will be lost. The strange thing is, yesterday, it started working fine. The list was correctly built, the browse list sync would occur (between domain and local master browsers, like at 22:07:31 above), and no servers or workgroups would be expired (unlike above, where everything was expired). However, today, the problem restarted. As you can see in the few lines below, after everything is expired, samba is still receiving host announces from the computers on the network, but not adding them to the browse list (nor does it write the browse list into /var/samba once it stops working). It will also expire the servers after the first big expiry without first syncing the browse lists (the first time samba expires them all, like in the case above, a browse sync occurs - if samba is restarted, the expiries don't happen until after the first browse sync - which I guess is why there is the 5-15 min lapse). Also, nmblookup resolves STUDENTS#1d to the IP of the PDC. [2002/03/20 00:00:43, 3] nmbd/nmbd_incomingdgrams.c:process_host_announce(116) process_host_announce: from KWONG<00> IP 203.28.248.76 to STUDENTS<1d> for server KWONG. [2002/03/20 00:00:43, 3] nmbd/nmbd_serverlistdb.c:create_server_on_workgroup(171) create_server_on_workgroup: Created server entry KWONG of type 40011003 (Jason Kwong) on workgroup STUDENTS. [2002/03/20 00:00:45, 3] nmbd/nmbd_incomingdgrams.c:process_host_announce(116) process_host_announce: from 4030CDT<00> IP 203.28.248.58 to STUDENTS<1d> for server 4030CDT. What I've thought the problem could be is possibly another computer on the network interfering with the browsing? We have an NT domain controller on the domain BACKUP. We don't know exactly what students have brought onto the network (mostly win 95/98, some 2000 and XP, a couple of Macs (OS9/X) and one or two linux boxes), so I guess it is possible that there could be something out there causing problems - but I can't see anything in the logs indicating it. If anyone has any ideas on this, I would be very grateful to hear them, because I'm just coming up blank trying to work this out. If you want to contact me directly, you can get me at "m elliott3 @ ugrad unimelb edu au" (replace the spaces with dots, except around the at sign). Thanks for getting this far through the mail, Martin