SSHが突然機能しなくなった:「書き込み失敗:パイプの破損」


9

私は自宅でMacBook Proを使用しており、自分の研究室のマシンに定期的にSSHで接続しています。ただし、過去3〜4日間、ラボのマシンにSSHで接続するたびに、sshを実行してから2分以内にWrite Failed:Broken Pipeエラーが発生します。

数日前にすべてが完全に機能していたという事実は私を困惑させます。


2
使ってServerAliveIntervalますか?そうでない場合は、設定してみてください。
0xC0000022L 2013年

はい、そうです。それは30に設定されています。15、30、60を試してみましたが、パフォーマンスには影響しませんでした(またはその欠如)
NSR

1Macbookかどうかを確認するために、別のマシンからラボにSSH接続してみましたか?そして2、それは研究室があるかどうかを確認するために別のマシンへのMacBookからSSHing?どちらかに問題があるかどうかを
見極めることで

さて、私はラップトップを使用して、別のネットワーク(大学のネットワーク)から同じマシンにSSHで接続しましたが、問題なく動作しました。私の推測では、ホームネットワークで奇妙なことが起こっています。
NSR 2013年

回答:


11

これはネットワークの問題のようです。

一部のネットワーク機器が変更されたか、再構成されたかどうかを問い合わせます。sshの実行に問題があることをネットワーク管理者に伝えてください。ファイアウォールの設定に誤りがある可能性があります。他のマシンまたは他のマシンからログインして、診断を改善してください。

これらの症状の1つの考えられる原因は、IPアドレスの競合です。クライアントとサーバーがIPアドレスを取得している場所を確認します。実行し続けるとping server.example.com、接続が長持ちしますか?その場合、IPアドレスが競合しています。(これpingは、IPパケットをマシンにルーティングする方法に沿ってルーターに通知し続けるので役立ちます。ただし、他のマシンがあなたの前にARP応答を送信すると、接続が失われます。)これが問題である場合は、修正する:同じアドレスを使用しているマシンの1つが別のアドレスを使用するように調整します。

マシンのルーティングテーブルも確認してください。サーバーへのパケットが適切なインターフェイスにルーティングされていることを確認してください。(ルーティングテーブルが悪いと、通常は接続がまったく機能しなくなりますが、症状が説明したものであるというエッジケースがあります。DHCPでアドレスを取得し、DHCPサーバーが接続先のサーバーでもある場合— DHCPサーバーのアドレスは、ARPキャッシュの有効期限が切れるまで、目的のインターフェイスにルーティングされます。


1
ああ!任意のサーバーへのpingが機能しているようです(これまでのところ)。IPアドレスの衝突のようです。さらに調査し、これが起こらないことを確認します。ありがとう!!
NSR 2013年

こんにちはGilles、与えられた解決策をありがとう。sshパラメータを設定するなどして、この問題を5日からトラブルシューティングしています...しかし、うまくいきませんでした。あなたの解決策は私をたくさん助けてくれました。どうもありがとう。
Rajasekhar

1

これは、パケット損失が原因である可能性があります。のようなツールmtrは、ルート内のどのホストが問題を引き起こしているかを診断するのに役立ちます。ここでは、Mac OS Xにインストールするための手順を説明します。


1

この問題は本社の一部のサーバーで発生し、以下を使用して解決しました。

TCPKeepAlive yes
ServerAliveInterval 5

ssh 設定ファイル(~/.ssh/config or /etc/ssh/ssh_config)内。

後になって初めて、干渉が発生したオフィス間の通信を最適化するためにインストールされたハードウェアが原因であることがわかりました。


1

Mac OS Xでの問題を解決しました。

#ClientAliveInterval 0

ClientAliveInterval 300

/etc/sshd_config、次のこれをし、マシンを再起動し、完了です。


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