If 'gwy' gets a packet from $client to $int_if, it will rdr and nat it so
that 'other' will receive a packet from $ext_if to $other, like so:
rdr $int_if from $client to $int_if -> $other
nat $ext_if from $client to $other -> $ext_if
int_if
client -------------- | gwy | ---------------- other
ext_if
(s:$client) (s:$client) (s:$ext_if)
(d:$int_if) --> (d:$other ) --> (d:$other )
But what if I want $client to belong to gwy, and treat $int_if as a
virtual address? For example, if I 'ping $int_if', then when sniffing some
virtual interface, I'd see packets from $client to $int_if and vice versa.
However, the external interface will see packets from $ext_if to $other:
| gwy | ------------- other
(s:$client) (s:$ext_if)
(d:$int_if) ---> (d:$other )
Essentially, we compress the client-gwy tandem into a single machine. Can
this be done? Would it require loopbacks or internal tunnels?
Justin