Tôi có lệnh socat này đang chạy tốt, nhưng khi không có dữ liệu nào được chuyển, nó sẽ chết sau đúng 5 phút và tôi không hiểu tại sao khi tôi thiết lập nó để gửi 100 lần giữ sau mỗi 10 giây sau 10 giây đầu tiên . Từ những gì tôi hiểu về trang người đàn ông xã hội, điều đó sẽ giữ cho nó tồn tại trong 1000 giây tức là 16 phút. Ngoài ra, nếu tôi cố gắng đặt keepcnt thành 200, tôi nhận được "setsockopt (7, 6, 6, {200}, 4): Đối số không hợp lệ" nhưng tôi không thể tìm thấy giá trị tối đa cho đối số đó là gì Tôi phải thiếu một cái gì đó rất rõ ràng ở đây. Thử nghiệm nhiều hơn với các đối số không bao giờ thay đổi giá trị thời gian chờ là 5 triệu. Đặt giá trị thấp hơn cho keepcnt và giá trị cao hơn của keepintvl được chấp nhận nhưng đơn giản là không có hiệu ứng rõ ràng.
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 Sản phẩm này bao gồm phần mềm được phát triển bởi Dự án OpenSSL để sử dụng trong Bộ công cụ OpenSSL. (http://www.openssl.org/) 2017/05/31 08:53:01 socat [16065] I Sản phẩm này bao gồm phần mềm được viết bởi Tim Hudson (tjh@cryptsoft.com) 2017/05/31 08:53:01 socat [16065] Tôi đặt tùy chọn "liên kết tượng trưng" thành "/ tmp / lp1" 2017/05/31 08:53:01 socat [16065] Tôi cởi mở ({5}, {6}, {"/ dev / pts / 1"} ,,) -> 0 2017/05/31 08:53:01 socat [16065] N PTY là / dev / pts / 1 2017/05/31 08:53:01 socat [16065] Tôi đặt tùy chọn "soalive" thành 1 2017/05/31 08:53:01 socat [16065] Tôi đặt tùy chọn "tcp-keepidle" thành 10 2017/05/31 08:53:01 socat [16065] Tôi đặt tùy chọn "tcp-keepintvl" thành 10 2017/05/31 08:53:01 socat [16065] Tôi đặt tùy chọn "tcp-keepcnt" thành 100 2017/05/31 08:53:01 socat [16065] N mở kết nối tới AF = 2 192.168.0.5:9100 2017/05/31 08:53:01 socat [16065] Tôi bắt đầu kết nối vòng lặp 2017/05/31 08:53:01 socat [16065] Tôi ổ cắm (2, 1, 6) -> 7 2017/05/31 08:53:01 socat [16065] N được kết nối thành công từ địa chỉ địa phương AF = 2 192.168.0.4:56482 2017/05/31 08:53:01 socat [16065] Tôi đã giải quyết và mở tất cả các địa chỉ sock 2017/05/31 08:53:01 socat [16065] N bắt đầu vòng lặp truyền dữ liệu với FD [5,5] và [7,7] 2017/05/31 08:58:01 socat [16065] N socket 2 (fd 7) đang ở EOF 2017/05/31 08:58:02 socat [16065] Tôi đã hết thời gian thăm dò ý kiến (không có dữ liệu trong vòng 0,500000 giây) 2017/05/31 08:58:02 socat [16065] Tôi đóng (5) 2017/05/31 08:58:02 socat [16065] Tôi tắt máy (7, 2) 2017/05/31 08:58:02 socat [16065] N thoát với trạng thái 0