Rsh is not working – could it be because I am using NAT?
Yes. When you rsh (or rexec) to a host system, the rsh/rexec command then listens for a connection to come back from the host system to the client for standard error output. So the host system must be able to connect back to the client system using the client’s IP address. If the host cannot connect to your system by its IP address, rsh/rexec will not work. You can try using the -c option of our rsh or rexec in our Winsock RCP/RSH/REXEC for Win32 package. This combines stderr onto stdout and avoids the secondary connection, so the host does not need to connect back to the client.