사무실에서 Wi-Fi를 사용할 때 SCP를 사용하여 서버와 파일을 복사할 수 있지만 어떤 이유로 SSH가 응답하지 않게 됩니다. 그냥 멈추고 아무것도 인쇄하지 않으며 ctrl-c
종료할 수 없습니다. 터미널 창을 닫아야 합니다.
LAN에 연결하면 모든 것이 잘 작동합니다. 무슨 일이 일어나고 있는지 알아내는 방법에 대한 아이디어가 있습니까?
답변1
마침내 문제의 원인을 찾았습니다. 이는 무선으로 연결할 때 라우터가 TCP 연결 유지 메시지를 차단하기 때문입니다(그림 참조).
ssh my_server -o TCPKeepAlive=no
내 모든 문제를 해결했습니다. 응!
문서에서:
TCPKeepAlive
Specifies whether the system should send TCP keepalive messages
to the other side. If they are sent, death of the connection or
crash of one of the machines will be properly noticed. However,
this means that connections will die if the route is down tem-
porarily, and some people find it annoying. On the other hand,
if TCP keepalives are not sent, sessions may hang indefinitely on
the server, leaving "ghost" users and consuming server resources.
The default is "yes" (to send TCP keepalive messages), and the
server will notice if the network goes down or the client host
crashes. This avoids infinitely hanging sessions.
To disable TCP keepalive messages, the value should be set to
"no".
답변2
붙여넣기 내용을 보면 공개 키가 승인된 것이 분명합니다. -vv에서 볼 수 없기 때문에 이것이 PTY 할당과 관련이 있을 수 있다는 느낌이 듭니다.
debug2: PTY allocation request accepted on channel 0
유선+무선 diff
2개의 출력을 낼 수 있나요?
답변3
서버 측에서 /etc/ssh/sshd_config를 확인하고 클라이언트 측에서 /etc/ssh/ssh_config를 확인하십시오. (클라이언트를 잊지 마세요)
Wi-Fi와 이더넷의 유일한 차이점은 IP 주소입니다.
Wi-Fi에 TX/RX 오류가 발생하는 경우에도 문제가 될 수 있습니다. (희귀한)
답변4
6년이 지난 지금, 저는 비슷해 보이지만 궁극적으로는 그렇지 않은 문제와 씨름하고 있습니다. 하지만 누군가가 유용하다고 생각할 것이라는 희망으로 이것을 제공합니다.
scp는 실행할 수 있지만 ssh는 실행할 수 없습니다. 그러다가 ssh user@server 'ls -l'과 같은 ssh를 통해 명령을 실행할 수 있다는 것을 깨달았습니다.
문제는 .bashrc에 있습니다. 여기에는 다음 줄이 포함되어 있습니다.
HISTSIZE=-1
HISTFILESIZE=-1
무제한 기록을 비활성화하면 문제가 해결되는 것 같습니다.