Subject: Associating connection tracking with a physical device.

From: Ben Greear <[email-masked]>
Date: Fri, 20 Apr 2007 15:50:12 -0700

I am trying to NAT routed connections between pairs of devices very
much like the etun patch recently posted.

As far as I can tell, this is failing because the connection tracking
does not take the interface into account.  The result is that if you
send on etun1a, receive on etun1b, and then route internally to
etun2a for transmit, the packet uses the same nfct (printk shows
the 'id' of the ct is the same even though the skb->dev has changed.)
This appears to make it impossible to NAT on etun2a in this scenario.

I believe what is needed to make this work is the addition of some
extra fields in the conn-tracking tuple, or perhaps some explicit test
for the outgoing netdev.

Does that sound like the right approach for enabling NAT in this case?

Thanks,
Ben

-- 
Ben Greear <[email-masked]>
Candela Technologies Inc  http://www.candelatech.com