telnet タイムアウトを変更するには、tcp キープアライブ パラメータの値を変更する必要があります。まず、TCP キープアライブ パラメータのデフォルト値を確認しましょう。
# cat /proc/sys/net/ipv4/tcp_keepalive_time 7200 # cat /proc/sys/net/ipv4/tcp_keepalive_intvl 75 # cat /proc/sys/net/ipv4/tcp_keepalive_probes 9
最初の 2 つのパラメーターは秒単位で表され、最後のパラメーターは純粋な数値です。これは、キープアライブ ルーチンが最初のキープアライブ プローブを送信する前に 2 時間 (7200 秒) 待機し、75 秒ごとに再送信することを意味します。 ACK 応答が 9 回連続して受信されない場合、接続は切断されているとマークされます。したがって、tcp_keepalive_time の値を変更して、5 分後に切断されないようにする必要があります。これらの変更はクライアント側で行う必要があります。
システムは、tcp_keepalive_time の値を小さくする必要があります。7200 秒が 2 時間の場合、4 分は 240 秒になります。キープアライブは、チャネルが非アクティブになってから 4 分後に開始し、1 分間隔でプローブを送信する必要があります。例:
# echo 240 > /proc/sys/net/ipv4/tcp_keepalive_time ( this value is below the 5 minutes) # echo 60 > /proc/sys/net/ipv4/tcp_keepalive_intvl # echo 20 > /proc/sys/net/ipv4/tcp_keepalive_probes注意 :これらの値はテストされ、必要に応じて調整されます。
永続的な変更を行う
適切な値を取得したら、構成ファイル /etc/sysctl.conf にパラメータ値を追加することで、再起動後も変更を永続化できます。 :
# vi /etc/sysctl.conf net.ipv4.tcp_keepalive_time = [value] net.ipv4.tcp_keepalive_intvl = [value] net.ipv4.tcp_keepalive_probes = [value]