PuTTY 네트워크 오류 : 소프트웨어로 인해 연결이 중단되었습니다


81

이상한 문제가 있습니다. 로컬 Windows 7 에서 VMware 에서 호스팅되는 Linux 서버에 SSH로 연결하는 SSH로 PuTTY를 사용하는 경우 종종 오류 메시지가 표시 되고 PuTTY SSH 창이 비활성화됩니다. 일반적으로 PuTTY를 사용하여 서버에 로그인하여 무언가를 할 수 있지만 임의의 시간 (약 1-2 분) 후에 해당 오류가 발생합니다. 때로는 로그인 할 수 없어 시간 초과 오류가 발생합니다."Network error: Software caused connection abort"

VMware에서 코드 리포지토리 서버로 호스팅되는 다른 Ubuntu 데스크톱이 있고 SVN 업데이트 / 커밋을 수행 할 때 시간 초과 오류가 발생하지 않기 때문에 VMware Player에 문제가있는 것 같습니다. 그러나 Windows 7에서는 코드 저장소로 VMware에서 호스팅되는 동일한 Ubuntu 서버가 매우 잘 작동하기 때문에 Windows 7에 약간의 문제가 있다고 생각합니다! Windows XP에서 Windows Vista로 이동 한 다음 Windows 7로 이동하면 모든 나쁜 일이 발생하는 것 같습니다!

이 문제의 원인은 무엇이며 어떻게 해결할 수 있습니까?

보충 :

Google 검색을 수행하고 다음을 포함한 모든 방법을 지원했습니다.

  1. sshd 활성화 TCPKeepAlive
  2. sshd ClientAliveInterval900ClientAliveCountMax로 설정3
  3. PuTTY 연결 설정 'keepalives 사이의 초'를로 설정하십시오 5.

그러나 이것들은 모두 작동하지 않습니다! 그리고 PuTTY의 SSH 세션은 언젠가 후에도 여전히 중단됩니다!

Linux 서버 방화벽과 Windows 7 클라이언트 방화벽을 모두 해제했지만 로그인 시간이 여전히 초과되었습니다! 정말 짜증나!

때때로 로그인 할 수 있지만 로그인 시간이 초과되는 경우가 있습니다! 나는 왜 그런지 정말로 모른다. 나를 미치게 해!

내가 언급해야 할 것은 원격 서버에 연결하는 PuTTY SSH를 사용할 때 모두 정상입니다!

로그인에 실패하면 핑도 실패했습니다! 그러나 어떻게 그런 일이 일어날 수 있습니까? 로컬 컴퓨터에서 Linux 서버를 호스팅하기 위해 VMware 플레이어를 사용합니다!


ssh 연결을 활발하게 사용할 때이 오류가 발생합니까? 아니면 잠시 비활성 상태로 두었다가?
MaQleod

1
과실에 대해서는 작동하지 않습니다. 그러나 때로는 시간 초과로 로그인 할 수도 없습니다.
Robert

1
SSH 서버의 세션 시간 초과 설정을 확인합니다.
MaQleod

그러나 더 자주는 아니지만 시간 초과를 위해 퍼티에서 서버에 로그인 할 수도 없습니다!
Robert

3
이 문제가 해결 되었습니까? 아래에 나열된 대부분의 솔루션을 시도했지만 아무것도 효과가없는 것 같습니다. 다른 제안? Robert의 원래 문제와 정확히 같은 문제에 직면했습니다
user682765

답변:


58

퍼티에는이 문제를 해결하는 기능이 있습니다.

Network Error: Software caused connection abort
  1. 퍼티 시작
  2. 연결 설정을 저장 한 경우로드
  3. “연결”을 클릭하십시오
  4. "세션을 활성 상태로 유지하기 위해 널 패킷 보내기"섹션에서 5 초로 변경했습니다. 네트워크 중단이 문제인 경우 300 초가 더 나을 수 있습니다. 자세한 내용은 아래를 참조하십시오.

