Shadowrocket DNS 설정 방법: 시스템 DNS·사용자 지정 DNS·DNS over HTTPS 비교

도메인이 어디에서 해석되는지 먼저 확인한 뒤 시스템 DNS, 사용자 지정 DNS, DNS over HTTPS 중 선택하세요. Config 설정 예시와 선택 기준, 단계별 확인 방법을 안내합니다.

핵심 내용

직접 구성한 연결 설정이 있고 도메인 해석 문제를 확인하거나 DNS 방식을 바꾸려는 사용자를 위한 안내입니다. 먼저 시스템 DNS로 기준 상태를 확인하고, DNS 서버를 지정해야 할 때 dns-server를 변경하세요. DNS 조회를 암호화하려면 DoH 주소와 연결 가능 여부를 확인해야 합니다. 한 번에 한 항목만 변경하고 도메인 접속과 연결 상태를 각각 점검하세요.

DNS, 규칙 매칭, 연결 경로 구분하기

DNS는 도메인을 연결에 사용할 수 있는 주소로 변환합니다. Shadowrocket에서 접속 요청은 규칙과 일치하는지 확인한 다음 규칙에 따라 연결 경로가 정해질 수 있습니다. 따라서 웹페이지가 열리지 않는다고 바로 DNS 문제로 볼 수는 없습니다. 도메인 해석에 성공해도 선택한 연결이 실패할 수 있고, 주소 정보가 필요한 규칙은 해석 결과에 영향을 받을 수도 있습니다.

도메인 입력DNS 조회주소 확인규칙 매칭연결 경로 선택

Home에서 현재 연결 상태와 Global Routing을 확인하세요. Proxy는 트래픽이 선택한 연결을 거치는 설정이고, Direct는 직접 연결, Config는 현재 구성의 규칙에 따른 처리, Scene은 장면 설정에 따른 동작을 뜻합니다. DNS를 변경하기 전에 현재 설정을 기록해 두세요. 경로 설정과 DNS를 동시에 바꾸면 접속 결과가 달라진 원인을 파악하기 어렵습니다.

규칙도 유형별로 확인해야 합니다. DOMAIN-SUFFIX는 도메인 접미사, IP-CIDR은 IP 주소 대역, GEOIP는 IP 주소의 지역 정보를 기준으로 매칭하며, FINAL은 앞선 규칙과 일치하지 않은 요청을 처리합니다. DNS 방식을 바꿔도 규칙이 대체되지는 않습니다. 예를 들어 dns-server를 다른 주소로 바꿔도 FINAL,DIRECT가 자동으로 프록시 경로로 바뀌지는 않습니다.

세 가지 방식의 차이와 용도

시스템 DNS는 첫 진단의 기준으로 적합합니다. 기기가 현재 네트워크에서 제공하는 DNS 설정을 사용하므로 서버 주소를 별도로 관리할 필요가 없습니다. Wi-Fi와 셀룰러 네트워크를 전환하면 사용하는 DNS 환경도 달라질 수 있습니다. 특정 네트워크에서만 특정 도메인이 열리지 않는다면 각 네트워크에서의 결과를 따로 기록해 보세요.

시스템 DNS와 사용자 지정 DNS

시스템 DNS
현재 네트워크의 DNS 설정 사용
사용자 지정 DNS
Config에서 연결 가능한 DNS 서버 주소 지정
먼저 확인할 항목
같은 도메인이 Wi-Fi와 셀룰러에서 동일하게 작동하는지

문제를 일관되게 재현하려면 테스트 네트워크와 Global Routing을 고정하세요.

DNS over HTTPS

전송 방식
HTTPS를 통해 DoH 서버로 DNS 쿼리 전송
주소
서버가 제공한 전체 HTTPS URL 사용
먼저 확인할 항목
현재 네트워크에서 해당 URL에 연결할 수 있는지

DoH는 DNS 쿼리 전송을 암호화합니다. 모든 연결의 경로를 바꾸는 것은 아닙니다.

사용자 지정 DNS는 DNS 서버를 직접 지정하거나 서로 다른 DNS 서버의 응답을 비교할 때 적합합니다. 일반 DNS는 주로 53번 포트를 사용하고, DoH는 HTTPS 연결을 통해 보통 443번 포트를 사용합니다. 포트 차이는 전송 방식의 차이일 뿐, 포트만으로 도메인 해석 성공 여부를 판단할 수는 없습니다.

