16
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

RLoginでログインしたまま一定時間経過すると切断される

Last updated at Posted at 2018-09-02

TL;DR

オプション -> サーバー -> プロトコル -> KeepAliveパケットの送信間隔(sec)
このオプションをチェックし、時間を60 秒などに設定しておけばOK。
rlogin.png

この現象について

サーバー側の設定によりわざとTMOUTでログアウトさせている場合もありますが、たいていの場合は何も設定してません。

私がよくなるのは接続したまま放置してしまい、画面上は接続できているように見えても何かキーを押すと反応がなく、少し経過してから切断されているというエラーがでて終了してしまいます。

このケースに当てはまる人は、ルーターなどの中間機器によって切断されているケースがほとんどだと思います。
NAT(ネットワークアドレス変換)しているルーターが、一定期間パケットが流れていないコネクションを、切断済みと判定して、NATテーブルをクリアしていると思われます。

NATテーブルクリア時に、IN/OUT両方に通知でもしてくれれば良いですが、何もしてくれないルーターが多いようです。少なくともうちはこのタイプでした。

で、NATテーブルにない状態の後で、キー入力などによりパケットを送ろうとすると、既にないので、このときに初めてクライアントは切断されたと気づくわけです。
これを防ぐには定期的に無害なパケットを送り込めば良いのですが、その設定はRLoginで言うと、以下にあります。

オプション -> サーバー -> プロトコル -> KeepAliveパケットの送信間隔(sec)
このオプションをチェックし、時間を60 秒などに設定しておくと、ルーターからクリアされることはなくなりました。

RLogin以外のSSHクライアントでも、PuTTYなどにも同じ機能が入っています。

その他の解決方法

クライアントが対応していなくても、Heartbeatパッチというものがあるようです。

2020/01/22 追記
http://www.sc.isc.tohoku.ac.jp/~hgot/sources/openssh-watchdog.html
リンク先がなくなっていましたので貼り換えます。
https://www.imglab.org/m/hgot/sources/openssh-watchdog.html

16
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?