ss://·vmess://·vless://·trojan:// 공유 링크와 구독 URL 차이

단일 서버 공유 링크와 구독 URL의 구조, Shadowrocket 가져오기 방법, 업데이트 방식의 차이를 정리했습니다.

이 글의 핵심

서비스 제공업체에서 받은 연결 정보를 가지고 있지만 서버를 하나씩 추가해야 할지, 구독으로 추가해야 할지 모르겠다면 링크의 시작 부분과 제공업체의 안내를 먼저 확인한 뒤 알맞은 방법으로 가져오세요. 이 글에서는 네 가지 공유 링크의 필드, 구독 업데이트 방식, 가져온 뒤 연결 결과를 확인하는 방법을 설명합니다.

링크가 가리키는 항목부터 확인하기

Shadowrocket의 단일 서버 공유 링크에는 보통 서버 하나의 프로토콜, 주소, 포트, 인증 정보가 한 줄의 텍스트로 인코딩되어 있습니다. ss://, vmess://, vless://, trojan://은 이런 텍스트를 구분하는 대표적인 접두사입니다. 접두사는 프로토콜 종류를 나타낼 뿐, 정기적으로 업데이트되는 목록을 가리킨다는 뜻은 아닙니다. 공유 링크를 가져오면 보통 선택 가능한 서버 항목 하나가 추가됩니다.

구독 링크는 보통 https://로 시작하는 URL입니다. Shadowrocket이 해당 주소에 요청을 보내 응답에 포함된 설정을 읽고, 구독에 연결된 서버 항목을 생성하거나 업데이트합니다. 따라서 https://만 보고 웹 주소 형식이라는 점은 알 수 있지만, 그것만으로 유효한 구독이라고 단정할 수는 없습니다. 사용할 수 있는지 여부는 서비스 제공업체의 안내와 요청 후 반환되는 내용을 확인해야 합니다.

접두사 4종
이 글에서 다루는 단일 서버 공유 형식: ss://, vmess://, vless://, trojan://
항목 1개
단일 서버 공유 링크 하나는 보통 서버 항목 하나에 해당합니다
URL 1개
Shadowrocket이 구독 주소에 요청을 보내며, 응답에 여러 서버 항목이 포함될 수 있습니다

네 가지 공유 링크: 비슷한 접두사, 같은 용도, 서로 다른 필드

아래 예시는 형식만 보여 줍니다. 도메인, 인증 정보, 인코딩된 필드는 연결에 사용할 수 없습니다. 실제 공유 링크의 대소문자, 인코딩, 선택 매개변수는 형식에 따라 다르므로 물음표 뒤의 매개변수를 임의로 삭제해 ‘간단하게’ 만들지 마세요. 예를 들어 VLESS 링크의 전송 및 보안 매개변수는 연결 방식에 영향을 줄 수 있으며, Trojan 링크의 비밀번호도 표시 이름만으로 추정할 수 없습니다.

ss://[email protected]:8388#demo
vmess://BASE64_JSON
vless://[email protected]:443?encryption=none&type=tcp#demo
trojan://[email protected]:443#demo

https://example.com/sub?token=xxxx

앞의 네 줄은 단일 서버 공유 링크 예시이고, 마지막 줄은 구독 URL 예시입니다. example.invalid과 example.com은 형식을 설명하기 위한 주소이며, xxxx는 사용할 수 있는 인증 정보가 아닙니다. 443과 8388도 예시 포트일 뿐 Shadowrocket에서 특정 프로토콜에 반드시 입력해야 하는 고정값이 아닙니다. 입력할 때는 본인이 이용하는 서비스 제공업체가 안내한 포트를 확인하세요.

구분 방법: 서비스 제공업체가 안내한 ‘주소의 용도’ 확인

안내에 단일 서버 공유 링크라고 적혀 있다면 해당 프로토콜의 서버 항목 하나로 처리하세요. 정기 업데이트되는 구독 주소라면 Subscribe로 추가하면 됩니다. 구독 응답에도 ss:// 같은 항목이 포함될 수 있다는 이유로 구독 URL을 서버 하나로 취급하지 마세요.

Shadowrocket에서 각각 가져오는 방법

시작하기 전에 Shadowrocket이 App Store 제품 페이지에서 제공되는지, 개발자가 Shadow Launch Technology Limited로 표시되는지, 앱 ID가 932747118인지 확인하세요. Apple 플랫폼용 유료 앱이며 시스템 요구 사항은 App Store 페이지에 표시된 내용을 기준으로 합니다. 앱 구매와 서비스 제공업체가 제공하는 연결 정보는 별개입니다. 앱을 구매해도 사용할 수 있는 서버 항목이 자동으로 생성되지는 않습니다.

보유한 정보에 맞는 추가 경로 선택

