From owner-freebsd-questions Wed Mar 29 16:40:55 2000 Delivered-To: freebsd-questions@freebsd.org Received: from news-ma.rhein-neckar.de (news-ma.rhein-neckar.de [193.197.90.3]) by hub.freebsd.org (Postfix) with ESMTP id 4C10237B7B0 for ; Wed, 29 Mar 2000 16:40:49 -0800 (PST) (envelope-from naddy@bigeye.rhein-neckar.de) Received: from bigeye.rhein-neckar.de (uucp@localhost) by news-ma.rhein-neckar.de (8.8.8/8.8.8) with bsmtp id CAA19221; Thu, 30 Mar 2000 02:40:40 +0200 (CEST) (envelope-from naddy@bigeye.rhein-neckar.de) Received: (from naddy@localhost) by bigeye.rhein-neckar.de (8.9.3/8.9.3) id CAA66345; Thu, 30 Mar 2000 02:39:11 +0200 (CEST) (envelope-from naddy) Date: Thu, 30 Mar 2000 02:39:10 +0200 From: Christian Weisgerber To: wonko@entropy.tmok.com Cc: freebsd-questions@FreeBSD.ORG Subject: Re: CVS/CVSup Message-ID: <20000330023910.R581@bigeye.rhein-neckar.de> References: <8btv3t$1pq4$1@bigeye.rhein-neckar.de> <200003292325.SAA53279@entropy.tmok.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 1.0.1i In-Reply-To: <200003292325.SAA53279@entropy.tmok.com>; from wonko@users.tmok.com on Wed, Mar 29, 2000 at 06:25:17PM -0500 Sender: owner-freebsd-questions@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Brian Hechinger: >>> anyway, that's all background info, what i need to know is, can i PUSH from >>> A to B instead of trying to PULL? i can connect from A -> B but i cannot >>> connect from B -> A to do a pull. > > there is a firewall between the two networks. the A network has unrestricted > access to all machine on the B network, however the B network is restricted to > the point where it can't originate connections, however it can establish > connections that are the response to connections originating from the A network. I think I see. Your CVSup server and client need to support multiplexed mode. I'm not sure when this was introduced, but it can't hurt to upgrade to the current version 16.1. Then you can use: hostA$ ssh -R 4711:localhost:5999 hostB cvsup -h localhost -p 4711 supfile (4711 is just a random, otherwise unused port number.) If the above isn't quite obvious, here's a breakdown: (1) "ssh ... hostB ..." Make an ssh connection from A to B. (2) "-R 4711:localhost:5999" On B, allocate port 4711 and forward connections to it through the existing ssh connection to port 5999 (cvsup) on host A. (3) "cvsup -h localhost -p 4711 supfile" On B, start cvsup and have it connect to port 4711 on the local host. The connection is forwarded because of (2) through the ssh tunnel to the cvsup port on A. You have now established a connection from cvsup on B to cvsupd on A. Once cvsup terminates, so will ssh and the port forwarding. That's an I-give-you-a-little-PUSH-and-then-you-PULL-real-hard model. Additional remarks: * Both ssh and cvsup can compress their connections. For increased efficiency, enable compression only for one but not both. * Of course you can use other IP tunneling and remote execution software, but ssh is usually at hand. -- Christian "naddy" Weisgerber naddy@mips.rhein-neckar.de To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message