문제 해결

SSH "Connection timed out": 원인과 해결법

Timed out은 당신의 패킷이 아무 응답도 받지 못했다는 뜻입니다 ── refused와 다릅니다. 다섯 가지 원인: 외부에서의 사설 IP(모바일 최다 사례), 잘못된/변경된 IP, 다운된 호스트, 방화벽 DROP, 네트워크의 포트 22 차단 ── 그리고 해결법.

CC Chen Chen· 창업자·2026년 6월 24일·5분 분량

"Connection timed out"의 의미

타임아웃은 당신의 패킷이 아무 응답도 받지 못했다는 뜻입니다 ── 어딘가에서 폐기되었거나, 아무것도 존재하지 않는 주소로 보내졌습니다. 이것이 Connection refused(능동적인 "여기서는 아무것도 수신 대기하지 않는다"는 응답)와의 핵심 차이입니다. refused는 머신에 도달할 수 있음을 증명하지만, timed out은 아무것에도 도달할 수 없음을 증명합니다. 원인은 모두 "당신의 트래픽이 그 머신에 닿지 못한다"의 변형입니다: 잘못된 IP, 다운된 호스트, 조용히 폐기하는 방화벽, 또는 ── 모바일에서 가장 흔한 경우 ── 네트워크 외부에서 사설 주소로 연결하려는 것.

원인, 가능성이 높은 순서

#원인전형적인 상황
1외부에서 사설 IP로집 Wi-Fi에서는 되지만 셀룰러에서 타임아웃
2잘못된 IP / IP 변경됨DHCP가 머신에 새 주소를 부여
3호스트가 다운 / 절전노트북 덮개를 닫음, Pi가 전원을 잃음
4방화벽이 DROP으로 설정됨SSH 규칙이 없는 클라우드 보안 그룹
5네트워크가 포트를 차단22 아웃바운드를 막는 회사/호텔 네트워크

1 ── 전형적 사례: "집에서는 되는데 밖에서는 타임아웃"

192.168.x.x, 10.x.x.x, raspberrypi.local 같은 주소는 당신의 집 네트워크 내부에만 존재합니다. 셀룰러나 다른 어떤 네트워크에서든, 이들로 보낸 패킷은 갈 곳이 없어 ── 반드시 타임아웃됩니다. 깔끔한 해결책은 포트 포워딩(SSH를 인터넷에 노출)이 아니라 메시 VPN입니다: 머신과 휴대폰을 모두 Tailscale에 넣고, 어디서든 그 안정적인 사설 100.x 주소로 연결합니다. TermAI는 Tailscale을 내장하고 있어 휴대폰 쪽에는 추가 앱이 필요 없습니다.

휴대폰에서 Tailscale을 통해 라우팅된 SSH 연결이 성공적으로 이루어지는 모습
가장 흔한 타임아웃 원인에 대한 해결책: Tailscale을 통하면 머신은 집 Wi-Fi든 셀룰러든 어디서나 작동하는 하나의 안정적인 주소를 갖습니다 ── 포트 포워딩 불필요.

2 ── IP와 호스트가 켜져 있는지 확인

같은 네트워크에서 그 주소로 ping합니다. 응답이 없으면 대개 잘못된/변경된 IP이거나 전원이 꺼진 머신입니다 ── 라우터의 기기 목록을 확인하거나, 머신에서 hostname -I를 실행합니다. 절전 정책도 기억하세요: 덮개를 닫고 "절전 방지"가 꺼진 Mac은 응답하지 않습니다. 전원이 불안정한 Pi는 조용히 죽었을 수 있습니다.

3 ── 거부가 아니라 폐기하는 방화벽

클라우드 제공업체의 보안 그룹은 허용되지 않은 트래픽을 폐기하며, 이는 (거부가 아니라) 타임아웃처럼 보입니다. VPS가 22에서 타임아웃되면 무엇보다 먼저 제공업체 대시보드의 방화벽 규칙을 확인하세요. 머신 자체에서도 sudo ufw status ── SSH 허용 규칙 없는 DROP 정책은 같은 동작을 합니다.

4 ── 당신이 있는 네트워크가 차단

일부 회사, 학교, 호텔 네트워크는 아웃바운드 포트 22를 차단합니다. 셀룰러로 전환해 테스트하세요: 갑자기 작동하면 네트워크가 문제였습니다. 장기적 선택지: 당신이 관리하는 서버에서 SSH를 443으로 실행하거나, 또는 ── 더 깔끔하게 ── 포트를 열지 않고 이런 네트워크를 통과하는 Tailscale입니다.

60초 진단

ping HOST              # any reply? host exists and is reachable
nc -vz HOST 22         # port answers? ("succeeded" / "refused" / hangs = dropped)
# hangs on every port → routing/firewall; refused on 22 → see the refused guide

휴대폰에서는 그 네트워크 상에서 당신이 도달할 수 있는 아무 머신에서나 이를 실행하세요 ── 또는 TermAI 어시스턴트에게 정확한 프로브 명령을 물어 그 머신에서 실행하게 하세요.

자주 묻는 질문

왜 SSH가 집에서는 되는데 모바일 데이터에서는 타임아웃되나요?
당신은 집 네트워크 밖에는 존재하지 않는 사설 LAN 주소에 연결하고 있습니다. Tailscale(TermAI에 내장)을 사용해 머신에 어디서나 도달 가능한 안정적인 주소를 부여하세요.

timed out과 refused의 차이는 무엇인가요?
Timed out = 아무 응답도 없음(도달 불가, 폐기됨, 또는 잘못된 주소). Refused = 머신은 응답했지만 그 포트에서 아무것도 수신 대기하지 않음.

왜 제 VPS가 포트 22에서 타임아웃되나요?
대개 제공업체의 보안 그룹/클라우드 방화벽에 SSH 규칙이 없습니다 ── 그 트래픽은 OS가 보기 전에 조용히 폐기됩니다.

핵심 요약

  • 의미: 패킷이 응답을 받지 못함 ── 도달 불가 호스트, 폐기된 트래픽, 또는 잘못된 주소
  • 모바일 최다 원인: 외부에서 사설 LAN IP로 → 포트 포워딩이 아니라 Tailscale 사용
  • 클라우드 원인: 보안 그룹 DROP(제공업체 대시보드 확인)
  • 진단: ping + nc -vz host 22 ── 멈춤=폐기, refused=refused 가이드 참조
Try TermAI

Free on iOS and Android. 5 AI requests/day on the free tier, plus unlimited SSH/SFTP and built-in Tailscale.

CC
Chen Chen — Founder of TermAI

Writes about mobile DevOps, terminal UX, and the surprising depth of "boring" infrastructure.

Was this useful? ← Back to blog