단일 서버 공유 링크가 있는 경우
  • ss://, vmess://, vless:// 또는 trojan://으로 시작하는 텍스트를 끝의 매개변수까지 빠짐없이 복사하세요.
  • Home에서 추가 메뉴를 열고 현재 화면에 클립보드 가져오기 옵션이 있는지 확인하세요. 직접 추가해야 한다면 Home → + → Type으로 이동해 올바른 프로토콜을 선택한 다음 서비스 제공업체의 정보를 입력하세요.
  • 저장한 뒤 Home으로 돌아가 새 항목의 이름, 프로토콜 종류, 서버 주소를 확인하고 해당 항목을 선택하세요.
구독 URL이 있는 경우
  • 서비스 제공업체가 구독이라고 명시한 URL을 쿼리 매개변수까지 포함해 모두 복사하세요. 이 글의 https://example.com/sub?token=xxxx는 유효하지 않은 예시입니다.
  • Home → + → Type → Subscribe로 이동해 URL 필드에 주소를 입력하고, 알아보기 쉬운 이름을 설정한 뒤 저장하세요.
  • Home으로 돌아가 구독 항목이 표시되는지 확인한 뒤 화면에 제공되는 업데이트 기능으로 서버 항목을 가져오세요.

가져오기가 완료되어도 연결이 설정된 것은 아닙니다. 서버를 선택하고 Global Routing을 확인한 다음 Connectivity Test로 결과를 검증해야 합니다.

추가 메뉴와 클립보드 관련 기능의 표시 방식은 현재 앱 화면에 따라 달라질 수 있습니다. 빠른 가져오기 옵션이 보이지 않으면 화면에 표시되는 Type과 필드 입력 양식을 이용하세요. 전체 ss:// 텍스트를 Subscribe의 URL 필드에 붙여 넣으면 안 됩니다. 반대로 구독 주소를 단일 서버의 주소 필드에 입력해서도 안 됩니다. 서버 주소 필드에는 서비스 제공업체가 안내한 호스트 이름이나 IP 주소를 입력해야 하며, 경로와 토큰이 포함된 구독 URL을 입력하는 곳이 아닙니다.

  1. Home에서 방금 가져온 서버를 선택하세요. 구독을 가져왔다면 먼저 구독으로 생성된 항목 중 하나를 선택합니다.
  2. Global Routing을 확인하세요. Direct는 직접 연결 방식입니다. 선택한 서버의 기본 연결을 확인하려면 필요에 따라 먼저 Proxy를 사용하세요. 일상적으로 규칙에 따라 트래픽을 처리하려면 Config와 규칙 적용 결과도 확인하세요.
  3. 연결 스위치를 켜고 시스템 안내에 따라 VPN 구성을 승인한 다음 Connectivity Test를 실행하세요. 테스트 결과와 대상 웹페이지의 동작은 각각 확인해야 합니다. 스위치 상태만 보고 연결 정보가 올바른지 판단해서는 안 됩니다.

업데이트 방식: 단일 항목은 다시 가져오고, 구독은 새로고침

단일 서버 공유 링크는 한 번 사용하는 설정 스냅샷에 가깝습니다. 가져온 서버 항목은 서비스 제공업체의 원본 공유 텍스트가 바뀌어도 새 주소, 비밀번호, 포트로 자동 동기화되지 않습니다. 서비스 제공업체가 새 공유 링크를 제공하면 이전 항목과 새 항목의 필드를 비교한 뒤 다시 가져오거나 새 정보에 맞게 편집하세요. 새 항목이 작동하는지 확인한 다음 이전 항목을 정리하면 이름이 같은 항목을 잘못 선택하는 일을 줄일 수 있습니다.

구독에는 다시 요청할 수 있는 URL이 저장됩니다. 서비스 제공업체가 해당 URL의 응답 내용을 변경하면 Shadowrocket에서 구독을 업데이트할 수 있습니다. 업데이트에 성공한 뒤에는 현재 선택한 서버가 여전히 목록에 있는지, 이름이 바뀌었는지, 필요한 연결이 계속 가능한지 확인하세요. 업데이트 주기와 응답 내용은 본인이 이용하는 서비스 제공업체에 따라 다릅니다. 구독 주소를 저장했다고 해서 서버가 계속 유효한 것은 아닙니다.

단일 서버 공유 링크

서버 설정 하나를 직접 저장합니다. 정보가 바뀌면 서비스 제공업체의 새 안내에 따라 다시 가져오거나 편집하세요.

적합한 경우: 고정 항목 하나만 관리하며 주소, 포트, 인증 정보를 각각 확인할 수 있을 때

Subscribe 구독

업데이트 경로를 하나 저장하고 구독 응답에 따라 서버 항목을 관리합니다. 업데이트할 때마다 항목과 선택 상태를 확인하세요.

