コマンド出力が約5行を超える場合はSSH


11

私はここでこの質問をするように助言されました:私が現在経験している次の問題に困惑しています。
Debian 5.0 LinuxサーバーをイーサネットケーブルでDSLルーターに接続しています。私のラップトップはWindows 7を実行しており、同じDSLルーターにワイヤレス(802.11b / g)で接続されています。Puttyを使用してサーバーにSSH接続し、コマンドを実行して複数行の出力を生成しようとすると、SSHセッションがフリーズします。例

ls -al /             // Freezes
ls -al / > ~/boo.txt // OK
vi ~/boo.txt         // OK
top                  // Freezes

上記のコマンドはすべて、サーバー上で直接実行した場合、またはラップトップの接続を有線接続に変更した場合に機能します。何ができますか?この問題は本当に私を困惑させています!ありがとう


StackOverflowでこれを確認する必要があるかもしれませんが、viはカラーリングを行わないため(実際にはvimでない限り)、特殊文字(おそらくカラー)に問題があるようです。
Topher Fangio

StackOverflowでそれを尋ねましたが、おそらくそれをServerFaultに移動する方が良いでしょう...そして私はAidanと一緒です:私の最初の疑いはネットワークMTUでした。
dmckee ---元モデレーターの子猫

StackOverflowではなく、ServerFaultです。月曜日です= P
Topher Fangio

回答:


9

有線MTUの問題のように聞こえます。少し...

ジャンボフレームを有効にしている可能性はありますか?おそらく違います。とにかく-debianより低いMTU設定してみて、それが役立つかどうかを確認してください。


出向; これはMTUの問題のように聞こえます。エラー/パケットのドロップが発生するまで、より大きなパケットを(pingを使用して簡単に)試行することをお勧めします。または、MTU設定をどこでも確認してください:)
MikeyB

人々に感謝します!ラップトップのMTUを下げるとうまくいきます。MTUは送信者/受信者/両方に適用されますか?より大きなデータサイズのラップトップからサーバーにpingを実行できました。逆は真実ではありませんでした。Linuxサーバー:〜#ping -S 5000 athlon64-laptop.lan PING athlon64-laptop.lan 56(84)バイトのデータxxxxから64バイト:icmp_seq = 1 ttl = 128 time = 2.71 ms Windowsラップトップ> ping -l 2048 athlon64x2-server.lan 2048バイトのデータでathlon64x2-server.lanにpingを実行:要求がタイムアウトしました。> ping -l 1048 athlon64x2-server.lan 1048バイトのデータを使用してathlon64x2-server.lanにpingを送信します。xxxxからの応答:bytes = 1048 time = 3ms TTL = 64

@leftbrainlogic-mtuの問題は、ネットワークに何か怪しいものがあることを示しています。たぶん、アクセスポイントは高速イーサネットの最大許容[1500B]フレームを通過しませんか?ジャンボフレームを使用するようにサーバーを手動で構成しましたか?
pQd 2009

@pQd-いいえ、サーバーはDebian 5.0の通常のインストールを実行しています。:私はここでのifconfig -aからディスクパーティションとホスト名の出力を除くすべてのデフォルトを受け入れpastebin.com/f78fcbf3d

@leftbrainlogic-わかりました; 私のリンクで説明されているようにmtuを下げてみてください。1500Bは長さが標準的な長さですが、これはスイッチ、アクセスポイント、またはwifiネットワークカードのいずれかに問題があることを示していると思います。
pQd 2009

3

ネットワーク接続のMTUに問題がある可能性があります-Linuxサーバーが単一のネットワークパケットで非常に多くのバイトのデータを送信しようとした場合、ルーターはパケットサイズが無線ネットワークで送信するには大きすぎます。LinuxボックスのイーサネットインターフェイスのMTUを減らすことができるはずです。これで問題が解決する可能性があります。

診断するには、packetizeパラメータに異なる値を指定して、Linuxボックスからping -s <packetsize> <windows-ip> WindowsマシンのIPに、およびping <linux-ip> <packetsize>WindowsボックスからLinux に試し、最大サイズがいずれかの方向で異なるかどうかを確認します。

また:man pingLinuxでは何が起こっているのかを理解するのに役立ちます。


0

最初に、クライアントとサーバーの両方でデバッグモードを有効にします。

PuTTYには組み込みのデバッグ機能があり、セッション->ロギングで利用できます。ロギング設定を設定する前に、使用するセッションをロードする必要があることに注意してください。ロギング設定は、セッションの構成の一部です。

サーバーでは、LogLevelをINFO(内/etc/ssh/sshd_config)のままにして、問題に関連するものが何も表示されない場合にのみDEBUGに変更できます。変更を適用するには、ログアウトしてsshサーバーを再起動することを忘れないでください(/etc/init.d/ssh restart)。DEBUGが有用な情報を提供しない場合は、DEBUG3を試しman sshd_configます。

調査結果で質問を更新してください!

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.