netbios over tcp/ip on samba
Christopher R. Hertel
crh at nts.umn.edu
Mon Jan 14 10:52:03 GMT 2002
Samba implements the NBT layer. Specifically, the NBT packet management
required to perform NetBIOS over TCP. Samba *does not* implement the
NetBIOS API. The NetBIOS API itself is not required for SMB and the point
of Samba is SMB.
There has been talk of writing a NetBIOS API tool but, as it turns out,
very very few people would actually find such a thing useful. It would be
more useful to provide access to the NBT layer via a better, simpler API.
Samba does not (yet) do this.
I say "yet" because it is an area of interest for me. If it can be made
to work without in any way compromising Samba's performance or security
then I may see if I can add it in. That is a very, very big set of "if"s.
As I said, there is really no need for Samba itself to provide access to
the NBT layer. I would need to justify any such change--first to myself
and then to the rest of the team--before adding anything new. This is
reasonable. We need to serve the largest number of users, and breaking
big things to add small things doesn't make sense.
Anyway, as I think of it... I think I see how it might be done. Samba
currently supports File and Print shares. I would need to add a new share
type. This would work for NetBIOS Sessions, anyway. The new share type
would work something like inetd, launching a pre-defined (in smb.conf)
program when a connection request was made and exchanging data via a UNIX
domain socket. That back-end program would get the full packet,
including the NBT header, so that we could multiplex multiple connections
using the NetBIOS name.
Anyway, that's my first-draft design. For more on the workings of
NetBIOS over TCP (NBT) see: http://www.ubiqx.org/cifs/
...just some stuff I'm writing.
> i need is to develop two applications, to communicate to each other
> using API netbios over tcp/ip for linux.
> the client application will be running on windows and the server
> application will be running on linux.
> the scenario is :
> a client program (running on windows) that sends messages (using
> netbios over tcp/ip) to a server application (running on linux redhat
> 7.1 or 7.2).
> i know that the netbios over tcp/ip is implemented, in linux, by
> but i didn't find anything that seems like the netbios functions that
> i used for windows/os2.
> what i need is to know how i do this things in linux :
> - add netbios name
> - send and receive messages
> - remove netbios name
> can you help me ?
> thank's in advance.
> tony ;-)
Christopher R. Hertel -)----- University of Minnesota
crh at nts.umn.edu Networking and Telecommunications Services
Ideals are like stars; you will not succeed in touching them
with your hands...you choose them as your guides, and following
them you will reach your destiny. --Carl Schultz
More information about the samba-technical