• Aaron Conole's avatar
    openvswitch: support asymmetric conntrack · 5d50aa83
    Aaron Conole authored
    The openvswitch module shares a common conntrack and NAT infrastructure
    exposed via netfilter.  It's possible that a packet needs both SNAT and
    DNAT manipulation, due to e.g. tuple collision.  Netfilter can support
    this because it runs through the NAT table twice - once on ingress and
    again after egress.  The openvswitch module doesn't have such capability.
    
    Like netfilter hook infrastructure, we should run through NAT twice to
    keep the symmetry.
    
    Fixes: 05752523 ("openvswitch: Interface with NAT.")
    Signed-off-by: default avatarAaron Conole <aconole@redhat.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    5d50aa83
conntrack.c 59.9 KB