[comp.os.vms] DECnet <-> TCP/IP

klb@philabs.UUCP (06/15/87)

I have the following setup:

+---------+        +--------+       +---------+
| Various |        |  VMS   |       | Various |
| DECnet  |--------| DECnet |-------| TCP/IP  |
| Systems |        | TCP/IP |       | Systems |
+---------+        +--------+       +---------+
                    (Node X)

Only the machine in the middle runs both TCP/IP and DECnet.  If I am running on
a TCP/IP machine, I can use FTP to transfer files to or from any DECnet machine
as follows:

ftp> open X
     get  <DECnet node>::<file>  <file>
     put  <file>  <DECnet node>::<file>

Question:
If I am running on a DECnet machine, is there any way I can transfer files to or
from any TCP/IP machine without having to log in to node X to run FTP?

carl@CITHEX.CALTECH.EDU.UUCP (06/19/87)

 > If I am running on a DECnet machine, is there any way I can transfer  files
 > to  or  from  any  TCP/IP machine without having to log in to node X to run
 > FTP?

Well, there's always TFTP (if you can persuade  the  managers  of  the  TCP/IP
machines  to enable it; unlikely).  Now, when you copy the files using DECnet,
what actually happens is you start a  process  running  under  a  prespecified
account  (unless you're using an access control string), the accounting on the
remote system (if it is running) duly note that you've effectively  logged  in
on the machine under the default account), and the process you've started does
the work on that end for you.  Now, that's very nearly the same  as:   Running
FTP  from  your  system, connecting to the remote system, logging in under the
ANONYMOUS FTP account (where instead  of  giving  a  password,  you  give  the
machine  your  name and your machine's), and then using FTP to move the files.
Get the managers of the TCP/IP machines to set up ANONYMOUS FTP for you.

carl@CITHEX.CALTECH.EDU.UUCP (06/19/87)

 >>I have the following setup:
 >>
 >>+---------+        +--------+       +---------+
 >>| Various |        |  VMS   |       | Various |
 >>| DECnet  |--------| DECnet |-------| TCP/IP  |
 >>| Systems |        | TCP/IP |       | Systems |
 >>+---------+        +--------+       +---------+
 >>                    (Node X)
 >>
 >>Only the machine in the middle runs  both  TCP/IP  and  DECnet.   If  I  am
 >>running on a TCP/IP machine, I can use FTP to transfer files to or from any
 >>DECnet machine as follows:
 >>
 >>ftp> open X
 >>     get <DECnet node>::<file> <file>
 >>     put <file> <DECnet node>::<file>
 >>
 >>Question:
 >>If I am running on a DECnet machine, is there any way I can transfer  files
 >>to  or  from  any  TCP/IP machine without having to log in to node X to run
 >>FTP?

 > The easiest way would be by setting up some sort of batch process on  X  to
 > handle forwarding of files.  This would allow `putting' a file but it won't
 > allow a `get'.          
 >
 > As I have the same problem, I'm open to suggestions.

First time I tried to answere this one, I was confused about what  is  wanted.
Sorry  about  that.   First,  if  there  IS  a  way  of doing this, then it is
dependent on whose FTP you are using.  The reason I say this is that  the  FTP
that comes with MULTINET (4.2bsd kernel; I haven't had the opportunity to take
down the system and install the 4.3 version yet) works only  with  a  terminal
(if  I'm  wrong  about  this,  somebody  please  let  me  know  how  to run it
non-interactively); if it is run from anything but a terminal, it starts doing
massive  amounts  of  I/O  (I  don't  know  where  to/from)  and  ignoring the
procedure, mailbox, network mailbox, or what-have-you that it's supposed to be
getting  its  commands from.  However, if there exists a version of FTP on the
market which doesn't have this problem, then you  can  use  a  task  on  X  to
accomplish  what  you want.  One way to implement this would be something like
the following commands issued on one of the DECnet machines:

	$	create X::"0=SYS$NET:"
	set command MULTINET:USER
	FTP hostname
	LOGIN whoever
	PASS  whatever
	get <file> <DECnet node>::<file>
	put <DECnet node>::<file> <file>
	quit
	^Z

The first command starts a network process running on X that  effectively  has
your  terminal  as  its  input stream (the network mailboxes are transparent).
Then you set up and execute the FTP command, then send the  command  you  want
FTP to use, exit from FTP, and close send an end-of-file to the job on X, thus
breaking the DECnet connection.  You may have to use access control strings to
make the job run on an account that has access to FTP and to place the file in
the desired directory on the DECnet machine.

Or you could have the system manager on X create a network object  on  X  that
already knows how to do the copying, given that you send it the necessary host
name, username, password, and file specs.

Either technique would be easy to implement, given that you  can  get  FTP  to
listen to a non-terminal device.