tcp – SSH は何のために UDP を使うのですか?

ssh tcp udp

調べていて気づいたのですが、SSHはTCPとUDPの両方を使っています。TCP を使うことは完全に理解していますが、UDP は少し奇妙な感じがします。安全なシェルアクセスのために、ハンドシェイクを最小限に抑えた「信頼性の低い」トランスポートプロトコルを使う理由は何でしょうか?

私が思いつく唯一の用途は、SCPのための(大きな)ファイル転送です。しかし、ハンドシェイクのためにTCPの方が便利ではないでしょうか?

実際、私はSSHのためにTCPだけを開くことを考えていますが、その意味合いを知らないのはかなり不利になります


EDIT

UDP 上の ssh についての論文だけでなく、mosh と呼ばれる本格的な ssh 実装も存在することがわかりました。しかし、古典的な ssh は、RFCs で指定されているように、まだ TCP のみを使用しています

  46  alex  2014-04-16


ベストアンサー

WindowsからUnixへ、UnixからUnixへ、いくつかのSSH接続で試してみましたが、ポート22でUDPパケットが1つも届きません。また、サーバはTCPでしかリスンしません

この thesis で、彼らは SSH のトランスポートに UDP を実装しようとしましたが、デフォルトでは TCP だけを使っていることにも言及しています。Wikipedia のページでは、SSH の開発者が UDP & TCP の割り当てを最初に要求したから UDP だと言っているのかもしれませんが、 関連する RFC にはそのことについての言及はありません

46  mtak  2014-04-16


…SSH プロトコルは、TCP を介したトンネリング制御に 22/UDP を使用しています。Wireshark を通じて適切にデコードされていて、 ssh-agent を通して接続をトンネリングしている場合、あるいはリモートまたはローカルでトンネリングしている場合、 UDP が TCP セグメント内にカプセル化されていることに気づくでしょう

5  The Root User  2015-02-05


タイトルとURLをコピーしました