이 글 미리보기

Shadowrocket의 연결 스위치를 켜면 시스템에서 해당 네트워크 경로를 사용하도록 설정되지만, 선택한 서버와 DNS, 접속하려는 웹사이트가 정상 응답한다는 뜻은 아닙니다. 이미 이용 중인 서비스와 구독이 있는 사용자를 대상으로 기본 네트워크 상태를 비교한 뒤 서버, Global Routing, DNS, 규칙 순서로 문제를 좁혀 갑니다. 한 번에 한 항목만 바꾸고, 문제가 재현되는 조건을 기록하세요.

기본 네트워크를 확인한 다음 네 단계로 점검하기

처음부터 구성을 삭제하거나 구독을 반복해서 업데이트하지 마세요. 현재 네트워크, Home에서 선택한 서버, Global Routing 상태, Config에서 사용 중인 구성 파일을 먼저 기록합니다. 이후 같은 웹 주소를 사용해 새로 요청하세요. 그래야 브라우저 캐시로 저장된 페이지를 연결 복구로 착각하지 않습니다.

Shadowrocket 연결을 끄고 현재 네트워크에서 원래 접속할 수 있었던 웹페이지를 열어 보세요. 그래도 열리지 않으면 Wi-Fi 로그인 인증, 셀룰러 데이터 권한 또는 네트워크 자체 문제부터 해결해야 합니다. 연결을 끄면 정상이고 켜면 문제가 생길 때 앱의 트래픽 전달 경로를 점검하세요. 원래 직접 접속할 수 없던 웹사이트로는 이 비교를 할 수 없습니다.

  1. 현재 상태 기록

    Home에서 선택한 서버와 Global Routing을, Config에서 현재 구성 이름을 기록하세요. 메모는 기기에만 보관하고 구독 주소, 비밀번호, 전체 구성은 공개하지 마세요.

  2. 자동 연결 끄기

    Settings → On Demand로 이동해 자동 연결 조건을 기록한 뒤 잠시 비활성화하고, Home으로 돌아가 연결 스위치를 끄세요. 그렇지 않으면 시스템이 연결을 다시 설정해 연결을 끈 상태의 비교가 성립하지 않습니다.

  3. 기본 네트워크 테스트

    Safari에서 직접 접속할 수 있는 같은 웹페이지를 새로고침하세요. Wi-Fi와 셀룰러 데이터를 각각 테스트합니다. 네트워크를 바꿀 때는 이전 요청을 중단한 뒤 새 요청을 보내세요.

  4. 연결 다시 켜기

    Home으로 돌아가 연결을 켠 다음 같은 주소로 다시 테스트하세요. 이후 서버, 모드, DNS, 규칙 순서로 확인하고 테스트할 때마다 결과를 기록합니다.

1단계: 서버와 실제 트래픽 전달 확인

Home에 서버 항목이 있다고 해서 해당 서버가 현재 작동한다는 뜻은 아닙니다. 먼저 예상한 항목이 실제로 선택되어 있는지 확인한 다음, 이용 중인 서비스에서 제공한 서버 주소, 포트, 인증 정보, 프로토콜 매개변수를 점검하세요. 서버 도메인 오타, 잘못된 포트, 만료된 인증 정보가 있으면 연결 스위치는 켜져 있어도 요청을 처리하지 못할 수 있습니다.

Shadowsocks, VMess, VLESS, Trojan, Hysteria2, WireGuard는 서로 다른 항목을 사용하므로 설정값을 임의로 바꿔 적용할 수 없습니다. 기존 서비스 매개변수와 대조해 확인하세요. 예를 들어 TLS를 사용하는 구성은 서버 이름과 관련 검증 설정도 점검해야 합니다. 문제 해결을 위해 인증서 검증을 함부로 끄지 마세요. 기기 날짜가 크게 어긋나 있다면 먼저 시간을 바로잡은 뒤 다시 연결하세요.

  • 포트는 기존 서비스 설정을 기준으로 확인하세요: 웹사이트 HTTPS의 목적지 포트는 보통 443이지만, 프록시 서버의 접속 포트는 다를 수 있으므로 모두 443으로 바꾸면 안 됩니다.
  • 지연 시간 결과만으로 정상 여부를 단정할 수 없습니다: 지연 시간이 표시된다는 것은 해당 테스트의 탐색 과정에서 응답을 받았다는 뜻일 뿐, 대상 웹사이트와 DNS, 실제 서비스 요청이 모두 정상이라는 증거는 아닙니다.
  • 이미 보유한 서버 항목만 비교하세요: 다른 조건은 그대로 두고 기존 서버 하나를 전환해 보세요. 서버를 바꿀 때 증상이 달라진다면 먼저 기존 항목의 설정값과 서비스 상태를 확인하세요.
  • 업데이트 후 선택 항목을 다시 확인하세요: 구독을 업데이트하면 항목의 내용이 바뀔 수 있습니다. 업데이트가 끝나면 Home으로 돌아가 예상한 서버가 여전히 있고 선택되어 있는지 확인한 뒤 다시 테스트하세요.