53
일반 DNS에서 주로 사용하는 포트
443
DoH의 HTTPS 연결에서 주로 사용하는 포트
3가지
이 글에서 비교하는 DNS 설정

선택 순서: 기준을 확인한 뒤 변수를 추가하세요

처음 진단할 때는 시스템 DNS로 같은 도메인을 테스트하세요. DNS 서버를 고정해야 할 때만 dns-server를 입력합니다. DoH를 선택했다면 DoH 서버에 연결할 수 있는지도 별도로 확인해야 합니다. DNS 조회 실패를 곧바로 연결 규칙 오류로 판단하지 마세요.

Config에서 dns-server와 DoH 설정하기

먼저 Config에서 사용 중인 구성을 찾아 현재 활성화된 설정인지 확인한 뒤 [General] 섹션을 편집하세요. 수정 전에 기존 내용을 저장하고, 특히 규칙과 다른 설정을 유지해야 합니다. 구성 출처에 따라 직접 수정한 내용이 덮어써질 수 있습니다. 사용 중인 구성이 사용자 설정에 따라 업데이트되는 경우 업데이트 후 이 섹션을 다시 확인하세요.

  1. Home에서 현재 구성 이름과 Global Routing을 확인하고, 반복해서 테스트할 도메인을 기록하세요.
  2. Config를 열어 해당 구성의 [General]을 편집하세요. 먼저 DNS 관련 항목만 변경하고 Rule 내용은 함께 수정하지 마세요.
  3. 저장한 뒤 Home으로 돌아가 같은 네트워크와 경로 설정에서 다시 접속해 보세요. 실패하면 기존 값으로 되돌리고 설정 내용이 올바르게 저장됐는지 확인하세요.

아래 예시는 세 가지 설정 방식을 각각 보여줍니다. 선택해서 사용하는 예시이므로 세 줄의 dns-server 설정을 하나의 [General] 섹션에 모두 붙여 넣으면 안 됩니다. 시스템 DNS 설정은 다음과 같습니다.

[General]
dns-server = system

DNS 서버를 지정하려면 dns-server에 실제로 사용할 수 있는 DNS 주소를 입력하세요. 아래 주소는 설정 형식을 보여주기 위한 예시입니다. 현재 네트워크에 적합한지는 실제 연결 테스트로 확인해야 합니다.

[General]
dns-server = 1.1.1.1

DoH를 사용하려면 doh-server에 서버가 제공한 전체 HTTPS 주소를 입력하세요. 아래 예시의 example.com은 형식을 보여주기 위한 것이며, 실제 DoH 서버 주소가 아닙니다. 설정할 때는 사용 가능 여부를 확인한 주소로 바꾸고 앱 내 최신 항목 설명에 맞는 형식인지 확인하세요.

[General]
doh-server = https://example.com/dns-query

변경 후 확인 및 실패 원인 찾기

두 단계로 확인하세요. 첫째는 DNS입니다. 같은 네트워크에서 대상 도메인을 조회해 접속 가능한 결과를 얻을 수 있는지 확인합니다. 둘째는 연결입니다. 주소가 확인된 뒤 요청이 예상한 규칙에 따라 올바른 경로로 전달되는지 점검합니다. 웹페이지 하나만 테스트하면 브라우저 캐시, 사이트 상태, 기존 연결의 영향을 구분하기 어렵습니다.

  1. 변경 전 네트워크 유형, Global Routing, 선택한 구성, 대상 도메인을 기록하세요. Home에서 Connectivity Test를 실행해 연결 상태의 기준 결과를 남깁니다.
  2. DNS 설정을 한 항목만 변경한 뒤 저장하고 연결을 끊었다가 다시 연결하세요. 먼저 안정적으로 열리던 도메인에 접속한 다음 확인이 필요한 도메인에 접속해 결과를 각각 기록합니다.
  3. 두 도메인 모두 실패하면 [General]의 입력 형식, DNS 주소 또는 DoH URL의 연결 가능 여부를 확인하세요. 특정 도메인만 실패하면 해당 도메인에 적용되는 규칙과 서비스 자체를 점검합니다.
  4. 기존 설정으로 되돌린 뒤 같은 테스트를 반복하세요. 되돌린 직후 정상으로 돌아온다면 새 설정을 추가로 점검해야 합니다. 되돌려도 문제가 계속되면 연결, 네트워크, 규칙에서 달라진 점을 확인하세요.

