VMess 또는 VLESS를 수동으로 추가할 때는 무엇부터 확인해야 할까요? 먼저 Type을 확인한 다음 Address, Port, UUID, 전송 방식과 TLS 설정을 하나씩 대조하세요. 이 글에서는 본인 서비스 정보를 보유한 사용자를 대상으로 Shadowrocket에서 서로 바꿔 쓸 수 없는 항목, 문제를 진단할 때 참고할 증상, 기존 설정을 변경하지 않고 입력값을 다시 확인하는 방법을 설명합니다.
VMess와 VLESS, 무엇이 다를까요?
둘 다 UUID를 사용하니 서로 바꿔 써도 될까요? 그렇지 않습니다. UUID는 사용자 식별 정보의 일부이며, 두 프로토콜의 인증 방식과 데이터 처리 방식이 같다는 뜻은 아닙니다. 서버가 VMess를 제공한다면 Home → Add Server → Type에서 VMess를 선택하고, VLESS를 제공한다면 VLESS를 선택하세요. Type만 바꾸고 나머지 값을 그대로 둔다고 기존 서비스가 다른 프로토콜로 바뀌지는 않습니다.
암호화 항목은 어떻게 이해해야 할까요? VMess에는 프로토콜 계층의 데이터 암호화 기능이 있으며, 구체적인 방식은 서비스 설정과 일치해야 합니다. VLESS 자체에는 같은 종류의 데이터 암호화 계층이 없으며, 일반적으로 TLS 같은 외부 계층으로 전송을 보호합니다. 따라서 VMess 암호화 옵션과 TLS 설정은 서로 다른 계층에 해당하므로 같은 기능으로 취급할 수 없습니다. VLESS 설정의 encryption=none도 TLS를 반드시 꺼야 한다는 뜻은 아닙니다.
| 확인 항목 | VMess | VLESS |
|---|---|---|
| Type | VMess 선택 | VLESS 선택 |
| UUID | 해당 VMess 서비스의 UUID 입력 | 해당 VLESS 서비스의 UUID 입력 |
| 프로토콜 계층 암호화 | 서비스 설정에 안내된 암호화 방식을 확인하고, 다른 설정에서 그대로 복사하지 마세요 | 같은 종류의 암호화 계층을 제공하지 않으므로 VMess 암호화 옵션을 적용할 수 없습니다 |
| 전송 방식 | 서버 측 설정과 일치해야 합니다 | 서버 측 설정과 일치해야 합니다 |
| TLS | 사용 여부와 관련 도메인을 별도로 확인하세요 | 별도로 확인해야 하며, 프로토콜 이름만으로 설정 여부를 판단할 수 없습니다 |
어느 쪽이 더 빠르다고 단정할 수 있을까요? 이름만으로는 판단할 수 없습니다. 네트워크 경로, 서버 부하, 전송 방식, TLS 설정이 모두 연결 성능에 영향을 줍니다. 직접 입력할 때는 서비스 측 설정과 정확히 일치하고 요청이 정상적으로 처리되는 것을 우선 목표로 삼으세요. 해당 프로토콜을 지원하지 않는 서비스 설정을 프로토콜을 바꾸기 위해 수정하지 마세요.
Address, Port, UUID는 어떻게 입력해야 할까요?
Shadowrocket에서 어디서 설정을 시작하나요? Home을 열고 추가 메뉴에서 Add Server로 이동한 뒤, Type을 선택하고 서비스 제공자가 안내한 Address, Port, UUID를 입력하세요. Type에 따라 추가 입력 항목이 다를 수 있으므로 앱에 표시되는 옵션을 기준으로 설정하세요. 기존 항목을 수정하기 전에 원래 설정을 따로 기록해 두면 여러 번 수정한 뒤에도 되돌려 확인할 수 있습니다.
- Address: 안내받은 서버 도메인 또는 IP를 입력합니다. 호스트 주소를 입력하라고 되어 있다면
https://, 경로, 쿼리 매개변수를 덧붙이지 마세요. 이들은 별도의 항목에 해당합니다. - Port: 안내된 포트 번호를 그대로 입력합니다. 예를 들어 설정에
443이라고 되어 있으면443을,8443이라고 되어 있으면8443을 입력하세요. 포트 번호만으로 TLS 사용 여부를 판단할 수는 없습니다. - UUID: 해당 서비스의 전체 값을 복사하고 앞뒤 공백, 누락된 문자, 줄바꿈이 없는지 확인하세요. 일반적인 UUID 문자열은 하이픈 4개를 포함해 36자입니다. 형식이 올바르더라도 서버에서 인증이 허용된다는 뜻은 아닙니다.
- 저장 및 선택: 저장한 뒤 Home으로 돌아가 방금 수정한 항목을 직접 선택하고 테스트하세요. 항목을 저장했다고 해서 현재 연결이 해당 항목으로 자동 전환되는 것은 아닙니다.
여러 항목에서 같은 UUID를 그대로 사용해도 되나요? 서버에서 같은 UUID를 사용하도록 명시적으로 허용한 경우에만 가능합니다. 주소가 같거나 메모가 비슷하거나 포트가 같다는 사실만으로는 근거가 되지 않습니다. 원본 정보에 전체 인증 정보가 없다면 서비스 제공자에게 확인하세요. 인증을 시도하려고 문자를 임의로 바꾸지 마세요.
전송 방식, Host, 경로, TLS는 어떻게 구분해 확인할까요?
VMess나 VLESS를 선택하면 전송 방식도 자동으로 맞춰지나요? 프로토콜이 같다고 설정까지 일치하는 것은 아닙니다. 서버에서 WebSocket을 요구한다면 클라이언트에도 이에 맞는 전송 설정이 필요합니다. 다른 앱 지원 전송 방식을 요구하는 경우에도 각 항목을 정확히 맞춰야 합니다. WebSocket을 일반 TCP로 바꾸는 것은 대개 호환되는 최적화가 아니라 서버가 기대하는 데이터 형식을 바꾸는 일입니다.
항목별 확인: 연결 대상과 애플리케이션 계층 라우팅을 구분하세요
연결 및 인증 정보
- Address는 처음 연결할 주소를 지정합니다.
- Port는 해당 주소의 연결 포트를 지정합니다.
- UUID는 해당 서비스의 인증 정보와 일치해야 합니다.
- Type은 VMess 또는 VLESS와 일치해야 합니다.
전송 및 TLS
- WebSocket의 Host와 경로는 원본 설정대로 입력합니다.
- 경로 앞의 슬래시와 대소문자를 임의로 바꾸지 마세요.
- TLS의 SNI는 핸드셰이크 중 서버 이름을 지정하는 데 사용됩니다.
- 인증서 검증, SNI, WebSocket Host를 각각 확인하세요.
정리: Address, Host, SNI는 같은 값일 수도 있고 다를 수도 있습니다. 세 항목을 같게 보이도록 임의로 덮어쓰지 마세요.
Address가 IP인데도 TLS에 도메인이 필요한 이유는 무엇인가요? 연결 대상과 인증서의 신원은 서로 다른 개념입니다. 일부 설정에서는 IP로 연결하되 인증서는 도메인에 해당하며, SNI를 통해 접속할 서비스를 지정합니다. 서비스 설정에 안내된 도메인을 유지하고 IP로 기계적으로 바꾸지 마세요. WebSocket Host는 서버 라우팅에 사용되는 HTTP 요청 헤더이므로 인증서 검증 이름과도 다릅니다.
경로에 슬래시 하나만 입력해도 되나요? 원본 설정에 /라고 명시된 경우에만 그렇게 입력할 수 있습니다. 설정에 /gateway라고 되어 있다면 이를 /로 바꾸거나 앞의 슬래시를 빼면 라우팅이 맞지 않을 수 있습니다. 여기의 /gateway는 입력 형식을 설명하기 위한 예시이며, 실제 연결 정보로 사용할 수 없습니다.
TLS는 켜야 할까요, 꺼야 할까요?
VLESS를 선택하면 TLS를 바로 켜도 되나요? 먼저 서비스 설정을 확인하세요. VLESS는 TLS와 함께 사용하는 경우가 많지만, 프로토콜 이름만으로 모든 보안 설정을 결정할 수는 없습니다. VMess도 TLS를 사용할 수 있습니다. 직접 입력할 때는 TLS 사용 여부와 인증서 검증 여부를 각각 확인하세요. 도메인이나 인증서 문제를 가리기 위해 인증서 검증을 건너뛰지 마세요.
TLS를 켜고 인증서 검증 유지
권장서비스 설정에 TLS가 명시되어 있으면 TLS를 켜고 지정된 SNI를 입력한 뒤 인증서 검증을 유지하세요. 핸드셰이크에 실패하면 검증을 무시하는 대신 기기 날짜와 시간, 도메인, 인증서 유효기간, 서버 설정을 먼저 확인하세요.
적합한 경우: TLS 설정이 제공되었으며 인증서로 서버 신원을 확인해야 하는 연결
TLS를 끄고 외부 보호 방식 확인
서비스 안내에 TLS를 끄라고 명시된 경우에만 선택하세요. TLS를 껐다고 해서 동일한 수준으로 전송이 보호된다는 뜻은 아닙니다. 특히 VLESS에서는 서비스 설계상 데이터가 어떻게 보호되는지 확인하세요. TLS 설정을 임의로 바꿔 암호화되지 않은 연결로 만들지 마세요.
적합한 경우: 서버에서 TLS를 사용하지 않도록 명시했고, 사용자가 전송 환경과 보호 방식을 확인한 설정
정리: 먼저 서비스 설정을 그대로 확인한 뒤 인증서를 점검하세요
TLS를 켠 뒤 인증서 오류가 발생하면 오류 정보를 보관하고 SNI를 확인하세요. Port, Host, 인증서 검증 설정을 한꺼번에 바꾸지 마세요. 원본 근거가 있는 항목 하나만 수정한 뒤 다시 연결해야 변경 효과를 확인할 수 있습니다.
입력 후 인터넷에 연결되지 않을 때는 어떤 순서로 확인해야 할까요?
Home에 연결됨으로 표시되면 UUID와 TLS 설정도 올바른 건가요? 반드시 그렇지는 않습니다. 시스템 터널이 만들어졌다고 해서 원격 서비스 인증이 완료되거나 웹페이지 요청이 성공한 것은 아닙니다. 먼저 현재 선택된 서버를 확인한 뒤 테스트 결과와 실제 요청 상태를 살펴보세요. 터널 스위치가 켜져 있다는 이유만으로 종단 간 연결이 성공했다고 판단하지 마세요.
- 선택한 항목 확인: Home으로 돌아가 현재 항목의 Type, Address, Port를 확인하세요. 다시 연결해 방금 저장한 설정으로 후속 요청을 보내세요.
- 테스트 의미 확인: 앱에서 제공하는 연결 테스트를 실행하세요. TCP 연결이 가능하다는 결과만으로는 해당 포트에서 연결을 받아들일 수 있다는 점만 알 수 있으며, UUID, WebSocket 경로, TLS 신원을 검증하지는 못합니다.
- 규칙 영향 분리: Home → Global Routing에서 잠시 Proxy를 선택하고 같은 대상으로 접속해 보세요. 테스트가 끝나면 원래 사용하던 Config 또는 기존 설정으로 되돌리세요. Direct로는 프록시 서비스가 정상인지 확인할 수 없습니다.
- 프로토콜 계층 확인: UUID와 VMess 암호화 매개변수를 확인하고, VLESS 서비스에서 별도로 지정한 추가 매개변수도 점검하세요. Flow가 관련된 경우 서비스 요구사항과 앱에서 실제로 지원하는 설정에 맞춰 입력하세요.
- 전송 계층 확인: 전송 방식, Host, 경로, TLS, SNI를 확인하세요. 원격 연결은 정상이지만 도메인 요청만 실패하면 DNS를 점검하세요. 처음부터 DNS와 모든 연결 매개변수를 한꺼번에 다시 작성하지 마세요.
포트 테스트는 성공했는데 웹페이지가 시간 초과되는 이유는 무엇인가요?
포트에 연결할 수 있다고 해서 프로토콜 인증까지 통과한 것은 아닙니다. 먼저 Home에서 해당 항목이 선택되었는지 확인한 다음 Type과 UUID를 점검하세요. 이어서 전송 방식과 TLS를 확인하세요. 특정 대상만 실패한다면 해당 요청의 오류 단서를 보관하고 대상 서비스, DNS, 규칙 문제를 구분해 살펴보세요.
TLS 핸드셰이크 오류가 발생하면 UUID가 잘못된 건가요?
UUID 문제라고 바로 단정하면 안 됩니다. 먼저 TLS 설정, Port, SNI, 기기의 날짜와 시간을 확인한 다음 인증서 검증 정보를 살펴보세요. 핸드셰이크 단계와 이후 프로토콜 인증은 서로 다른 단계이므로 오류가 발생한 위치에 따라 확인해야 합니다.
WebSocket에서 404가 표시되면 경로가 잘못된 건가요?
404는 HTTP 라우팅이 일치하지 않았다는 단서일 수 있지만, 상태 코드만으로 원인을 확정할 수는 없습니다. 전송 방식, Host, 전체 경로를 원본 설정과 하나씩 대조하세요. 올바른 Address와 Port에 연결했는지도 확인하고, 필요한 경우 서비스 제공자에게 서버 라우팅을 문의하세요.
Proxy로 바꾸면 되는데 Config로 돌아가면 실패합니다. VLESS로 바꿔야 하나요?
먼저 프로토콜을 바꾸지 마세요. 이 경우에는 Config에서 대상 요청에 적용되는 정책과 DNS 동작을 우선 확인해야 합니다. 같은 서버와 같은 테스트 대상을 유지한 채 관련 규칙과 FINAL에 적용되는 정책을 살펴본 뒤 설정 변경이 필요한지 판단하세요.
구독을 이미 사용 중인데 수동으로 다시 입력해야 하나요?
본인 구독 정보가 있다면 입력 오류를 어떻게 줄일 수 있을까요? 원본을 가져온 결과를 비교 자료로 보관한 뒤 수동 추가가 필요한지 판단하세요. 구독에는 프로토콜, 인증 정보, 전송 매개변수가 포함될 수 있어 직접 옮겨 적으면 추가 항목을 빠뜨리기 쉽습니다. 가져온 설정이 계속 유효한 것은 아니므로 서버 설정이 바뀌면 업데이트 결과와 현재 선택된 항목을 다시 확인해야 합니다.
- 업데이트 전: 현재 사용 가능한 서비스의 메모와 주요 항목을 기록해 두세요. 표시 이름만으로 같은 설정인지 판단하지 않도록 주의하세요.
- 업데이트 후: Home에서 해당 항목이 남아 있는지 확인하고 Type, Address, Port, 전송 설정을 다시 점검하세요. 수동으로 만든 복사본은 구독과 함께 자동으로 동기화된다고 가정하지 마세요.
- 직접 대조해야 하는 경우: 원본 정보와 Add Server의 항목을 하나씩 비교하세요. 대응하는 옵션이 없는 매개변수는 지원 여부를 먼저 확인하고, 이름이 비슷한 다른 항목에 입력하지 마세요.
- 도움을 요청할 때: Type, 전송 방식, 오류가 발생한 단계, 이미 확인한 사항을 설명할 수 있습니다. UUID, 전체 구독 주소, 그 안의 토큰은 인증 정보로 취급하고 공개하지 마세요.
최종적으로 어떤 프로토콜을 사용해야 할까요? 본인 서비스가 실제로 지원하고, 설정이 완전하며, 검증까지 통과한 항목을 사용하세요. VMess와 VLESS의 차이는 정확한 입력과 문제 해결을 위한 것이지, 이름만 보고 서비스를 바꾸라는 의미가 아닙니다. 클라이언트 구매와 연결 서비스 이용은 별개이며, 이 사이트는 연결 서비스나 구독을 제공·판매·추천하지 않습니다.