Shadowrocket은 다양한 프록시 프로토콜과 터널 프로토콜을 지원합니다. Type은 보유한 설정과 일치해야 하며, 이름을 바꾼다고 서버 프로토콜이 바뀌지는 않습니다. 이 글에서는 자주 쓰이는 8가지 유형을 비교한 뒤 인증, 전송 방식, 규칙의 차이를 살펴봅니다. 구독 또는 연결 정보를 보유하고 있으며 가져오기와 연결 확인 방법을 알아보려는 사용자를 위한 안내입니다. 이 사이트는 노드, 구독, 서비스 또는 초대 코드를 제공하거나 판매하거나 추천하지 않습니다.
자주 쓰이는 프로토콜과 전송 방식
먼저 서비스에서 안내한 프로토콜 이름을 확인한 다음 설정 항목을 대조하세요. 프로토콜은 연결 양쪽이 인증하고 데이터를 주고받는 방식을 정합니다. TCP, UDP, WebSocket, QUIC 등의 전송 방식은 데이터를 어떤 경로로 전달하는지 설명합니다. 두 개념은 서로 다른 계층이므로 WebSocket을 VLESS와 같은 서버 유형으로 보아서는 안 되며, 포트 번호만으로 프로토콜을 추정할 수도 없습니다.
| 프로토콜 유형 | 특징 및 전송 방식 | 확인할 설정 항목 |
|---|---|---|
| Shadowsocks | 암호화 프록시 프로토콜로 TCP와 UDP를 전달할 수 있습니다. 지원 기능은 양쪽의 구현과 설정에 따라 달라집니다. | 주소, 포트, Password, 암호화 방식. 플러그인 매개변수는 기존 설정대로 입력합니다. |
| VMess | UUID 등의 매개변수로 인증하며, 다양한 전송 방식 및 TLS와 함께 사용할 수 있습니다. | UUID, 전송 방식, TLS 및 기존 설정에서 요구하는 기타 인증 매개변수 |
| VLESS | 경량 인증 프로토콜입니다. 자체적으로 트래픽을 암호화하지 않으므로 설정에 지정된 보안 계층과 함께 사용해야 합니다. | UUID, 보안 계층, 전송 방식. Flow를 사용하는 경우 서버 설정과 일치해야 합니다. |
| Trojan | 일반적으로 TLS로 연결을 설정하고 비밀번호로 인증합니다. | Password, 포트, TLS 서버 이름, 인증서 검증 조건 |
| HTTP | HTTP 프록시로, CONNECT를 사용해 대상 서버에 연결할 수 있습니다. 프록시 연결에 TLS를 사용하는지는 별도로 확인해야 합니다. | 프록시 주소, 포트, 인증 정보, TLS 사용 여부 |
| SOCKS5 | 범용 프록시 프로토콜로 TCP를 처리할 수 있습니다. UDP 전달에는 클라이언트와 서버 양쪽의 지원이 필요합니다. | 주소, 포트, 인증 정보, 서버의 UDP 지원 여부 |
| WireGuard | UDP 기반의 암호화된 3계층 터널입니다. 키로 상대 Peer를 식별하며, 사용자 이름과 비밀번호를 사용하는 프록시가 아닙니다. | Private Key, Peer 공개 키, Endpoint, 터널 주소, Allowed IPs |
| Hysteria2 | QUIC 기반이며 하위 전송 계층으로 UDP를 사용합니다. 연결하려면 네트워크에서 해당 UDP 통신을 허용해야 합니다. | 주소, 포트, 인증 정보, TLS 및 기존 설정에 포함된 난독화 또는 대역폭 매개변수 |
요약: 설정을 먼저 일치시키고 네트워크를 확인하세요
보유한 설정에 맞는 Type을 선택하고 기존 매개변수를 그대로 유지하세요. Hysteria2나 WireGuard에 연결할 수 없다면 Type을 다른 것으로 바꾸기보다 해당 UDP 연결이 가능한지 확인해야 합니다.
이 표는 자주 쓰이는 유형을 식별하기 위한 것으로, 전체 기능 목록이나 속도 순위가 아닙니다. 같은 프로토콜도 서버 부하, 네트워크 경로, 설정에 따라 성능이 달라질 수 있습니다. 프로토콜 이름만으로 연결 속도가 더 빠르다고 단정할 수는 없습니다.
인증, TLS, 포트: 서로 다른 설정 계층
주소와 포트는 연결 대상을 정하고, Password, UUID 또는 키는 인증 방식을 정합니다. TLS는 보안 핸드셰이크와 인증서 검증에 관여합니다. 가져온 뒤 목록에 서버 이름이 표시되더라도 항목이 저장되었다는 뜻일 뿐, 연결에 사용되는 설정까지 검증되었다는 의미는 아닙니다.
- 인증 정보는 서로 바꿔 쓸 수 없습니다. VMess와 VLESS에서 자주 쓰는 UUID는 WireGuard의 Private Key와 다릅니다. 구독 URL을 Trojan의 Password로 사용할 수도 없습니다.
- 연결 주소와 TLS 이름은 다를 수 있습니다. IP 주소로 연결하면서 도메인 이름으로 TLS 검증을 하는 설정도 있습니다. 설정에 지정된 서버 이름을 유지하고 임의로 지우지 마세요.
- 포트가 같아도 프로토콜이 같다는 뜻은 아닙니다. TCP 443과 UDP 443은 서로 다른 전송 끝점입니다. HTTPS 웹사이트에 접속할 수 있다고 해서 Hysteria2에 필요한 UDP 통신도 허용된다는 뜻은 아닙니다.
- 인증서 오류가 발생하면 원인을 확인하세요. 기기 시간, 서버 이름, 설정의 만료 여부를 먼저 확인하세요. 인증서 검증을 건너뛰는 방법을 일반적인 해결책으로 사용하지 마세요.
WireGuard의 Allowed IPs는 Peer로 보낼 수 있는 대상 네트워크를 지정하고 터널 라우팅을 결정하는 데 사용됩니다. DNS 서버 목록이 아닙니다. DNS, MTU, 터널 주소도 각각 다른 역할을 하므로 키만 입력했다고 네트워크 설정이 모두 끝난 것은 아닙니다.
Home에서 기존 설정 가져오기 및 확인
아래 안내는 iPhone / iPad 화면을 기준으로 합니다. 구독을 보유하고 있다면 먼저 구독을 가져오고, 완전한 단일 서버 설정을 받은 경우에만 항목을 직접 입력하세요. 구독 URL은 설정을 가져오는 주소이며 실제 프록시 연결에 사용되는 프로토콜은 아닙니다. 하나의 구독에 여러 Type이 포함될 수 있습니다.
-
제공 정보 확인
사용 중인 서비스의 설정 안내를 열어 구독 URL, 단일 서버 공유 링크, WireGuard 설정 파일 중 어떤 정보를 받았는지 확인하세요. 표시된 프로토콜과 필수 매개변수도 기록해 둡니다.
-
구독 가져오기
Home → 오른쪽 위의 「+」→ Type에서 Subscribe를 선택하고 본인의 구독 URL을 URL 입력란에 입력한 뒤 저장하세요. 예시 주소
https://example.com/sub?token=xxxx는 임의의 값이므로 연결에 사용할 수 없습니다. -
프로토콜 유형 확인
Home으로 돌아가 가져온 항목의 편집 화면을 열고 Type, 주소, 포트, 인증 정보를 확인하세요. 직접 추가하는 경우 Home → 「+」→ Type에서 기존 설정과 일치하는 프로토콜을 선택합니다.
-
연결 확인
Home에서 서버 옆의 점을 눌러 선택하고 연결 스위치를 켭니다. 처음 안내가 표시되면 VPN 구성 추가를 허용하세요. 그런 다음 Connectivity Test를 실행하고 웹사이트 접속 여부도 함께 확인합니다.
-
업데이트 후 재확인
업데이트가 필요하면 Home에서 구독을 업데이트한 뒤 선택한 서버가 그대로 있는지, Type과 매개변수가 기존 설정과 일치하는지 확인하세요. 설정을 업데이트해도 이전 연결이 모두 다시 설정되는 것은 아닙니다.
프로토콜과 Global Routing: 각각 따로 확인하기
프로토콜이 올바르더라도 대상 요청이 반드시 해당 서버를 통과하는 것은 아닙니다. Home → Global Routing에서는 트래픽의 라우팅 방식을 정하고, Home에서 선택한 서버는 프록시 출구를 결정하며, Config에서 활성화한 구성 파일은 규칙과 정책을 제공합니다. 규칙이 적용되지 않는 문제를 Type 변경으로 해결하려 하지 마세요.
Config: 설정에 따라 트래픽 분기
권장현재 설정의 규칙과 정책을 사용합니다. 먼저 Config에서 활성화된 파일을 확인한 다음 Home → Global Routing → Config로 이동하세요. 일상적인 확인에는 내용을 검토한 규칙 설정을 기준으로 사용하는 것이 좋습니다.
적합한 경우: 직접 연결과 프록시 대상을 구분해 사용하는 경우
Proxy: 프록시 연결 확인
앱이 처리하는 트래픽을 프록시로 전달해 일반 분기 규칙의 영향을 줄이고 확인할 수 있습니다. 잘못된 비밀번호, 만료된 인증서, 연결할 수 없는 서버를 해결해 주지는 않습니다.
적합한 경우: 선택한 서버가 정상적으로 연결되는지 잠시 확인할 때
Direct: 직접 연결 기준 확인
직접 연결을 사용하며 선택한 서버를 프록시 출구로 사용하지 않습니다. 웹사이트가 Direct에서만 열리더라도 기기 전체의 네트워크 연결이 끊겼다고 단정하지 말고 프록시 연결을 계속 확인하세요.
적합한 경우: 현재 네트워크에서 대상에 직접 접속할 수 있는지 비교할 때
Scene: 시나리오 설정 확인
시나리오 설정에 따라 라우팅합니다. 문제를 확인할 때는 현재 시나리오와 연결된 설정도 함께 살펴보세요. Home에서 선택한 서버만으로 실제 출구를 판단할 수 없습니다.
적합한 경우: 시나리오 설정을 만들어 사용 조건을 전환할 때
규칙 키워드도 프로토콜이 아닙니다. DOMAIN-SUFFIX는 도메인 접미사를, IP-CIDR은 IP 주소 대역을, GEOIP는 IP 지리 정보 데이터베이스를 기준으로 일치 항목을 찾습니다. FINAL은 앞선 규칙에 일치하지 않은 연결을 처리합니다. 아래 내용은 규칙 문법 예시일 뿐이며 전체 설정을 그대로 대체해서는 안 됩니다:
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY
일반적으로 규칙은 위에서부터 순서대로 적용하며, 구체적인 규칙을 기본 처리 규칙인 FINAL보다 앞에 배치해야 합니다. 정책 그룹을 사용하는 설정이라면 그룹 안의 선택 항목도 확인하세요. Settings → On Demand에서는 필요에 따른 연결 조건을 관리하며 프로토콜 인증 정보는 변경하지 않습니다. 자동 연결이 반복되면 서버를 계속 삭제하기보다 이 설정을 확인하세요.
프로토콜 확인 및 연결 실패 문제 해결
링크만으로 어떤 프로토콜인지 어떻게 확인하나요?
먼저 기존 설정 안내와 링크의 용도를 확인하세요. 단일 서버 링크에는 프로토콜 접두사가 포함될 수 있지만, 일반 HTTPS 구독 주소는 도메인 이름만으로 내용을 판단할 수 없습니다. 가져온 뒤 Home에서 해당 항목의 편집 화면을 열어 Type을 확인하고 제공된 안내와 대조하세요. 서버 메모 이름만 보고 추측하지 마세요.
VLESS를 Trojan으로 바꾸면 더 빨라지나요?
Type을 바꾼다고 서버 기능이 자동으로 전환되지는 않습니다. 두 프로토콜은 인증 및 핸드셰이크 방식이 다르므로 Type을 바로 바꾸면 설정 항목이 맞지 않을 수 있습니다. 기존 유형으로 되돌리세요. 보유한 설정에 여러 프로토콜이 제공된다면 각각 가져온 뒤 같은 네트워크와 대상에서 비슷한 시간대에 비교하세요.
Hysteria2 연결 시간이 초과되지만 다른 유형은 연결될 때는 어떻게 하나요?
먼저 Hysteria2의 포트, 인증 정보, TLS 이름을 확인한 뒤 사용할 수 있는 다른 네트워크로 바꿔 다시 테스트하세요. 네트워크에 따라 결과가 달라진다면 UDP 제한을 중점적으로 확인해야 합니다. 시간 초과만으로 비밀번호가 틀렸거나 프로토콜을 사용할 수 없다고 단정할 수는 없습니다.
지연 시간은 측정되는데 웹페이지가 열리지 않는 이유는 무엇인가요?
한 번의 지연 시간 측정이나 포트 검사만으로 전체 프록시 요청이 성공했다고 볼 수는 없습니다. Home에서 Connectivity Test를 실행하고 Global Routing이 Direct로 설정되어 있지 않은지 확인한 다음 Config의 규칙, 정책 선택, DNS를 점검하세요. 한 번에 한 항목만 바꾸고 변경 전후의 구체적인 오류를 기록하세요.
구독 업데이트 후 프로토콜 이름이 바뀌면 직접 되돌려야 하나요?
먼저 사용 중인 서비스의 설정 안내를 열어 서버 항목이 변경되었는지 확인하세요. 업데이트로 주소, 포트 또는 연결 항목 전체가 바뀔 수 있습니다. Type과 현재 선택 항목을 다시 확인하고, 이전 비밀번호나 전송 매개변수를 새 항목에 복사해 억지로 함께 사용하지 마세요.