적합한 경우: 서비스 제공업체가 구독 URL을 명확히 제공하고, 정보 변경에 따라 서버 항목을 업데이트해야 할 때

작업 요약: 업데이트 전에 비교할 정보를 기록

현재 사용 중인 서버의 이름과 프로토콜을 기록한 뒤 구독을 업데이트하세요. 업데이트 후 연결에 문제가 생기면 선택 항목이 바뀌었는지 먼저 확인하고, 구독 요청이 성공했는지 살펴보세요. 모든 연결 필드를 바로 수정하지 마세요.

구독 업데이트는 구독 응답에 포함된 서버 정보에 영향을 주며, Global Routing 방식이나 규칙 설정을 변경하는 것은 아닙니다. 예를 들어 Config 상태에서는 요청이 먼저 규칙에 따라 처리될 수 있습니다. 서버 항목이 업데이트되었더라도 특정 도메인은 규칙에 따라 직접 연결될 수 있습니다. ‘정보가 업데이트되었는지’와 ‘트래픽이 선택한 서버를 경유하는지’를 별도로 확인하세요.

가져오기 또는 업데이트 오류는 증상에 따라 확인

문제를 확인할 때는 원본 링크를 전체 복사해 보관하고, 본인 기기와 신뢰할 수 있는 서비스 제공업체의 채널에서만 내용을 확인하세요. 프로토콜 접두사로 시작하는 텍스트를 받았다면 복사 과정에서 줄바꿈이 추가되거나 쿼리 매개변수가 빠지지 않았는지 먼저 확인하세요. URL을 받았다면 그것이 구독 주소인지, 계정 웹페이지인지, 단일 서버 정보 페이지인지 서비스 제공업체에 확인하세요. 용도가 다른 URL은 서로 바꿔 쓸 수 없습니다.

https:// 주소를 붙여 넣었더니 연결할 수 없는 항목 하나만 표시되나요?

구독 URL을 서버 주소 필드에 입력하지 않았는지 먼저 확인하세요. Home → + → Type → Subscribe로 돌아가 URL 필드에 서비스 제공업체가 구독 주소라고 안내한 URL을 입력하세요. 잘못 입력한 기존 항목은 내용을 확인한 뒤 정리할 수 있습니다.

vless://를 가져온 뒤 이름은 표시되지만 연결되지 않나요?

서비스 제공업체가 안내한 원문과 비교해 호스트, 포트, 물음표 뒤의 매개변수가 모두 있는지 확인하세요. 특히 type 같은 연결 매개변수를 빠뜨리지 마세요. 그런 다음 방금 가져온 항목이 선택되어 있는지 확인하세요. 이름이 표시된다는 것은 항목이 만들어졌다는 뜻일 뿐, 서버에 연결할 수 있다는 뜻은 아닙니다.

구독 업데이트가 끝났는데도 이전 서버를 사용하고 있나요?

Home으로 돌아가 현재 선택된 항목을 확인하고, 구독 아래 새로 생성된 항목의 이름과 주소를 비교한 다음 사용할 항목을 직접 선택하세요. 목록이 바뀌지 않았다면 구독 URL이 여전히 유효한지 확인하고 현재 화면에 표시된 업데이트 결과를 살펴보세요.

연결 스위치는 켜져 있지만 대상 웹페이지가 예상한 대로 서버를 경유하지 않나요?

먼저 Connectivity Test를 실행한 다음 Global Routing을 확인하세요. Direct에서는 요청이 프록시 방식으로 처리되지 않습니다. Config라면 해당 규칙이 적용되는지 확인하세요. 규칙 문제를 해결하려고 링크만 다시 가져오지는 마세요.

규칙을 이해하려면 DOMAIN-SUFFIX, GEOIP, IP-CIDR, FINAL의 매칭 범위부터 확인하세요. 앞의 세 항목은 각각 도메인 접미사, 지리적 위치, IP 대역과 관련이 있으며 FINAL은 앞선 규칙과 일치하지 않은 요청을 처리합니다. 이러한 규칙은 요청의 경로를 제어할 뿐 단일 서버 링크를 구독으로 바꾸거나 잘못된 인증 정보를 올바르게 만들어 주지는 않습니다. 서비스 정보 유형, 가져온 항목, 연결 테스트, 규칙 순으로 확인하세요.

앱 제공 경로와 가져오기 단계 확인하기

먼저 정품 확인 페이지에서 App Store 제품 정보를 확인한 다음 안내에 따라 Home, Subscribe, Global Routing을 차례로 살펴보세요. 앱 구매와 본인이 이용하는 연결 서비스는 서로 별개입니다.

정품 확인 페이지로 이동 사용 가이드 보기
정품 확인