구독 업데이트 실패와 서버가 트래픽을 전달하지 못하는 문제는 서로 다릅니다. 저장된 서버는 계속 사용할 수 있어도 구독 주소에 일시적으로 접속할 수 없을 수 있습니다. 반대로 업데이트에 성공해도 새로 받은 서버가 모두 작동한다는 뜻은 아닙니다. 이용 중인 서비스에서 설정 변경을 확인한 경우에만 구독을 업데이트하고, 연결 점검 대신 반복해서 새로고침하지 마세요.

2단계: Global Routing으로 모드 문제 구분

Home → Global Routing에서 현재 상태를 확인하세요. 원인을 좁히려면 Direct, Proxy, Config를 잠시 비교할 수 있습니다. 모드를 바꾼 뒤 웹페이지를 새로 불러오세요. 기존 장시간 연결은 이전 경로를 계속 사용할 수 있으므로 이미 열려 있는 채팅이나 동영상 연결만 확인해서는 안 됩니다. 테스트가 끝나면 원래 설정으로 복구해 임시 Proxy 설정을 최종 해결책으로 남기지 마세요.

모드점검 목적결과 해석
Direct직접 연결 경로 확인직접 접속할 수 있는 웹페이지도 열리지 않는다면 기본 네트워크와 DNS부터 확인하세요. 이는 앱을 완전히 끈 상태의 기준 테스트와 같지 않습니다.
Proxy선택한 프록시 경로 확인같은 웹페이지가 Direct에서는 열리고 Proxy에서는 열리지 않는다면 선택한 서버와 연결 매개변수를 중점적으로 확인하고 DNS도 계속 점검하세요.
Config현재 구성의 규칙 분기 확인Proxy에서는 열리지만 Config에서는 열리지 않는다면 규칙 적용, 정책 대상, 구성의 DNS 설정 차이를 먼저 확인하세요.
Scene저장된 시나리오 조건에 따라 동작현재 네트워크에서 어떤 시나리오가 실행되는지와 관련 설정을 먼저 확인하세요. 문제를 점검할 때는 자동 전환의 영향을 줄이도록 모드를 명확하게 고정하세요.

결론: 문제가 발생하는 경로부터 확인

같은 네트워크, 같은 웹페이지, 같은 서버에서 Proxy는 열리지만 Config는 열리지 않는다면 Config로 이동해 적용된 규칙부터 확인하세요. 서버 매개변수를 곧바로 다시 입력하지 마세요. 어떤 모드에서도 실패한다면 서버 연결과 DNS를 다시 확인해야 하며, 스위치 상태만으로 정상 여부를 판단할 수 없습니다.

3단계: DNS 문제와 연결 문제 구분

DNS는 도메인을 주소로 변환합니다. 서버 자체가 도메인 이름을 사용하는 경우 프록시 연결을 시작하기 전에 서버 주소를 먼저 조회해야 할 수도 있습니다. 따라서 웹페이지가 열리지 않는 문제가 반드시 대상 웹사이트 측에서 발생하는 것은 아닙니다. 서버 도메인과 대상 도메인이 각각 예상한 주소로 변환되는지 확인한 뒤 연결이 성공하는지 살펴보세요.

Config에서 현재 구성의 DNS 설정을 확인하고 Settings의 DNS 관련 설정도 함께 점검하세요. 사용하지 않는 구성만 변경한 것은 아닌지 확인해야 합니다. 기존 값을 기록하고 DNS 관련 옵션은 한 번에 하나씩만 조정하세요. 기존 DNS는 보통 포트 53을 사용하고 DoH는 HTTPS를 사용합니다. 네트워크에서 DNS 서비스에 접속할 수 있는지와 DNS 서비스가 반환하는 결과 모두 중요합니다.

