Randall Stewart 97e28f0f58 tcp: Rack ack war with a mis-behaving firewall or nat with resets.
Previously we added ack-war prevention for misbehaving firewalls. This is
where the f/w or nat messes up its sequence numbers and causes an ack-war.
There is yet another type of ack war that we have found in the wild that is
like unto this. Basically the f/w or nat gets a ack (keep-alive probe or such)
and instead of turning the ack/seq around and adding a TH_RST it does something
real stupid and sends a new packet with seq=0. This of course triggers the challenge
ack in the reset processing which then sends in a challenge ack (if the seq=0 is within
the range of possible sequence numbers allowed by the challenge) and then we rinse-repeat.

This will add the needed tweaks (similar to the last ack-war prevention using the same sysctls and counters)
to prevent it and allow say 5 per second by default.

Reviewed by: Michael Tuexen
Sponsored by: Netflix Inc.
Differential Revision: https://reviews.freebsd.org/D32938
2021-11-17 09:45:51 -05:00
..
2021-08-08 10:16:06 +02:00
2020-11-29 13:41:49 +00:00
2020-11-22 20:21:10 +00:00
2021-11-12 08:59:42 -08:00
2021-10-28 07:12:23 +02:00
2021-05-31 05:48:15 +02:00
2020-09-24 12:26:06 +00:00
2021-09-26 15:15:39 +02:00
2020-09-24 12:26:06 +00:00
2021-09-23 14:16:56 +02:00
2021-07-08 08:16:45 -04:00
2021-07-07 07:22:35 -04:00
2021-02-18 22:36:01 -06:00