web-dev-qa-db-ja.com

ubuntuサーバー、ssh、書き込み失敗:壊れたパイプ

2台の新しいサーバー(両方とも新規インストール)でUbuntu Server 10.04 64ビットを使用すると、奇妙な動作が発生します。私はこの問題なしで他の4〜5台のサーバーにubuntuサーバー(同じバージョン)を展開しています。

最初は、sshサーバーがリッスンしているアドレスを/ etc/ssh/sshd_configに手動で設定するまで、新しいサーバーインストールにsshすることはできません。接続すると、次のエラーでランダムな間隔で追い出されるようです。

書き込み失敗:壊れたパイプ

「ssh -vv」を使用しても、他の情報は表示されません。この方法で追い出されたとき、一見ランダムに見える期間を別の時間に再接続することはできません。時には数秒、その他は数分。 「netstat -nap | grep:22」を実行すると、書き込み失敗エラーの後で接続がまだ存在していることがわかります。接続が切断されるまで、再接続できないようです。

これらのエラーのいずれかが発生した後、コンソールからサーバーにホップし、sshを実行して別のマシンにアクセスし、サーバーにsshで戻そうとすると、すべてが正常に機能します。

"-o TCPKeepAlive = yes"クライアント側を使用しても、何の影響もないようです。サーバーでiptablesとufwの両方を無効にしました。 AppArmorは強制プロファイルを表示しておらず、SELinuxはインストールされていません。

ログにエラーが報告されておらず、カスタム構成もありません。これはボックスストックインストールです。壊れたパイプエラーの後に戻って来ようとすると、次のエラーが表示されます。

ssh:ホスト172.22.50.92ポート22に接続:接続が拒否されました

また、nmapはポート22が開いていると表示しなくなりましたが、サーバーのnetstatはまだポート22をリッスンしていると言っています。

編集-それが何かを意味するかどうかはわかりませんが、KVM=これらのホストにインストールしました。問題なくゲスト(ubuntuサーバー64ビットも)にSSHで接続できます。

更新-opensshを削除してaptで再インストールしてみました。また、opensshをソースからパージしてインストールしましたが、運がありませんでした。 tracerouteと一晩のpingは、パケット損失をまったく示しません。

まだ別の更新-デルは、サーバーに悪いマザーボードがあると考えているようです。それを交換して、問題が解決するかどうかを確認します。

6
cmhobbs
3
cmhobbs

Mtrを使用してネットワークを確認します。 mtr -i 15 remotehostのようなコマンドを試してください。これをウィンドウで実行したままにするか、画面を使用して切り離すことができます。ネットワークの問題をキャッチする必要があります。ほとんどのシステムでは、パケット損失は通常0%です。

編集:sshがドロップする前と後のIPアドレスのarp -nの出力は何を示していますか。同じサブネット上の別のサーバーでこれを試すことができます。 IPアドレスに対応するHWアドレスは1つだけで、変更しないでください。競合している場合は、IPアドレスが競合しています。

4
BillThor

わかりました。これをちらりと見れば、私は何と思いますか...

基本的にドロップアウトが延長されます。

1.)ネットワーク接続が不良です。

2.)サーバーが接続されているネットワーク、ネットワーク接続が悪い、ルーターが悪い、何かが悪い:P

3.)サーバーに競合するアドレス/問題のあるハードウェアがあります。

私の解決策.

一晩pingを実行します。朝に失うパケット数を確認します。

お役に立てれば..

2
Arenstar

自動ネゴシエーションがオンになっている場合、特定のNIC /スイッチコンボで不安定な接続を取得でき、半二重にネゴシエートします。

「ethtool eth0」を使用して、速度とデュプレックスの設定が正しいことを確認し、必要に応じてそれらを変更します。

1
Bob