ネットワークの状況が変更された後でもMoshがまだログイン状態を維持できるのはなぜですか?

ネットワークの状況が変更された後でもMoshがまだログイン状態を維持できるのはなぜですか?

私はUnix SEに関するもう一つの質問を通してこのアプリケーションについて学びました。

それは言う:

IPを変更してください。引き続きご連絡ください。

Moshは、インターネット接続間を移動すると自動的にローミングされます。電車ではWi-Fi、ホテルではイーサネット、ビーチではLTEをご利用ください。ログイン状態が維持されます。 SSHやGmailなどのネットワークアプリケーションなど、ほとんどのネットワークプログラムはローミング後に切断されます。モーセは違います。

どうやってこれができますか?

これは簡単な再配線技術ですか?

ベストアンサー1

主に、moshは非接続プロトコルを使用し、クライアントとサーバーの再接続を正しく処理するためです。私は具体的な内容を100%確信することはできませんが、私が理解したところによると、通常は次のように動作します。

  1. mosh を使用してリモートホストに初めて接続すると、通常の SSH を使用してログインし、別のポートから接続をリッスンする独自のサーバーコンポーネントを起動します。
  2. その後、Moshは元のSSH接続を閉じ、独自のプロトコルを介して実行される新しい端末セッションを作成します。このリンクはTCPの代わりにUDPを使用するため、非接続プロトコルを介した接続を機能的にシミュレートします。
  3. クライアントのIPアドレスが変更された場合、またはネットワークが一時的にダウンした場合、または同様のことが発生した場合、moshは引き続き元のサーバーアドレスにパケットを送信してシミュレートされた接続をリセットしようとします。サーバーコンポーネントが新しいアドレスから来るパケットを確認すると、以前のアドレスの代わりにそのアドレスに応答パケットの送信が開始されます。

もちろん、認証が必要ですが(そうでなければ誰でもMoshセッションを簡単に傍受できます)、移行がどのように行われるかはそれほど重要ではありません。

多くのP2Pソフトウェアがネットワーク変更に対する弾力性を提供するために非常に類似した技術(すなわち、本質的にステップ2と3と同じであり、他のものをトンネリングすること)を使用することは注目に値します。これらのタスクを実行するソフトウェアの例は次のとおりです。物事を同期そしてディンク

おすすめ記事