53
기존 DNS에서 흔히 사용하는 포트이며 모든 이름 해석 방식이 이 포트를 사용하는 것은 아닙니다
443
HTTPS에서 흔히 사용하는 목적지 포트이며, 이것만으로 프록시 접속 포트를 판단할 수는 없습니다
2가지
서버 도메인과 대상 웹사이트 도메인의 이름 해석을 각각 확인하세요
  • 도메인 조회 실패가 서버 오프라인을 뜻하지는 않습니다: DNS 조회 단계에서 오류가 발생하면 연결이 서버에 도달하기 전입니다. 먼저 도메인 철자와 이름 해석 경로를 확인하세요.
  • IP 주소로 접속한 결과만으로 판단하지 마세요: HTTPS는 보통 인증서 검증과 사이트 선택에 도메인을 사용합니다. 웹 주소를 IP로 바꾼 뒤 오류가 발생해도 DNS 문제라고 단정할 수 없습니다.
  • 주소 체계 차이에 유의하세요: 같은 도메인에서 IPv4와 IPv6 주소가 모두 반환될 수 있습니다. 특정 네트워크에서만 문제가 생긴다면 실제로 시도한 주소와 연결 결과를 기록하고, IPv6 관련 설정을 모두 삭제하지 마세요.
  • 변경 후 새 요청을 보내세요: 연결을 다시 설정하고 새 요청을 보내세요. 브라우저와 시스템 캐시가 확인 결과에 영향을 줄 수 있으므로 한 번의 페이지 결과만으로 모든 DNS 정보가 갱신됐다고 볼 수 없습니다.

4단계: Config의 규칙 순서와 최종 적용 확인

Config에서만 문제가 발생한다면 먼저 Config에서 활성화한 파일이 방금 확인한 파일인지 살펴본 다음 규칙 순서를 확인하세요. 규칙은 일반적으로 순서대로 일치 여부를 확인하며, 먼저 일치하는 항목이 트래픽의 경로를 결정합니다. 구성에 규칙이 있다고 해서 요청이 반드시 그 규칙까지 도달하는 것은 아닙니다. 앞에 있는 포괄적인 규칙이 요청을 먼저 처리할 수 있습니다.

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.0.2.0/24,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY

이 내용은 문법 설명을 위한 예시이며 완전한 구성이 아니므로 사용 중인 파일을 그대로 덮어쓰지 마세요. example.com과 192.0.2.0/24는 문서용 예시입니다. 실제 규칙은 점검할 대상과 자신의 정책에 맞게 작성해야 합니다.

  • DOMAIN-SUFFIX: 지정한 도메인과 하위 도메인에 일치합니다. 웹사이트가 다른 리소스 도메인에도 의존할 수 있으므로 첫 페이지 도메인만 처리해서는 이미지나 로그인 요청이 정상화되지 않을 수 있습니다.
  • IP-CIDR: 주소 대역을 기준으로 일치합니다. 예시의 no-resolve는 해당 규칙과 일치시키기 위해 도메인 조회를 별도로 시작하지 않는다는 뜻이며, 전역 DNS를 끄는 스위치가 아닙니다.
  • GEOIP: 주소의 지리적 위치 데이터에 따라 일치 여부를 판단하며, 웹페이지 언어나 사이트 이름을 기준으로 하는 것은 아닙니다.
  • FINAL: 앞선 규칙과 일치하지 않은 트래픽을 처리하므로 지정된 대상이 예상과 맞는지 확인하세요.

규칙이 지정하는 대상이 사용 가능한 정책인지도 확인해야 합니다. DIRECT는 직접 연결, PROXY는 프록시 처리를 뜻합니다. 구성에서 사용자 지정 정책 그룹 이름을 사용한다면 규칙 왼쪽의 도메인뿐 아니라 이름이 정확한지와 그룹에서 현재 무엇을 선택했는지도 확인하세요. 요청 대상 도메인, 일치한 규칙, 최종 경로를 기록한 뒤 필요한 부분만 수정하세요.

오류 메시지 원문으로 실패 단계 파악

아래는 네트워크 오류 기록에 나타날 수 있는 원문 예시이며, 모든 화면에 동일한 메시지가 표시되는 것은 아닙니다. 오류 앞뒤의 상황을 함께 확인해 DNS, 서버 접속 지점, 대상 웹사이트 중 어느 단계에서 발생했는지 살펴보세요. 같은 시간 초과 메시지도 발생 단계에 따라 해결 방법이 다릅니다.

