Either I misinterpret things, or there is a contradiction here. You want to keep the logical separation (=2 NDS trees?), but don't want users having 2 accounts.
I guess either you merge your trees, and make 2 separate branches in it, or you'll have to live with 2 accounts I'm afraid. If you merge trees you can have something like user1.company1 and user2.company2, and both can log in using their own credentials no matter where they are.
In the login script you can then check what network address they use, and give their mappings according to where they are. This way they have the "local" public-directory, and maybe application directories and group drives and so, while keeping their "own" homedrive on their "own" server, not matter where they are.
If this is what you want, the following document describes it well:
http://support.novell.com/cgi-bin/search/searchtid.cgi?/10062309.htm
(remove any spaces in the URL if they show up)
You can then have something like:
if %network_address=(some address) then begin
map g:=...
else
map g:=...
end
Then you still have the problem of having to change context. Either you create a container ("users" or so), in which you have an alias pointing to all the users, and configure the PC's to use the alias-container (works fine, except that everyone *must* have a really unique login-ID), or you can check this document about contextless login:
http://support.novell.com/cgi-bin/search/searchtid.cgi?/10011480.htm
(remove any spaces in the URL if they show up).
Jim