Ho questo comando socat che funziona bene, ma quando non viene trasferito nessun dato, muore dopo esattamente 5 minuti e non capisco perché come ho impostato per inviare 100 keepalive ogni 10 secondi dopo i primi 10 secondi . Da quello che ho capito della pagina man di socat, che dovrebbe tenerlo in vita per 1000 secondi che è di 16 minuti. Inoltre, se provo a impostare keepcnt su 200, ottengo "setsockopt (7, 6, 6, {200}, 4): argomento non valido", ma in nessun posto su Internet potrei trovare qual è il valore massimo per quell'argomento, quindi penso Qui mi manca qualcosa di molto ovvio. Sperimentare di più con gli argomenti non ha mai modificato il valore di timeout di 5 minuti. L'impostazione di un valore più basso per keepcnt e di valori più alti di keepintvl è accettata ma semplicemente non ha alcun effetto visibile.
socat -d -d -d -v pty,link=/tmp/lp1 tcp:192.168.0.5:9100,reuseaddr,keepalive,keepidle=10,keepintvl=10,keepcnt=100
2017/05/31 08:53:01 socat [16065] I Questo prodotto include software sviluppato da OpenSSL Project per l'uso in OpenSSL Toolkit. (Http://www.openssl.org/) 2017/05/31 08:53:01 socat [16065] I Questo prodotto include software scritto da Tim Hudson (tjh@cryptsoft.com) 2017/05/31 08:53:01 socat [16065] I impostando l'opzione "collegamento simbolico" su "/ tmp / lp1" 2017/05/31 08:53:01 socat [16065] I openpty ({5}, {6}, {"/ dev / pts / 1"} ,,) -> 0 2017/05/31 08:53:01 socat [16065] N PTY è / dev / pts / 1 2017/05/31 08:53:01 socat [16065] Ho impostato l'opzione "so-keepalive" su 1 2017/05/31 08:53:01 socat [16065] Ho impostato l'opzione "tcp-keepidle" su 10 2017/05/31 08:53:01 socat [16065] I impostando l'opzione "tcp-keepintvl" su 10 2017/05/31 08:53:01 socat [16065] Ho impostato l'opzione "tcp-keepcnt" su 100 2017/05/31 08:53:01 socat [16065] N apertura connessione ad AF = 2 192.168.0.5:9100 2017/05/31 08:53:01 socat [16065] Inizio avvio loop di connessione 2017/05/31 08:53:01 socat [16065] I socket (2, 1, 6) -> 7 2017/05/31 08:53:01 socat [16065] N connesso correttamente dall'indirizzo locale AF = 2 192.168.0.4:56482 2017/05/31 08:53:01 socat [16065] Ho risolto e aperto tutti gli indirizzi di calzino 2017/05/31 08:53:01 socat [16065] N avvio ciclo di trasferimento dati con FD [5,5] e [7,7] 2017/05/31 08:58:01 socat [16065] N socket 2 (fd 7) è presso EOF 2017/05/31 08:58:02 socat [16065] Timeout sondaggio (nessun dato entro 0,500000 secondi) 2017/05/31 08:58:02 socat [16065] I close (5) 2017/05/31 08:58:02 socat [16065] I shutdown (7, 2) 2017/05/31 08:58:02 socat [16065] N uscendo con stato 0