여기에 이미지 설명을 입력하십시오

Putty와의 연결 끊김을 방지하기 위해 keepalives를 사용하는 방법 :

일부 네트워크 라우터 및 방화벽은이를 통해 모든 연결을 추적해야합니다. 일반적으로 이러한 방화벽은 특정 시간 간격 후에 데이터가 양방향으로 전송되지 않으면 연결이 끊어진 것으로 가정합니다. 이로 인해 세션에 일정 시간 동안 트래픽이 없으면 PuTTY 세션이 방화벽에 의해 예기치 않게 종료 될 수 있습니다.

keepalive 옵션 ( 'keepalives 사이의 두 번째')을 사용하면 실제 터미널 세션을 방해하지 않는 방식으로 정기적 간격으로 세션을 통해 데이터를 보내도록 PuTTY를 구성 할 수 있습니다. 방화벽이 유휴 연결을 끊는 것을 발견하면이 필드에 0이 아닌 값을 입력하십시오. 값은 초 단위로 측정됩니다. 예를 들어 방화벽이 10 분 후에 연결을 끊는 경우 상자에 300 초 (5 분)를 입력 할 수 있습니다.

퍼티 자동 로그인 및 "스크린"도구를 사용하여 문제 감소

퍼티는 한 번에 몇 분 동안 연결이 끊기는 까다로운 와이파이를 처리 할 수 ​​없습니다. 해결 방법은 자동 로그인 및 화면을 사용하는 것입니다.

퍼티가 1 분 동안 인터넷 연결이 끊긴 후에 터미널을 다시 동기화하는 것은 사소한 문제가 아닙니다. 정전 중에 중간 공격으로 사람이 위험에 처할 수 있습니다. 어쨌든 자신을 다시 인증해야합니다. 퍼티는 당신에게 그것을 부과하지 않으며, 단지 당신을 떨어 뜨립니다.

따라서 퍼티가 사용자를 대신하여 자동 로그인 할 수 있도록 자동 로그인을 사용하십시오.

  1. 퍼티 컴퓨터 에서 puttygen 도구사용하여 개인 키 생성하십시오 .
  2. /home/youruser/.ssh/authorized_keys퍼티 이동 로그인을 사용하는 서버의 서버 측에 공개 키를 붙여 넣습니다 .
  3. 퍼티 설정에서 퍼티가 개인 키에 액세스 할 수있게합니다. 연결-> SSH-> 인증
  4. "인증 용 개인 키 파일"에서 개인 키 파일을 지정하여 개인 키를 추가하십시오.
  5. 퍼티 연결 설정을 저장하십시오.

그런 다음 퍼티를 통해 연결을 두 번 클릭하면 사용자 이름 / 암호를 입력하지 않고도 터미널로 바로 연결됩니다.

이제와 같은 키보드 조합으로 해당 연결에 퍼티에 로그인을 연결할 수 F6있습니다. 그래서 와이파이가 나 빠지고 떨어질 때. F6을 매시하고 다시 로그인했습니다.

그러나 여전히 터미널 상태를 잃어 버립니다! 그것을 고치는 방법? "스크린"프로그램을 사용하십시오. 'screen'을 입력하여 새 화면을 만드십시오. 새로운 화면이 생성됩니다.

쫓겨나고 자동 로그인하면 화면에 다시 연결할 수 있습니다. 이를 수행하는 방법에 대한 학습서는 다음과 같습니다. http://www.tecmint.com/screen-command-examples-to-manage-linux-terminals/

screen떨어질 때마다 입력 하고 다시 연결 하는 것이 번거 롭습니다 . 따라서 "자동으로 마지막 사용 가능한 화면으로 다시 이동"하는 스크립트를 작성하여 투명하게 만들 수 있습니다.

그러면 퍼티 터미널이 얼어 붙을 때. 다음과 같이 보일 것입니다 : 당신은 경멸을 일으키고, Alt + F4를 으깨어 퍼티를 닫습니다. 그리고 6 초 후에 당신은 당신이 멈춘 곳으로 돌아 왔습니다.

