У мене є така команда socat, яка працює добре, але коли дані не передаються, вона вмирає рівно через 5 хвилин, і я не розумію, чому, як я встановив, відправляти 100 киепалів кожні 10 секунд після перших 10 секунд . З того, що я зрозумів на сторінці socat man, це повинно тримати його живим протягом 1000-х, що становить 16 хвилин. Крім того, якщо я спробую встановити Keepcnt на 200, я отримаю "setsockopt (7, 6, 6, {200}, 4): Недійсний аргумент", але ніде в Інтернеті я не міг знайти те, що є максимальним значенням для цього аргументу, так що я думаю Я, мабуть, пропускаю щось дуже очевидне. Експериментуючи більше з аргументами, ніколи не змінювали значення тайм-ауту 5 мільйонів. Встановлення нижчого значення для Keepcnt та більш високих значень Keepintvl приймається, але просто не має видимого ефекту.
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 Цей продукт включає програмне забезпечення, розроблене проектом OpenSSL для використання в наборі інструментів OpenSSL. (http://www.openssl.org/) 31.05.2017 08:53:01 socat [16065] I Цей продукт включає програмне забезпечення, написане Тімом Хадсоном (tjh@cryptsoft.com) 31.05.2017 08:53:01 socat [16065] Я встановлюю опцію "символічне посилання" на "/ tmp / lp1" 31.05.2017 08:53:01 socat [16065] Я відкриваю ({5}, {6}, {"/ dev / pts / 1"},) -> 0 31.05.2017 08:53:01 socat [16065] N PTY є / dev / pts / 1 2017/05/31 08:53:01 socat [16065] Я встановлюю опцію "so-keepalive" на 1 2017/05/31 08:53:01 socat [16065] Я встановлюю опцію "tcp-holdidle" на 10 31.05.2017 08:53:01 socat [16065] Я встановлюю опцію "tcp-holdintvl" на 10 2017/05/31 08:53:01 socat [16065] Я встановлюю опцію "tcp-holdcnt" на 100 31.05.2017 08:53:01 socat [16065] N відкриття з'єднання з AF = 2 192.168.0.5:9100 2017/05/31 08:53:01 socat [16065] Починаю з'єднувальну петлю 31.05.2017 08:53:01 socat [16065] I socket (2, 1, 6) -> 7 31.05.2017 08:53:01 socat [16065] N успішно з'єднано з локальної адреси AF = 2 192.168.0.4bljen6482 31.05.2017 08:53:01 socat [16065] Я вирішив і відкрив усі адреси шкарпеток 2017/05/31 08:53:01 socat [16065] N стартового циклу передачі даних з FD [5,5] та [7,7] 31.05.2017 08:58:01 socat [16065] N socket 2 (fd 7) знаходиться на EOF 31.05.2017 08:58:02 socat [16065] Я закінчив опитування (немає даних протягом 0,500000 секунд) 31.05.2017 08:58:02 socat [16065] Закриваю (5) 31.05.2017 08:58:02 socat [16065] Відключення (7, 2) 31.05.2017 08:58:02 socat [16065] N вихід із статусом 0