SSH ไม่ทำงานอีกต่อไป:“ เขียนล้มเหลว: Broken Pipe”


9

ฉันใช้ macbook pro ที่บ้านและเปลี่ยนอุปกรณ์เป็นประจำที่ห้องปฏิบัติการของฉัน อย่างไรก็ตามในช่วง 3-4 วันที่ผ่านมาเมื่อใดก็ตามที่ฉัน SSH เข้าไปในเครื่องในห้องแล็บฉันจะได้รับการเขียนล้มเหลว: ข้อผิดพลาดของ Broken Pipe แทบจะภายใน 2 นาทีหลังจากที่ฉันหมดสติ

ความจริงที่ว่าทุกอย่างทำงานได้อย่างสมบูรณ์ไม่กี่วันที่ผ่านมาทำให้ฉันงงงันและความช่วยเหลือใด ๆ ที่จะทำให้สิ่งต่าง ๆ ทำงานได้อีกครั้งจะได้รับการชื่นชมมาก


2
คุณใช้ServerAliveIntervalหรือไม่ ถ้าไม่ลองตั้งค่า
0xC0000022L

ใช่ฉันเป็น มันถูกตั้งค่าเป็น 30 ฉันลอง 15, 30, 60 และมันไม่ได้ส่งผลกระทบต่อประสิทธิภาพ (หรือขาด)
NSR

คุณลอง1SSHing จากเครื่องอื่นไปยังแล็บเพื่อดูว่าเป็น macbook หรือไม่? และ2SSHing จาก macbook ไปยังเครื่องอื่นเพื่อดูว่าเป็นแล็บหรือไม่ การค้นหาว่าปัญหาใดที่ควรแก้ไขปัญหาของคุณให้แคบลงอย่างมาก
Yuugian

ฉันใช้แลปท็อปของฉันเพื่อ SSH ไปยังเครื่องเดียวกันจากเครือข่ายอื่น (เครือข่ายมหาวิทยาลัย) และใช้งานได้ดี ฉันเดาว่ามีบางอย่างแปลก ๆ เกิดขึ้นกับเครือข่ายในบ้านของฉัน
NSR

คำตอบ:


11

ดูเหมือนว่าปัญหาเครือข่าย

สอบถามว่าอุปกรณ์เครือข่ายบางตัวมีการเปลี่ยนแปลงหรือถูกกำหนดค่าใหม่แล้ว แจ้งผู้ดูแลระบบเครือข่ายของคุณว่าคุณมีปัญหาในการทำงานอาจมีการกำหนดค่าผิดพลาดในไฟร์วอลล์ ลองเข้าสู่ระบบจากเครื่องอื่นหรือไปยังเครื่องอื่นเพื่อปรับปรุงการวินิจฉัย

สาเหตุหนึ่งที่เป็นไปได้ของอาการเหล่านี้คือความขัดแย้งของที่อยู่ IP ตรวจสอบว่าไคลเอนต์และเซิร์ฟเวอร์รับที่อยู่ IP ของพวกเขาอยู่ที่ไหน หากคุณยังคงping server.example.comทำงานต่อไปจะช่วยให้การเชื่อมต่อใช้งานได้นานขึ้นหรือไม่? ถ้าเป็นเช่นนั้นคุณมีที่อยู่ IP ขัดแย้งกัน (ความpingช่วยเหลือเพราะมันบอกเราเตอร์ตลอดเส้นทางแพ็คเก็ต IP ไปยังเครื่องของคุณ - แต่คุณจะยังคงสูญเสียการเชื่อมต่อหากเครื่องอื่นส่ง ARP ตอบกลับก่อนที่คุณ) หากเป็นปัญหาคุณต้อง แก้ไขมัน: จัดให้มีหนึ่งในเครื่องที่ใช้ที่อยู่เดียวกันเพื่อใช้ที่อยู่อื่น

ตรวจสอบตารางเส้นทางบนเครื่องของคุณ ตรวจสอบให้แน่ใจว่าแพ็กเก็ตไปยังเซิร์ฟเวอร์ถูกกำหนดเส้นทางไปยังอินเทอร์เฟซที่เหมาะสม (ในขณะที่ตารางเส้นทางที่ไม่ดีจะทำให้การเชื่อมต่อใช้งานไม่ได้มีกรณีขอบที่อาการเป็นอาการที่คุณอธิบาย: ถ้าคุณได้รับที่อยู่ด้วย DHCP และเซิร์ฟเวอร์ DHCP ก็เป็นเซิร์ฟเวอร์ที่คุณติดต่อด้วย - ที่อยู่ของเซิร์ฟเวอร์ DHCP จะถูกส่งไปยังส่วนต่อประสานที่ต้องการจนกว่าแคช ARP ของคุณจะหมดอายุ)


1
อา ! การส่ง Ping ไปยังเซิร์ฟเวอร์โดยพลการดูเหมือนจะใช้งานได้ (จนถึงตอนนี้) ดูเหมือนว่าจะเป็นการปะทะกันของที่อยู่ IP ฉันจะตรวจสอบเพิ่มเติมและมองเพื่อให้แน่ใจว่าสิ่งนี้จะไม่เกิดขึ้น ขอบคุณ !!
NSR

สวัสดี Gilles ขอบคุณสำหรับการแก้ปัญหาที่ได้รับ ฉันกำลังแก้ไขปัญหานี้จาก 5 วันโดยการกำหนดค่าพารามิเตอร์ ssh เป็นต้น ... แต่ไม่ได้ผล ทางออกของคุณช่วยฉันได้มาก ขอบคุณมาก.
Rajasekhar

1

อาจเกิดจากการสูญหายของแพ็กเก็ต เครื่องมืออย่างหนึ่งที่mtrสามารถช่วยคุณวินิจฉัยได้ว่าโฮสต์ตัวใดในเส้นทางที่ทำให้เกิดปัญหา ที่นี่คุณจะพบคำแนะนำในการติดตั้งบน Mac OS X


1

ฉันมีปัญหานี้แสดงกับเซิร์ฟเวอร์บางตัวที่สำนักงานใหญ่และแก้ไขโดยใช้:

TCPKeepAlive yes
ServerAliveInterval 5

ในไฟล์ssh config ( ~/.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.