ルータへのSSHトンネルは定期的に中断されます。 TCPの問題?

ルータへのSSHトンネルは定期的に中断されます。 TCPの問題?

私のオフィスルーターをBuffalo WZR-HP-G300NHにアップグレードした後、奇妙なことがわかりました。 SSHトンネルを使用してリモート接続すると、トンネルはしばしば「停止」します。各停止は1〜2分間続き、その後ブロックされたすべてのトラフィックが追いつきます。 VNCを使用して数分ごとにセッションを一時停止することは非常に面倒です。

私のローカルコンピュータで次のコマンドを使用します。

ssh -D 9000 [email protected] 

別のSSHセッションを開くことができ、すべてが大丈夫だったので、ルータ全体が停止していないことを知っています。ルーターも停止するまでです。固定セッションは互いに独立しています。どちらも定期的に停止しますが、同時に停止しません。

両方のセッションでpingを開始でき、両方とも数回停止しても、単一のパケットが失われたり遅延が表示されたりしません。

VNCポートをリモートシステムに直接転送すると、問題が改善され、SSHよりもTCPの問題である可能性が高いと考えられます。しかし、私は何も除外しません。

数週間前に撤回されたバージョンを含むファームウェアを最新のdd-wrtにアップグレードしたにもかかわらず、この動作は継続します。

ドロップベアの問題ですか?それともMTUを使用しますか?サービス品質?

ベストアンサー1

2つの推測:

  1. パケット損失。何らかの理由でパケット損失はそのTCPフローにのみ影響を与える可能性があるため、並列に実行する「ping」を信頼しないでください。これを検出する簡単な方法は、$ netstat -s -p|grep "segments retransmited"SSHセッション中に両方(sshクライアントとサーバー)で頻繁に実行することです。カウンターが増加していることを確認してください。この場合、そのコンピュータのTCPセッションでパケット損失が発生します。つまり、最良のアプローチは、次のものを使用することです。tcpdumpまたはワイヤーシャーク何が起こっているのかを記録し、再送信が発生していることを確認します(wiresharkは通常赤で表示されますが、YMMV)。

  2. MTUの問題。たとえば、SSHを介して大きなディレクトリの内容を一覧表示したい場合は、転送されたデータ量のために断片化する必要がある場合があります。エンドポイントは以下を使用します。パスMTU検出一度に送信されるデータの量を決定します。しかし、場合によってはルートのファイアウォールはすべてのICMPパケットをブロックできます。したがって、経路MTU検出が中断され、明らかな停止現象が発生する。これは確認と診断が困難な場合があります。常に機能する最も簡単な解決策は、両方のネットワークインターフェイスのMTUをより低い値(1200や1000など)に変更することです。これによりパフォーマンスが低下する可能性があるため、この方法を永久に使用しないことをお勧めします。

おすすめ記事