summaryrefslogtreecommitdiff
path: root/drivers/net/ipvlan
diff options
context:
space:
mode:
authorSasha Levin <alexander.levin@verizon.com>2017-07-31 09:23:23 -0400
committerSasha Levin <alexander.levin@verizon.com>2017-07-31 13:37:56 -0400
commit28d8e1bc09f6f81ba353fac534c93256c998384a (patch)
tree53e841ac752bbb74cc6229bd03069316fe4512e6 /drivers/net/ipvlan
parent4e8a4d30154e99164294addef503cb635704e9fe (diff)
ipvs: SNAT packet replies only for NATed connections
[ Upstream commit 3c5ab3f395d66a9e4e937fcfdf6ebc63894f028b ] We do not check if packet from real server is for NAT connection before performing SNAT. This causes problems for setups that use DR/TUN and allow local clients to access the real server directly, for example: - local client in director creates IPVS-DR/TUN connection CIP->VIP and the request packets are routed to RIP. Talks are finished but IPVS connection is not expired yet. - second local client creates non-IPVS connection CIP->RIP with same reply tuple RIP->CIP and when replies are received on LOCAL_IN we wrongly assign them for the first client connection because RIP->CIP matches the reply direction. As result, IPVS SNATs replies for non-IPVS connections. The problem is more visible to local UDP clients but in rare cases it can happen also for TCP or remote clients when the real server sends the reply traffic via the director. So, better to be more precise for the reply traffic. As replies are not expected for DR/TUN connections, better to not touch them. Reported-by: Nick Moriarty <nick.moriarty@york.ac.uk> Tested-by: Nick Moriarty <nick.moriarty@york.ac.uk> Signed-off-by: Julian Anastasov <ja@ssi.bg> Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Diffstat (limited to 'drivers/net/ipvlan')
0 files changed, 0 insertions, 0 deletions