Profile, 구독, 로컬 설정부터 구분하기
iPhone 클라이언트에서 Profile은 보통 선택해 사용할 수 있는 완전한 설정 하나를 뜻합니다. 어떤 프록시 노드를 사용할지, 노드를 어떻게 그룹으로 묶을지, 요청을 어떤 규칙으로 보낼지, 특정 DNS 설정을 사용할지 등을 지정합니다. Profile을 전환하면 설정 전체가 바뀌지만, 같은 설정 안에서 다른 노드를 선택하면 특정 프록시 그룹의 선택 항목만 바뀝니다.
구독은 설정을 가져오는 원격 주소인 경우가 많습니다. 구독 URL을 클라이언트에 추가하면 클라이언트가 해당 주소에서 내용을 다운로드해 원격 Profile을 생성합니다. 구독 주소와 현재 적용 중인 설정은 같은 것이 아닙니다. 서버의 내용이 바뀌어도 클라이언트에서 업데이트가 완료되어야 새 규칙과 노드가 로컬 설정에 반영됩니다.
| 이름 | 클라이언트에서의 역할 | 주요 작업 |
|---|---|---|
| Profile | 설정 목록에서 선택해 사용할 수 있는 설정 | 이름 지정, 선택, 삭제 |
| 구독 | 원격 설정을 가져오는 주소 | 가져오기, 수동 업데이트 |
| 로컬 설정 | 파일에서 가져오거나 기기에 저장한 설정 | 가져오기, 편집, 백업 |
헷갈리기 쉬운 점이 하나 더 있습니다. 설정 파일 안에서 proxy-providers를 사용해 노드 제공자 주소를 참조할 수 있습니다. 이 주소는 설정에서 사용하는 노드 데이터를 업데이트하는 용도이며, 설정 목록에 별도의 Profile로 자동 추가되지는 않습니다. 무엇을 변경하는지 확인하려면 작업이 ‘설정 목록’에서 이루어지는지, 특정 YAML 파일의 내용에서 이루어지는지 먼저 살펴보세요.
원격 Profile 추가하기: 주소를 확인한 뒤 가져오기
아래 안내는 ‘설정’ 또는 ‘Profiles’ 목록을 제공하는 iPhone용 Clash 클라이언트를 기준으로 합니다. 클라이언트마다 메뉴 이름이 ‘설정’, ‘Profiles’, ‘설정 파일’ 등으로 다를 수 있고 버튼 위치도 다릅니다. 다른 앱의 화면을 그대로 따라 하기보다 해당 기능을 찾아보세요. 가져오기 전에 사용 중인 클라이언트가 읽을 수 있는 설정 주소인지 확인하세요. 서비스 제공자의 로그인 페이지나 결제 페이지, 단일 노드 공유 링크는 설정 주소가 아닙니다.
- 신뢰할 수 있는 곳에서 구독 URL을 복사하세요. 쿼리 매개변수가 구독 식별에 사용될 수 있으므로 원래 주소를 보관하고 임의로 삭제하지 마세요.
- 클라이언트의 ‘설정’ 또는 ‘Profiles’ 목록을 열고 ‘추가’나 오른쪽 위의 더하기 버튼을 누른 다음 ‘URL에서 가져오기’, ‘원격 설정’과 같은 메뉴를 선택하세요.
- URL을 붙여 넣고 ‘일상용 규칙’처럼 알아보기 쉬운 이름을 입력하세요. 업데이트 간격을 설정하라는 메시지가 표시되면 우선 기본값을 사용하세요.
- 저장한 뒤 다운로드와 파싱이 끝날 때까지 기다리세요. 목록으로 돌아가 새 항목이 표시되는지 확인한 다음, 상세 화면에서 노드나 프록시 그룹이 있는지 살펴보세요.
- 새 Profile을 선택해 현재 설정으로 지정하세요. 그런 다음 아웃바운드 모드와 프록시 그룹 선택을 확인한 뒤 시스템 VPN 연결을 시작하세요.
구독 URL에는 계정 식별 정보가 포함될 수 있습니다. 전체 주소를 공개 스크린샷이나 도움 요청 게시물, 공유 메모에 올리지 마세요. 문제를 확인해야 한다면 오류 문구와 가져온 방법만 설명하세요.
가져오기에 실패하면 먼저 ‘다운로드 실패’인지 ‘파싱 실패’인지 구분하세요. 다운로드에 실패했다면 네트워크, 주소 누락 여부, 구독 유효 기간을 확인하세요. 파싱에 실패했다면 응답 내용이 해당 클라이언트에서 지원하는 Clash 형식인지 살펴보세요. 웹페이지가 열린다고 해서 유효한 YAML이 반환된다는 뜻은 아닙니다. 서비스 제공자가 Clash용과 다른 클라이언트용 구독 형식을 따로 제공한다면 현재 클라이언트와 호환되는 형식을 선택하세요.
파일에서 추가하기: 고정된 용도나 직접 수정할 설정에 적합
.yaml 또는 .yml 파일이 있다면 먼저 iPhone의 ‘파일’ 앱에 저장한 다음 클라이언트의 ‘파일에서 가져오기’나 ‘로컬 설정’ 기능으로 파일을 선택하세요. 시스템 공유 메뉴에서 가져올 수 있는 클라이언트도 있습니다. 가져온 뒤에는 Profile 목록으로 돌아가 해당 설정을 선택해야 합니다. ‘파일’ 앱에 파일을 저장해 두기만 해서는 클라이언트에 불러온 것이 아닙니다.
로컬 설정은 규칙 하나를 시험하거나, 정상 작동하는 버전을 보관하거나, 원격 주소에 의존하지 않는 설정을 관리할 때 유용합니다. YAML을 수정할 때는 들여쓰기를 일관되게 유지하고 정상 작동하는 사본을 먼저 남겨 두세요. Clash와 mihomo가 지원하는 필드에는 차이가 있습니다. 예를 들어 특정 코어에서만 인식하는 필드를 사용한 설정은 다른 클라이언트에서 파일을 읽더라도 파싱 중 지원되지 않는다는 오류가 날 수 있습니다.
문제 위치를 찾기 쉬운 규칙 예시
‘특정 도메인이 왜 예상한 프록시 그룹을 사용하지 않을까?’를 확인하려면 노드 목록만 볼 것이 아니라 현재 Profile의 규칙을 먼저 살펴보세요. 규칙은 설정에 작성된 순서대로 적용되며 앞에서 먼저 일치한 규칙이 아웃바운드를 결정할 수 있습니다. 프록시 그룹 이름도 현재 설정에 정의된 이름과 일치해야 합니다. 로컬 파일을 수정했다면 클라이언트 안내에 따라 저장하고 설정을 다시 불러온 뒤 새 연결로 테스트하세요.
여러 설정의 이름 지정, 업데이트, 전환
설정이 많아지면 클라이언트 이름을 반복하기보다 사용 목적이 드러나는 이름을 붙이세요. ‘일상용 규칙’, ‘회사 네트워크’, ‘로컬 테스트’처럼 지정하면 ‘설정 1’, ‘설정 2’보다 구분하기 쉽습니다. 보통 설정 목록에서 항목을 길게 누르거나 항목 옆의 더보기 메뉴에서 ‘이름 변경’, ‘이름 편집’을 찾을 수 있습니다. 일부 클라이언트는 원격 설정 편집 화면에서 표시 이름을 바꿉니다. 이름 변경은 대개 이 기기의 목록에 표시되는 이름만 바꾸며 원격 구독 내용은 수정하지 않습니다.
원격 설정 업데이트하기
- Profile 목록에서 업데이트할 원격 항목을 찾아 ‘업데이트’ 또는 ‘새로고침’을 선택하세요. 해당 항목으로 전환하는 것만으로는 업데이트되지 않습니다.
- 업데이트 결과를 기다리세요. 완료되면 노드 수, 프록시 그룹, 규칙이 예상대로인지 확인한 다음 현재 선택된 Profile도 확인하세요.
- 실패로 표시되더라도 기존 설정을 바로 삭제하지 말고 그대로 보관하세요. 네트워크, 구독 유효 기간, 서비스 제공자가 안내한 형식을 확인한 뒤 다시 시도하세요.
원격 설정을 다음에 업데이트하면 해당 설정 사본에 직접 입력한 내용이 덮어써질 수 있습니다. 사용자 지정 규칙을 계속 유지하려면 먼저 클라이언트에서 오버라이드나 병합 설정을 지원하는지 확인하세요. 지원하지 않는다면 로컬 설정으로 별도 저장해 ‘구독에 따라 업데이트’하는 설정과 ‘직접 관리’하는 설정을 구분하는 편이 좋습니다. 자동 업데이트 지원 여부와 확인 주기는 클라이언트 및 시스템 상태에 따라 달라집니다.
사용 중인 Profile 전환하기
‘설정’ 또는 ‘Profiles’ 목록으로 돌아가 원하는 항목을 선택하고, 목록의 선택 표시나 현재 설정 이름이 바뀌었는지 확인하세요. 이어서 프록시 그룹 화면을 열고 규칙 모드에서 각 그룹의 선택 항목을 확인합니다. 두 Profile에 모두 ‘PROXY’라는 프록시 그룹이 있더라도 포함된 노드는 다를 수 있습니다. 이전 설정에서 선택한 항목만 보고 현재 실제 아웃바운드를 판단하지 마세요.
전환한 뒤 브라우저에서 페이지를 다시 열거나 확인하려는 앱에서 새 요청을 보내세요. 기존 연결은 전환 전에 만들어진 세션을 계속 사용할 수 있습니다. 결과가 바로 달라지지 않으면 해당 페이지를 닫았다가 다시 시도하세요. 클라이언트에서 연결을 다시 시작하라는 메시지가 표시되면 안내에 따라 연결을 끊었다가 재연결하고, iPhone의 ‘설정’ → ‘VPN’에서 시스템 연결 상태를 확인하세요.
여러 설정을 관리할 때 흔히 하는 실수 세 가지
업데이트는 됐지만 이전 설정을 계속 사용 중
업데이트한 항목이 현재 선택된 항목이라는 보장은 없습니다. 먼저 업데이트 결과에 표시된 이름을 확인하고 현재 설정 이름과 대조하세요. 같은 주소를 여러 번 가져왔다면 비슷한 항목이 목록에 여럿 생길 수 있습니다. 새 항목이 정상 작동하는지 확인하기 전에는 이름만 보고 기존 항목을 삭제하지 마세요.
설정을 바꿨는데 규칙 모드에서 차이가 보이지 않음
먼저 클라이언트가 현재 규칙 모드, 전역 모드, 직접 연결 모드 중 무엇을 사용하는지 확인하세요. 전역 모드에서는 보통 설정에 적힌 개별 규칙에 따라 아웃바운드가 결정되지 않습니다. 직접 연결 모드에서도 다른 설정에 프록시 규칙이 추가됐다고 해서 자동으로 프록시를 거치지는 않습니다. 규칙 모드로 전환한 다음 대상 도메인에 적용되는 규칙과 프록시 그룹을 확인하세요. 모드 이름은 클라이언트 화면에 표시된 명칭을 기준으로 합니다.
설정은 선택되지만 시스템 연결이 되지 않음
Profile은 실행에 필요한 설정을 제공하고, iPhone의 시스템 VPN 연결은 별도로 이루어집니다. 처음 활성화할 때는 시스템 안내에 따라 VPN 구성을 추가하도록 허용하세요. 이후 클라이언트에서 연결 상태를 확인하고 ‘설정’ → ‘VPN’에서 시스템 상태를 살펴보세요. 데스크톱 안내에 나오는 7890 같은 로컬 프록시 포트를 iPhone에서 시스템 VPN 포트로 직접 입력해야 한다고 오해하지 마세요.
언제든 되돌릴 수 있도록 설정 보관하기
구독 주소, 규칙, DNS 설정을 변경하기 전에 현재 사용할 수 있는 Profile 이름과 아웃바운드 모드, 주요 프록시 그룹 선택을 기록해 두세요. 로컬 YAML은 수정 전 파일을 따로 보관하고, 원격 구독은 원본 주소를 보관하면서 해당 계정에 계속 접속할 수 있는지도 확인하세요. 내보내거나 백업할 때는 파일에 노드 인증 정보와 구독 정보가 포함될 수 있다는 점도 유의하세요.
평소에는 간단하게 관리할 수 있습니다. 안정적인 원격 설정 하나는 일반 연결에 사용하고, 로컬 설정 하나는 변경 사항을 테스트하는 데 사용하세요. 전환할 때는 먼저 Profile을 선택하고 모드와 프록시 그룹을 확인한 다음 새 요청으로 결과를 검증하면 됩니다. 문제가 생겨도 구독 업데이트, 설정 전환, 시스템 연결 상태 중 무엇이 원인인지 빠르게 구분할 수 있습니다.