SSH突然不再起作用:“写入失败:管道损坏”


9

我在家中使用Macbook Pro,并定期在实验室中使用ssh进入计算机。但是,在过去的3-4天中,每当我通过SSH进入实验室中的计算机时,几乎都不会在ssh-ing的2分钟之内收到Write Failed:Broken Pipe错误。

几天前一切运行正常,这一事实令我感到困惑,为使事情重新恢复正常运转所提供的任何帮助将不胜感激。


2
您是否在使用ServerAliveInterval?如果没有,请尝试进行设置。
0xC0000022L13年

我是。它设置为30。我尝试了15、30、60,但它并没有影响性能(或缺乏性能)
NSR

您是否尝试1过从另一台计算机通过SSH进入实验室以查看其是否为Macbook?然后2从Macbook SSH连接到另一台计算机,看看是否在实验室?找出哪个有问题应该极大地缩小您的解决方案
Yuugian 2013年

好吧,我用笔记本电脑通过SSH从不同的网络(大学网络)连接到相同的计算机,并且运行良好。我的猜测是我的家庭网络发生了一些奇怪的事情。
NSR

Answers:


11

这看起来像是网络问题。

查询某些网络设备是否已更改或已重新配置。告诉您的网络管理员,您在登录时遇到问题,防火墙中的配置可能有误。尝试从其他计算机登录或登录到其他计算机以改善诊断。

这些症状的可能原因之一是IP地址冲突。检查客户端和服务器在哪里获取其IP地址。如果继续ping server.example.com运行,是否有助于延长连接时间?如果是这样,则您有一个IP地址冲突。(这ping很有帮助,因为它不断告诉路由器将IP数据包路由到您的计算机的方式-但是如果另一台计算机在您之前发送ARP答复,您仍然会失去连接。)如果这是问题所在,则需要修复它:安排使用相同地址的机器之一使用不同的地址。

还要检查计算机上的路由表。确保将发送到服务器的数据包路由到正确的接口。(虽然错误的路由表通常会使连接根本无法正常工作,但在极端情况下,症状就是您所描述的症状:如果使用DHCP获取地址,并且DHCP服务器也是您要联系的服务器, DHCP服务器的地址将被路由到所需的接口,直到您的ARP缓存过期为止。)


1
啊!ping任意服务器似乎正常(到目前为止)。好像是IP地址冲突。我将进行进一步调查,以确保不会发生这种情况。谢谢 !!
NSR

嗨,吉尔斯,谢谢您提供的解决方案。我正在通过配置ssh参数等从5天开始解决此问题,但是没有用。您的解决方案对我有很大帮助。非常感谢。
Rajasekhar


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
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.