(continued) Can I browse the network through PPP?

Eloy A. Paris eparis at ven.ra.rockwell.com
Mon Jul 28 22:10:34 GMT 1997


Hi,

first of all, my apologies for the very technical and long nature of
this message...

I still do not give up with the problem I am having about not being
able to browse the Network Neighborhood sometimes. My original post to the
list was:

>I am using Windows 95 dial-up networking to connect to a Samba box (the
>Samba box is a PPP server). I am having problems to browse the Network
>Neighborhood in Windows 95 and I do not why. The problem is random:
>sometimes I see computers and sometimes I don't.
>
>I have read the BROWSING.txt document and tried several smb.conf settings
>but nothing seems to help.
>
>When I connect using Ethernet I can see everything in Network Neighborhood,
>the problem is only when I connect through PPP and only with browsing
>(when connected through PPP I can use Find Computer and it'll find any
>computer I try.)
>
>Any hints?

Well, I have been using some debugging tools like tcpdump-smb and the
log files from the Samba programs and now have a guess of what is
happening. It is just that I don't know how exactly fix this...

I think the problem is that nmbd is waiting very little for the 
computers in the network to respond to the broadcast so it gives back
to the PPP client an invalid response. I base my conclusion in the log
files I get for both a succesful connection (client can browse) and an
unsuccesful connection, and from the output of tcp-dump when sniffing
the ppp interface:

Just after the PPP client connects and after the PPP link is up and running
(everything configured including WINS and DNS servers as sent by pppd to
the client) the client sent this to the server:

16:39:35.581330 slip2.ven.ra.rockwell.com.netbios-ns > zeus.ven.ra.rockwell.com.
netbios-ns:
>>> NBT UDP PACKET(137): REGISTRATION; REQUEST; UNICAST
TrnID=0x44
OpCode=5
NmFlags=0x10
Rcode=0
QueryCount=1
AnswerCount=0
AuthorityCount=0
AddressRecCount=1
QuestionRecords:
Name=ADMON           NameType=0x03 (Client?)
QuestionType=
ResourceRecords:
Name=ResType=0x20
ResClass=0x1
TTL=-1072955360
ResourceLength=1
ResourceData=
[000] 00                                                .

Then, the server responds with (when the connection is succesful):

16:39:35.581330 zeus.ven.ra.rockwell.com.netbios-ns > slip2.ven.ra.rockwell.com.
netbios-ns:
>>> NBT UDP PACKET(137): REGISTRATION; POSITIVE; RESPONSE; UNICAST
TrnID=0x44
OpCode=5
NmFlags=0x58
Rcode=0
QueryCount=0
AnswerCount=1
AuthorityCount=0
AddressRecCount=0

ResourceRecords:
Name=ADMON           NameType=0x03 (Client?)
ResType=0x20
ResClass=0x1
TTL=14400
ResourceLength=6
ResourceData=
AddrType=0x0
Address=130.151.17.163

or with this when the conection is not:

16:08:15.031330 zeus.ven.ra.rockwell.com.netbios-ns > slip1.ven.ra.rockwell.com.
netbios-ns:
>>> NBT UDP PACKET(137): WACK; POSITIVE; RESPONSE; UNICAST
TrnID=0x3C
OpCode=7
NmFlags=0x40
Rcode=0
QueryCount=0
AnswerCount=1
AuthorityCount=0
AddressRecCount=0

ResourceRecords:
Name=ADMON           NameType=0x03 (Client?)
ResType=0xA
ResClass=0x1
TTL=15000
ResourceLength=2
ResourceData=
[000] 00 05                                             ..

As you can see both responses from the server are different and I am 
absulutely positively sure that when browsing works, the server
sends to the PPP client a packet with an OpCode=5.

Now, if I take a look at the nmbd log file (debug level = 3) I get this
when the connection is succesful:

Name registration for name ADMON(3) at 130.151.17.163 - found
ADMON(3) owner: 130.151.17.163
Name registration for name RAV(0) at 130.151.17.163 - found
Name registration for name ADMON(0) at 130.151.17.163 - found
ADMON(0) owner: 130.151.17.163

and I get this when it is not succesful:

Name registration for name ADMON(3) at 130.151.17.163 - found
Name registration for name RAV(0) at 130.151.17.163 - found
Name registration for name ADMON(0) at 130.151.17.163 - found
Removing dead netbios entry for 130.151.17.162 ADMON(3) (num_msgs=0)
Added netbios name ADMON(3) at 130.151.17.163 ttl=14400 nb_flags= 0
WINS server did not respond to name registration!
unknown netbios response (received late or from nmblookup?)
Removing dead netbios entry for 130.151.17.162 ADMON(0) (num_msgs=0)
Added netbios name ADMON(0) at 130.151.17.163 ttl=14400 nb_flags= 0
WINS server did not respond to name registration!
unknown netbios response (received late or from nmblookup?)

---------------------------------------------------------------

Now, it looks like the Samba server is sending the (wrong) answer
to the PPP client too quickly, without waiting for other machines
to respond (look at that "unknown netbios response (received late or 
from nmblookup?)" message).

My question is: is there a way to tell the Samba server to wait longer?
May be modifying the source code... Am I in the right direction
with this?

Any hint/help will be very very appreciated. Thanks.

E.-

-- 

Eloy A. Paris
Information Technology Department
Rockwell Automation de Venezuela
Telephone: +58-2-9432311 Fax: +58-2-9430323


More information about the samba mailing list