TCP Keepalive
TCP-Option: schickt periodisch eine leere Probe, um zu prüfen, ob die Gegenstelle noch lebt, und hält NAT-/Firewall-State wach. Linux-Default: 7200 s Idle (2 Stunden), 9 Probes, 75 s Intervall.
Ursprünglicher Zweck: tote Verbindungen bei Netzwerkausfällen erkennen, die sonst für immer halb offen hängen bleiben könnten. Moderner Zweck: den NAT-Tabelleneintrag am Leben halten (CGNAT-Timeouts liegen bei 30-300 s — Keepalive muss also schneller sein). Der Default von 2h ist dafür nutzlos. Anwendungsseitiges Keepalive (HTTP/2 PING, WebSocket Ping) ist oft besser — anpassbares Intervall, App-spezifisches Tuning. Klassisches Symptom: eine lang laufende SSH-Session "friert" nach Leerlauf ein → ServerAliveInterval wurde nie gesetzt.