Subject: Re: inside-in redirects
To: None <netbsd-users@netbsd.org>
From: Aaron J. Grier <agrier@poofygoof.com>
List: netbsd-users
Date: 07/01/2003 11:49:47
On Mon, Jun 30, 2003 at 01:55:24PM -0700, collver1@comcast.net wrote:
> How about trying the following?
>
> rdr le0 publicIP/32 port 80 -> 10.0.0.6 port 80 tcp
good guess, but not quite...
the redirect is working, but it needs to be proxied somehow. this is
how I interpret the above tcpdump:
11:44:39.867451 10.0.0.7.65523 > publicIP.80: S 26923372:26923372(0) win 16384 <mss 1460,nop,wscale 0,nop,nop,timestamp 0 0>
connect from internal client to external IP port 80
11:44:39.868393 10.0.0.7.65523 > 10.0.0.6.80: S 26923372:26923372(0) win 16384 <mss 1460,nop,wscale 0,nop,nop,timestamp 0 0>
it gets redirected to internal server. this packet is generated from
the NAT box, I think.
11:44:39.870249 10.0.0.6.80 > 10.0.0.7.65523: S 1175573609:1175573609(0) ack 26923373 win 16384 <mss 1460,nop,wscale 0,nop,nop,timestamp 25692090 0>
internal server sees the redirected packet and attempts to reply.
11:44:39.870889 10.0.0.7.65523 > 10.0.0.6.80: R 26923373:26923373(0) win 0
internal client isn't expecting a response directly from the internal
server and so sends a reset.
it's as if the inside->in redirects need to be proxied through NAT as
well. there's got to be a way to do it besides split DNS.
--
Aaron J. Grier | "Not your ordinary poofy goof." | agrier@poofygoof.com
"Isn't an OS that openly and proudly admits to come directly from Holy
UNIX better than a cheap UNIX copycat that needs to be sued in court
to determine what the hell it really is?" -- Michael Sokolov