이론적으로 더 나은 솔루션

이론적으로는 위의 전체 프로세스를 스크립트로 작성하여 터미널이 삭제 된 시점을 감지하고 인터넷 연결 복원시 위의 모든 단계를 수행합니다. 누군가가 이것을하는 프로그램을 알고 있다면 자동으로 알려주십시오. 깔끔 할 것입니다.

출처 :

http://the.earth.li/~sgtatham/putty/0.58/htmldoc/Chapter4.html#config-keepalive

http://rafaelwolf.com/?p=516


안녕하세요, 이렇게했지만 여전히 소프트웨어 연결 종료 오류가 발생합니다
tuskiomi

또한 다음 연결을 위해 연결 유지 사이의 초를 저장할 수 없습니다.
ZhaoGang

10

PuTTY 네트워크 오류 문제 해결

Software caused connection abort

오류에 대해 PuTTY의 의견을 읽어보십시오.

이것은 어떤 이유로 인해 설정된 연결을 끊을 때 Windows 네트워크 코드에서 발생하는 일반적인 오류입니다. 예를 들어, 이더넷으로 연결된 컴퓨터의 뒷면에서 네트워크 케이블을 뽑거나 Windows가 전체 네트워크에 도달 할 수없는 다른 이유가있는 경우에 발생할 수 있습니다.

Windows는 응답하는 연결의 다른 쪽 끝에있는 시스템에서이 오류가 발생하면이 오류를 생성합니다. 클라이언트와 서버 사이의 네트워크가 다운되고 클라이언트가 일부 데이터를 보내려고하면 Windows는 여러 번 데이터를 보내려고 시도한 다음 연결을 포기하고 끊습니다. 특히 SSH-2를 사용 중이고 PuTTY가 키 재 교환을 시도하는 경우 아무 것도 입력하지 않아도 발생할 수 있습니다.

