Ad alcuni router troppo zelanti piace interrompere le connessioni TCP che sono inattive per troppo tempo (ovvero non trasmettono dati). Potrebbe perché presumono che l'utente utilizzi solo cose come HTTP, dove la connessione viene spesso chiusa dopo che una singola query è stata completata.
Supponendo OpenSSH, usa ClientAliveInterval
e ClientAliveCountMax
direttive in sshd_config
, o equivalentemente ServerAliveInterval
e ServerAliveCountMax
nella configurazione lato client (~/.ssh/config
o /etc/ssh/ssh_config
) per abilitare i pacchetti keepalive a livello di protocollo.
In realtà hanno lo scopo di rilevare se l'host remoto è andato via, ma poiché provocano l'invio di messaggi quando la connessione è altrimenti inattiva, funzionano anche per impedire che la connessione venga vista come inattiva da dispositivi esterni.
*AliveInterval
intervallo dopo il quale il client/server invia una richiesta al remoto, e *AliveCountMax
imposta il numero di query senza risposta dopo le quali il client/server interrompe la connessione come inattiva.
Qualcosa di simile a questi valori dovrebbe funzionare:
ClientAliveInterval 15
ClientAliveCountMax 4