클로드스킬마트스킬 둘러보기바로 쓰는 문장영상으로 배우기터미널 사용법스킬이 뭐예요?
목록으로

터널 닥터 (Tailscale·프록시 충돌 진단)

macOS에서 Tailscale과 Shadowrocket·Clash·Surge·OrbStack이 충돌해 SSH·curl·docker·DNS가 멈출 때 원인 계층을 짚어 고쳐주는 네트워크 진단 스킬.

개발·코딩고급1,323212AI 점수 9/10마지막 업데이트: 2026. 8. 8.

무엇을 해주나

  • tailscale ping은 되는데 SSH/HTTP는 타임아웃, 브라우저는 503인데 curl은 200 같은 모순된 증상을 5개 충돌 계층(라우트 테이블 / HTTP 환경변수 / 시스템 프록시 / SSH ProxyCommand 이중 터널 / VM·컨테이너 프록시 전파)으로 분류합니다.
  • 증상별로 확인 명령과 정확한 수정안을 제시합니다: NO_PROXY.ts.net·100.64.0.0/10 추가, Shadowrocket skip-proxy 설정, route -n get으로 utun 소유자 확인(MTU 1280=Tailscale, 4064=Shadowrocket), OrbStack docker.jsonhost.internal 프록시, docker build --network host 등.
  • DNS 계층 문제(60초 지연, 198.18.x.x 가짜 IP 하이재킹, 죽은 supplemental resolver)와 "TUN DIRECT 반쪽 마비" 같은 고급 실패 모드까지 다룹니다.
  • TUN이 켜진 상태에서 nc -z 0.00s, 0.2ms ping, %{remote_ip} 같은 측정값이 거짓이라는 점을 경고하고, 대신 time_appconnect 등 신뢰 가능한 지표를 알려줍니다.
  • scripts/quick_diagnose.py로 환경변수·시스템 프록시 예외·직결/프록시 경로·로컬 TLS 신뢰를 한 번에 자동 점검합니다.

이런 분께 추천

  • macOS에서 Tailscale로 원격 개발(맥미니, WSL, 홈서버)하면서 프록시/VPN 앱을 상시 켜두는 개발자
  • Shadowrocket·Clash·Surge 환경에서 git push가 간헐적으로 죽거나 docker pull/build가 TLS 타임아웃 나는 분
  • 네트워크 이슈를 감으로 추측하지 않고 증거 기반으로 계층을 좁혀가는 절차를 원하는 분

활용 예시

  1. "브라우저에서 http://100.x.x.x:3010은 503인데 curl은 200이야" → 시스템 프록시 우회 문제로 판정하고 skip-proxy에 CGNAT 대역 추가를 안내.
  2. "ssh -T git@github.com은 되는데 git pushfailed to begin relaying via HTTP로 실패해" → ProxyCommand 이중 터널 진단 후 ssh.github.com:443 구성으로 전환.
  3. "docker buildRUN apk add가 0.2초 만에 Connection refused" → OrbStack 투명 프록시 파손을 확인하고 --network host 또는 docker.json 수정 적용.
  4. "nslookup은 즉시인데 ssh/curl은 60초 멈춤" → resolver별 이분 탐색으로 죽은 supplemental resolver를 특정.

· · · 설치 가이드 · · ·

설치 없이 지금 한 번 써보기

아래를 Claude에 붙여넣으면 설치하지 않고도 이 스킬을 그대로 씁니다.

이 파일의 지시를 읽고 그대로 따라서 나를 도와줘:
https://raw.githubusercontent.com/daymade/claude-code-skills/HEAD/tunnel-doctor/SKILL.md

내가 원하는 것: (여기에 하고 싶은 일을 쓰세요)

Claude가 링크를 열지 못하면, 링크를 직접 열어 내용을 복사해 붙여넣으세요.

쓸 만하면 아래에서 ZIP을 받아 설치하세요. 그러면 매번 붙여넣지 않아도 알아서 작동합니다.

Claude 앱에 설치 (터미널 필요 없음)
  1. 아래 버튼으로 ZIP 파일을 받으세요.
  2. Claude 설정 → Capabilities에서 '코드 실행 및 파일 생성'을 켭니다. (한 번만)
  3. Claude에서 Customize → Skills → + → '스킬 업로드'를 누르고 받은 ZIP을 올립니다.
ZIP 내려받기
Claude Code에 설치

Claude에게 맡기기 — 아래 문장을 Claude Code에 붙여넣으세요

클로드스킬마트에서 찾은 스킬을 설치해줘.
GitHub 저장소 daymade/claude-code-skills 의 tunnel-doctor 폴더를 내 ~/.claude/skills/tunnel-doctor/ 에 그대로 복사해줘.
설치가 끝나면 이 스킬로 무엇을 할 수 있는지 한 줄로 알려줘.

직접 명령으로 설치하기

git clone https://github.com/daymade/claude-code-skills.git && mkdir -p ~/.claude/skills && cp -r claude-code-skills/tunnel-doctor ~/.claude/skills/

제3자가 만든 스킬입니다. 설치 전 원본 저장소를 한 번 확인하세요.

  1. 터미널을 엽니다.
  2. 스킬 저장소를 내려받습니다: git clone https://github.com/daymade/claude-code-skills.git
  3. 스킬 폴더를 만듭니다: mkdir -p ~/.claude/skills
  4. 이 스킬만 복사합니다: cp -r claude-code-skills/tunnel-doctor ~/.claude/skills/
  5. (권장) 함께 참조되는 기본 스킬도 있으면 복사합니다: cp -r claude-code-skills/debugging-network-issues ~/.claude/skills/ 2>/dev/null
  6. python3 --version으로 파이썬3이 있는지 확인합니다(자동 진단 스크립트용).
  7. Claude Code를 재시작한 뒤 "Tailscale은 ping 되는데 SSH가 타임아웃돼"처럼 증상을 말하면 스킬이 발동합니다.
  8. 라우팅·~/.zshrc·~/.ssh/config·프록시 앱 설정을 수정할 수 있으니, 적용 전 해당 파일을 백업하고 제안된 명령을 직접 검토하세요.