오류: connection refused

원인: 해당 연결이 거부 응답을 받았습니다. 대상 포트에서 서비스가 실행되고 있지 않거나 연결이 명시적으로 거부될 때 흔히 발생합니다.

해결 방법: 기록된 주소가 어느 쪽에 해당하는지 먼저 확인하세요. 서버 접속 지점이라면 Home에서 해당 항목의 포트를 확인하고 이용 중인 서비스에 문의해 상태를 확인하세요.

오류: i/o timeout

원인: 네트워크에서 데이터를 읽거나 쓰는 도중 대기 시간이 초과된 상태입니다. 이 메시지만으로는 패킷 손실, 서버 무응답, 상위 연결 문제를 구분할 수 없습니다.

해결 방법: 서버와 웹페이지를 고정하고 Wi-Fi와 셀룰러 데이터를 각각 테스트하세요. 오류 직전에 기록된 대상 주소와 함께 확인해 어느 단계에서 시간이 초과됐는지 파악하세요.

오류: no such host

원인: 이름 해석에 사용할 수 있는 결과를 얻지 못했습니다. 도메인을 잘못 입력했거나 도메인이 존재하지 않거나 이름 해석 경로에 문제가 있을 수 있습니다.

해결 방법: 먼저 조회하려던 전체 도메인을 확인한 다음 현재 구성의 DNS 설정을 점검하세요. 서버 포트나 인증 비밀번호부터 바꾸지 마세요.

재테스트와 자주 묻는 질문

연결이 복구되면 임시 변경을 원래 순서대로 되돌린 뒤 평소 사용하는 Config에서 확인하세요. 이전에 열리지 않던 웹페이지와 직접 접속할 수 있는 웹페이지를 각각 하나 이상 점검하고 새 페이지 요청으로 테스트합니다. On Demand를 사용한다면 마지막으로 Settings → On Demand의 기존 조건을 복원하고 네트워크 전환 후에도 문제가 다시 발생하지 않는지 확인하세요.

연결 스위치는 계속 켜져 있는데 왜 인터넷이 전혀 안 되나요?

스위치가 켜져 있다고 원격 서버에서 트래픽을 정상 전달한다는 뜻은 아닙니다. 먼저 연결을 끄고 기본 네트워크 상태를 확인한 다음 Home에서 선택한 서버를 확인하세요. 이어 Proxy와 Config를 비교하고 마지막으로 DNS와 규칙을 점검합니다. 여러 설정을 동시에 바꾸지 마세요.

Wi-Fi에서만 안 되고 셀룰러 데이터에서는 되는데 재설치해야 하나요?

먼저 재설치하지 마세요. 같은 서버와 Global Routing 모드를 유지하고 Wi-Fi에서 웹 인증이 필요한지 확인한 다음 서버 도메인 조회와 연결 결과를 비교하세요. 특정 네트워크에서만 문제가 생긴다면 해당 네트워크의 DNS와 접속 제한을 먼저 점검하세요.

Proxy에서는 열리는데 Config로 바꾸면 열리지 않나요?

Config에서 현재 파일을 확인하고 대상 도메인이 앞선 DIRECT 또는 다른 정책에 일치하는지, FINAL이 어디로 연결되는지 점검하세요. 구성의 DNS 설정 차이도 확인해야 합니다. Proxy가 작동한다는 이유만으로 모든 규칙에 문제가 있다고 단정하지 마세요.

구독 업데이트는 성공했는데 웹페이지가 여전히 열리지 않는 이유는 무엇인가요?

업데이트 성공은 구독을 가져와 처리했다는 뜻일 뿐입니다. Home으로 돌아가 실제 선택된 서버를 확인하고 업데이트된 설정을 점검한 뒤 트래픽 전달을 테스트하세요. 특정 웹사이트만 문제가 있다면 해당 사이트가 사용하는 도메인과 적용된 규칙을 계속 확인하세요.

이 사이트는 Shadowrocket 공식 웹사이트로 공식 매뉴얼과 설정 안내를 제공합니다. 자세한 사용 경로는 사용 가이드에서, 설정의 의미는 설정 참고에서 확인할 수 있습니다. 이 글에서는 서버, 구독, 회선 서비스를 제공하거나 판매 또는 추천하지 않습니다. 서비스 상태와 인증 문제는 현재 이용 중인 서비스 제공업체에 문의하세요.