Re: problem mounting two servers


Subject: Re: problem mounting two servers
From: Thomas Kaiser (Thomas.Kaiser@phg-online.de)
Date: Mon Sep 10 2001 - 19:32:28 EDT


am 10.09.2001 23:44 Uhr schrieb charlie wood:

> The issue has nothing to do with afpd, nor the AFP protocol or the manner in
> which AFP resolves its hostid or name

I think, you got me wrong ;-)

I just wanted to make clear, that your problem has nothing do to with atalkd
itself.

I think the problem is the following:

Due to the fact that both of your servers had obviously the same
ServerSignature, your mac's AppleShare clients thought that there was an
connection attempt to an already mounted server (setting up an FPGetSrvrInfo
request to the chosen afp server will result in an identical ServerSignature
--> the AppleShare client 'recognizes' that this server is already mounted
by the mac)

You said before (using 'fuzzy terminology' ;-):

> Apparently, atalkd uses the Unix system's hostid output instead of the real
> IP address (obtainable from the /etc/hosts file) to identify the server.

AFAIK atalkd uses none of them. atalkd publishes the server via nbprgstr
with a defined string (_maybe_ derived from the machine's hostname: "nbprgst
-p 4 `hostname`:Workstation". And afpd will use the string that is supplied
in afpd.conf or with the '-n' switch to publish itself as type "AFPServer"
with nbp.

atalkd != hostid or etc/hosts

> In my particular case, because both hosts were essentially "localhost", with
> the loopback address creating identical hexadecimal "hostnames",

Well, that is the funny thing, I don't understand at all.

I tried 'hostid' on different hosts (even on a redhat box with only one line
in /etc/hosts --> "127.0.0.1 localhost"). I got always a hostid
corresponding to the eth0's ip address, regardless which entries were
present in /etc/hosts.

So I wondered how this ServerSignature is being created -- I don't
understand the sources :(

> atalkd assumed that when I was connected to one server, I was connected to
> both.

IMO this has nothing to do with atalkd at all.

When you choose the second server in the chooser, an afp call will be send
out (maybe over ddp, maybe over tcp -- in the latter case you won't even
need atalkd running). This FPGetSrvrInfo request will then be answered by
the server. If the afp server supports afp 2.2 or never it will supply its
ServerSignature. Now the AppleShare client decides that this server is
already mounted (avoiding the logon dialog). It's the client's choice not
the servers (especially not atalkd's ;-)

Hope this was more precise than my first attempt :-)

Best regards,

Thomas



This archive was generated by hypermail 2b28 : Sun Oct 14 2001 - 03:04:52 EDT