(연결에서 keepalives를 사용하는 경우에도 발생할 수 있습니다. 다른 사람들이 keepalives가이 오류를 수정했다고보고했습니다 (keepalives의 장단점이 있습니다).

우리는 PuTTY의 버그를 나타내는이 오류가 발생하는 이유를 알지 못합니다. 문제는 Windows 시스템, 네트워크 및 원격 시스템 사이에 있습니다.

다른 SSH 클라이언트를 사용해보십시오

PuTTY와 대상 SSH 서버 사이에 문제가있을 가능성이 높습니다. 이에 대한 증거를 제공하려면 ( http://kitty.9bis.net )과 같은 다른 SSH 클라이언트를 사용 하여 문제가 발생하는지 확인하십시오. 아마도 PuTTY에서 문제를 격리시킬 것입니다.

의심스러운 인터넷 연결

인터넷 연결에 문제가있을 수 있습니다. 인터넷 연결 인터넷 연결의 가동 시간을 모니터링하는 것은 ISP가 패킷을 잃어 버렸는지 여부를 판단하는 좋은 방법이며 PuTTY가 다운되는 것에 대한 책임이 있습니다. 인터넷 연결 가동 시간을 테스트하는 소프트웨어를 구입하십시오. 예를 들면 다음과 같습니다. http://code.google.com/p/internetconnectivitymonitor/. 인터넷 연결이 자주 끊어지면 ISP 서비스 요구 사항이 위반됩니다. 이 경우 기술 지원 부서가 컴퓨터, OS, 라우터 및 가정의 배선에 대한 이러한 종류의 문제를 자동으로 비난하므로 ISP의 결함임을 입증하기가 어렵습니다. 케이블 인터넷을 사용하고 바운티에 살고있는 경우, 이웃 가정의 결함있는 하드웨어가 처음 전원을 켤 때 몇 초 / 분 동안 회선에 고정 전송 될 수 있습니다. 마지막으로, ISP의 네트워크에 가정에 대한 하드웨어 결함이있을 수 있습니다. ISP가 하드웨어를 교체하는 데 드는 비용이 너무 높아서, 비용을 지불 할만큼 충분한 가입자가없는 경우가 종종 있습니다.

유무선 라우터를 의심

유무선 라우터를 통해 연결하고 있습니까? 몇 살입니까? 라우터가 문제 일 수 있습니다. 구식 무선 및 유선 기술은 구식 연결을 산발적으로 끊어 다시 시작하여 PuTTY를 죽일 수 있습니다. 방정식에서 이러한 구성 요소를 제거하고 문제가 해결되는지 확인하십시오. 유선 연결 및 / 또는 다른 라우터를 사용하여 문제가 해결되는지 확인하십시오. Linksys 무선 라우터에 이러한 느린 연결 장애가 발생하여 연결을 끊고 다시 시작했습니다.

SSH 연결을 제공하는 운영 체제를 의심하십시오

SSH로 연결하는 컴퓨터에는 몇 초 동안 SSH 연결을 유지하기위한 정책이 있습니다. 이 숫자는 보안상의 이유로 낮게 설정되어 있으므로 늘릴 수 있습니다. 이 설정은 SSH를 제공하는 운영 체제에 따라 다릅니다.

가상 머신을 통해 PuTTY를 사용하는 경우

가상 머신을 통과하는 PuTTY를 사용하는 경우 가상 머신에 비활성 상태라고 생각할 때 서버에 대한 SSH 연결을 끊는 정책이있을 수 있습니다. 이 값을 늘리는 것은 사용중인 가상 머신 소프트웨어 및 운영 체제에 따라 다릅니다.

인터넷 연결이 잘못된 경우 SSH 클라이언트 연결 해결 방법 :

ISP가 불안정한 연결을 제공하는 경우 "ssh autologin"을 사용하면 연결이 덜 어려워 질 수 있습니다. 당신이하는 일은 공개 및 개인 키를 생성하는 것입니다. 그리고 당신은 외국 서버에 정확한 개인 키를 제공하는 사람을 자동으로 허용하도록 지시합니다. 문제가 완전히 해결되지는 않지만 인터넷 중단이 발생하면 창을 닫고 아이콘을 두 번 클릭하기 만하면 사용자 이름 / 암호를 입력하지 않고 홈 폴더 명령 줄로 즉시 돌아갑니다.

이것은 그와 함께 당신을 도울 것입니다 : 암호를 사용하여 퍼티에서 "자동 로그인"에 방법이 있나요?


4

관리자 권한 명령 프롬프트에서 다음을 실행하십시오.

C:\Windows\system32>netsh int tcp show global

Querying active state...

TCP Global Parameters
----------------------------------------------
Receive-Side Scaling State          : enabled

Chimney Offload State               : automatic

NetDMA State                        : enabled

Direct Cache Acess (DCA)            : disabled

Receive Window Auto-Tuning Level    : normal

Add-On Congestion Control Provider  : none

ECN Capability                      : disabled

RFC 1323 Timestamps                 : disabled

Receive Window Auto-Tuning Level정상인 경우 문제가 발생합니다. 사용 중지하면 다음과 같이 모든 것이 작동합니다.

C:\Windows\system32>netsh int tcp set global autotuninglevel=disabled

5
왜 이것이 작동하는지 / 무엇을 설명 할 수 있습니까?
Eiyrioü von Kauyf

3
support.microsoft.com/kb/947239 여기에 이에 대한 설명이 있습니다
bksi

내 경우에는 도움이되지 않습니다.
reinierpost

4

Windows PC의 CentOS 서버에서 일했으며 PuTTY에서도 같은 문제가있었습니다. 세션은 1-5 분 이상 지속되지 않았습니다. PuTTY 설정 (keepalives 등)으로 게임을 시도했지만 전혀 도움이되지 않았습니다.

마침내 나는 내 사건에 대한 해결책을 찾았습니다. 클라이언트와 서버 모두에서 TCP 덤프를 기록했습니다. 나는 연결을 끊기 전에 25-30 초 동안 클라이언트 덤프 (클라이언트와 서버 측 모두에서)에 TCP 세그먼트의 재전송이 여러 번 있음을 발견했으며 마지막으로 PuTTY는 RST를 보내고 해당 오류로 세션을 닫습니다. 서버 덤프 에서이 기간 동안 클라이언트의 세그먼트, 심지어 RST를 보지 못했습니다. 이는 클라이언트에서 TCP 세그먼트가 서버로 전달되지 않는 시간을 의미하며이 기간은 약 30-60 초입니다. 사건을 여러 번 기록했으며 PuTTY의 재전송과 최종 RST가 항상있었습니다. 라우트 패킷의 어딘가가 네트워크 장비에 의해 삭제되었을 수 있습니다.

이 문제를 해결하기 위해 최대 5 개의 데이터 재전송 횟수를 기본값 5에서 16으로 늘 렸습니다. PuTTY의 연결이 너무 빨리 끊어지지 않을 수 있습니다. 변수는 'HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Tcpip \ Parameters \ TcpMaxDataRetransmissions'입니다. 이 변수를 수동으로 추가했는데 처음에는 Windows 레지스트리에 정의되지 않았습니다. 도움이되었습니다! 이제 PuTTY가 때때로 중단되는 것을 볼 수 있지만 항상 작동합니다.

문제를 해결하려면 : 1. TCP 덤프를 기록하고 연결을 끊기 전에 재전송 및 RST를 찾으십시오. 2. 동일한 재전송 / RST 세그먼트를 찾으면 서버 또는 클라이언트 측에서 재시도 횟수를 조정하십시오 (RST 측에 따라 다름).

주의 : TCP 설정 변경은 모든 소프트웨어 및 OS 자체에 적용됩니다.


3

오류 네트워크 오류 : 소프트웨어가 원인 연결이 중단 이 생길 경우 퍼티에서이 결과 IP 주소 충돌 네트워크가 (두 개 이상의 컴퓨터가 동일한 IP 주소를 가지고). (나는 같은 IP 주소 를 사용하도록 수동으로 설정된 일부 불량 장치 / 컴퓨터와 DHCP 서버 에 의해 할당 된 동일한 IP 주소를 가진 Raspberry Pi 에이 문제가있었습니다 .)

이 경우 Windows 7 컴퓨터에서 로컬로 또는 네트워크의 다른 장치와 IP 주소 충돌이 발생할 수 있습니다. Wireshark 를 사용하면 이러한 종류의 오류를 성공적으로 추적 할 수 있습니다.


2

오류 10053 WSAECONNABORTED(소프트웨어로 인한 연결 중단)는 여러 가지 이유로 발생할 수 있는 일반적인 Winsock 오류입니다.

공식 설명은 말한다 :

이 오류는 데이터 재전송이 실패한 후 Winsock이 설정된 연결을 닫을 때 (수신자가 데이터 스트림 소켓에서 보낸 데이터를 확인하지 않는 경우)와 같이 로컬 네트워크 시스템이 연결을 중단 할 때 발생할 수 있습니다.

이 문제의 원인은 네트워크 케이블 결함에서 단순한 연결 손실에 이르기까지 다양합니다. 단일 솔루션을 제공하는 것은 불가능합니다.


2

인터넷에 연결하기 위해 새로운 WLAN 라우터 / 3G 모뎀을 설치 한 후 PuTTY와 동일한 문제가 발생했습니다. 위의 모든 keep-alive 솔루션과 라우터의 구성 메뉴에있는 모든 솔루션을 시도했지만 아무런 효과가 없습니다.

그런 다음 유선 전화 모뎀이있을 때 90 년대에 무언가를 기억했습니다. MTU (최대 전송 단위), 기본적으로 전송 된 최대 데이터 청크 크기-연결 안정성에 현저한 영향을 미쳤습니다.

그래서 WLAN 라우터의 구성을 확인하고 MTU 설정을 찾아 고정 값 1424에서 "Auto"로 변경했습니다 (작은 값을 사용하려고했지만 "Auto"소리가 더 좋습니다). 그 후, PuTTY와 관련하여 더 이상 문제가 없었습니다. 이제 연결이 안정적입니다. 이것이 "네트워크 오류 : 소프트웨어로 인해 연결이 중단되었습니다"문제가있는 사람에게 도움이되기를 바랍니다.


2

연결 탭 : 활성 상태를 "5"초로 설정하고 활성화

그러나 더 중요한 것은 :

연결 -> SSH- > Kex , 키 재 입력 전 최대 시간 : "2"(기본값 : 60).

PuTTY가 잠시 후 키를 잃어 시간이 초과되었습니다. 해당 값을 "2"분으로 삭제하면 문제가 해결되었습니다. 나는 지금 무한정 연결되어 있습니다.


1

WinSCP 스크립트 또는 GUI 콘솔에서 동일한 문제가 발생했습니다 . 마지막으로 속도와 관련이 있음을 발견했습니다 (인터넷 속도-서버가 인터넷에 있음). 스크립트를 네트워크의 다른 위치, 다른 사이트로 옮겼으며 GUI와 스크립트가 제대로 작동하지 않았습니다.

많은 분석과 정렬 후에 정렬되었습니다.


0

TCPKeepAliveLinux 에서 활성화해야합니다 .

이 오류를 검색 할 때 웹 사이트의 PuTTy FAQ에 설명되어 있습니다.


그러나 TCPKeepAlive의 기본값은 yes입니다. 그러나 활성화했습니다. 그러나 이제 로그인 시간 초과가 첫 번째 문제입니다. 어떤 아이디어?
Robert

Linux 서버 방화벽과 Windows-7 클라이언트 방화벽을 모두 해제했지만 로그인 시간이 여전히 초과되었습니다! 정말 짜증나!
Robert

때때로 로그인 할 수 있지만 때때로 로그인 시간이 초과되었습니다! 나는 왜 그런지 정말로 모른다. 나를 미치게 해!
Robert

0

가상 시스템이 로컬 하드웨어에서 실행중인 경우 활성 패킷 유지를 비활성화하십시오.


6
답을 넓힐 수 있습니까? 향후 방문자에게 지침을 줄 수 있습니까?
Canadian Luke

OP와 반대되는 상황이 있습니다. VM은 호스트에 연결하는 ssh 클라이언트이며 클라이언트는 자주 연결을 끊습니다. 연결 유지를 비활성화하면 문제가 해결 된 것 같습니다. 왜 그런지 궁금합니다.
Raman

0

나는 실제로이 문제에 여러 번 직면하고있었습니다. 솔루션 시간을 검색했지만 그중 어느 것도 효과적이지 않았습니다. 나는 나를 위해 일한 솔루션을 공유하고 있으며 다른 사람들에게도 도움이되기를 바랍니다.

호스트 O / S로 Windows 10을, 게스트 O / S로 Redhat-7을 사용하고 VMware에서 브리지 연결을 사용했습니다. DBA는 클라이언트를 방문해야하며 클라이언트 구내 당 네트워크 구성을 설정해야합니다. 따라서 클라이언트 구내를 떠나 무선 및 열린 VM을 통해 다른 네트워크에 연결할 때마다 질문에 언급 된 것과 동일한 문제가 발생했습니다. 그래서 잠시 동안 생각하고 LAN 이더넷 및 무선 이더넷에 대한 구성을 확인했는데 불일치를 발견했습니다. 내 VM은 브리징을 위해 두 가지 중 물리적 이더넷을 자동으로 사용합니다. 따라서 LAN / 무선 이더넷의 네트워킹 구성을 DHCP로 재설정하면 매력처럼 작동하고 더 이상 연결이 중단되지 않습니다. [호스트 시스템을 DHCP로 설정 한 후 재부팅 할 수도 있습니다.]

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.