IP-CIDR 또는 GEOIP 규칙을 사용할 때는 DNS 결과와 규칙 매칭 순서에 특히 유의하세요. 규칙은 위에서 아래로 확인하며 먼저 일치한 규칙이 이후 처리에 영향을 줍니다. FINAL은 기본 처리 규칙일 뿐, 앞에서 이미 일치한 규칙을 바로잡지는 않습니다. DNS 항목만 보지 말고 Config의 규칙 섹션과 Home에서 Config 경로를 선택했는지도 함께 확인하세요.

확인 기준: 동일한 조건에서 재현하기

두 결과를 비교할 때는 네트워크, 구성, Global Routing, 테스트 도메인을 동일하게 유지하고 매번 DNS 설정 하나만 변경하세요. Wi-Fi 전환, 구성 업데이트, 규칙 수정까지 동시에 하면 결과의 원인을 분명히 판단할 수 없습니다.

자주 묻는 질문과 유의 사항

DoH 주소를 입력한 뒤 웹페이지가 열리지 않는 이유는 무엇인가요?

먼저 URL이 실제 서버에서 제공한 전체 주소인지 확인하세요. 이 글의 example.com 예시 주소를 사용하면 안 됩니다. 그런 다음 기존 DNS 설정으로 되돌려 같은 도메인을 테스트하세요. 되돌린 뒤 정상이라면 현재 네트워크에서 DoH 서버에 연결할 수 있는지, 사용 중인 Config에 설정을 저장했는지 확인하세요.

시스템 DNS로는 접속되는데 사용자 지정 DNS로 실패하면 규칙을 바꿔야 하나요?

먼저 규칙을 바꾸지 마세요. Home의 Global Routing을 그대로 둔 채 dns-server에 사용 가능한 주소를 입력했는지 확인하고 같은 네트워크에서 다시 테스트하세요. DNS 조회 결과가 확인됐는데도 연결 경로가 예상과 다를 때 DOMAIN-SUFFIX, IP-CIDR, GEOIP, FINAL의 매칭 순서를 점검하면 됩니다.

DNS를 변경했는데 이전 웹페이지가 그대로 보이는 이유는 무엇인가요?

먼저 연결을 끊었다가 다시 연결한 뒤 새로 접속하세요. 기존 연결이나 캐시가 이전 상태를 계속 보여줄 수 있습니다. 테스트할 때는 이전에 방문하지 않은 대상 하나를 기록하고 안정적으로 접속되는 도메인과 비교하세요. 같은 페이지를 반복해서 새로고침하는 것만으로 확인하지 마세요.

구성 업데이트 후 직접 입력한 dns-server가 사라졌습니다. 이유가 무엇인가요?

Config에서 현재 활성화된 구성과 [General] 내용을 확인하세요. 업데이트 과정에서 설정 내용이 교체되면 직접 수정한 항목이 사라질 수 있습니다. 기존 설정을 기록해 두고 사용하는 구성 관리 방식에 맞춰 어느 구성에 변경 사항을 반영할지 결정하세요.

Shadowrocket은 Apple 플랫폼용 유료 앱이며 App Store에서만 이용할 수 있습니다. 주 사용 기기는 iPhone과 iPad이며, 그 밖의 호환 기기와 시스템 요구 사항은 App Store 페이지를 확인하세요. 앱 구매와 연결 서비스는 별개입니다. 이 글은 앱 내 DNS 설정만 다루며, 사용자가 직접 구성한 연결 설정을 보유하고 있다는 전제에서 안내합니다.

앱과 기본 설정 확인하기

앱의 출처를 아직 확인하지 않았다면 App Store 정품 확인 안내를 먼저 살펴보세요. Home, Config, 규칙 설정부터 시작하려면 사용 가이드를 이어서 읽어보세요.

정품 확인