CLASH 공식 사이트 · clashoffice.com
    사용 설명 2026-04-18 · 6분 소요

    DNS 설정 가이드: 해석 오류와 DNS 오염 문제 해결

    페이지가 열리지 않거나 이미지가 로드되지 않거나 일부 사이트 접속이 느린 경우, 오래 조사한 끝에 원인이 노드가 아니라 DNS 해석이 오염되었거나 잘못된 경로로 갔기 때문인 경우가 많습니다. 이 글에서는 Clash의 DNS 모듈을 어떻게 설정해야 하는지 명확히 설명합니다.

    DNS도 설정이 필요한 이유

    프록시 연결 자체가 완전히 정상이더라도 도메인 해석에 오염되거나 하이재킹된 DNS 서버를 사용하면 브라우저가 얻는 목표 IP가 잘못되어 프록시를 거치든 안 거치든 정상적으로 접속할 수 없습니다. 그래서 프록시 클라이언트는 보통 시스템의 도메인 해석 요청을 가로채 신뢰할 수 있는 DNS 서버로 해석한 뒤 어떤 IP에 연결할지 결정하는 DNS 모듈을 내장하고 있습니다.

    기본 DNS 설정

    # config.yaml 조각 dns: enable: true listen: 0.0.0.0:53 default-nameserver: - 223.5.5.5 nameserver: - https://dns.google/dns-query - tls://1.1.1.1
    • default-nameserver: 아래 nameserver에 있는 DNS-over-HTTPS / DNS-over-TLS 서버 자체의 도메인을 해석하는 데 쓰이며, 보통 국내에서 직접 연결 가능한 일반 DNS를 지정합니다.
    • nameserver: 실제로 방문하는 사이트를 해석하는 데 쓰이는 DNS 서버로, 중간 네트워크 장비에 의한 조작이나 차단을 피하기 위해 암호화를 지원하는 DoH(https://) 또는 DoT(tls://) 사용을 권장합니다.

    fake-ip: 라우팅을 더 지능적으로

    TUN 모드를 활성화하면 보통 fake-ip 모드도 함께 활성화됩니다. 코어는 각 도메인에 가상 IP를 할당해 시스템에 반환하고, 실제 연결 시에는 도메인(실제 IP가 아닌)을 기준으로 규칙을 매칭하여 연결을 시작합니다. 장점은 라우팅 판단이 도메인 수준까지 정확해지며 DNS가 실제로 반환하는 결과에 영향받지 않는다는 것입니다.

    # dns 필드 계속 enhanced-mode: fake-ip fake-ip-range: 198.18.0.1/16 fake-ip-filter: - "*.lan" - "localhost.ptlogin2.qq.com"

    fake-ip-filter는 가상 IP에 적합하지 않은 도메인(LAN 기기, 실제 IP가 있어야 정상 작동하는 서비스 등)을 제외하는 데 사용되며, 필터 규칙에 일치하는 도메인은 일반 DNS 해석 흐름을 따릅니다.

    흔한 함정:일부 LAN 기기 관리 페이지나 게임 매치메이킹 등은 실제 IP에 의존합니다. 접속에 문제가 있다면 먼저 fake-ip의 영향인지 확인하고, 해당 도메인을 fake-ip-filter에 추가하면 대개 해결됩니다.

    DNS가 정상 작동하는지 확인하는 방법

    터미널/명령 프롬프트에서 nslookup이나 dig로 도메인을 조회하여 프록시를 켜기 전후 반환된 IP가 다른지 비교할 수 있습니다. 프록시를 켠 후 대상 사이트에 속하지 않는 것이 명백한 IP(예: 내부망 주소, 유효하지 않은 주소)가 반환된다면 DNS 설정에 문제가 있을 가능성이 높으며 nameserver 목록이나 fake-ip-filter 설정을 확인해야 합니다.

    도메인별로 다른 DNS 해석 전략 지정하기

    국내 사이트의 해석 속도를 빠르게 유지하면서 해외 사이트가 오염되지 않도록 하려면, 규칙 세트별로 다른 DNS 전략을 설정할 수 있습니다. 국내 도메인은 국내 DNS로 직접 해석하고 해외 도메인은 암호화 DNS로 해석하도록 하면 서로 영향을 주지 않습니다.

    # config.yaml 조각: 규칙 세트별 DNS 전략 분리 dns: nameserver-policy: "geosite:cn": ["223.5.5.5", "119.29.29.29"] nameserver: - https://dns.google/dns-query - tls://1.1.1.1

    nameserver-policy는 특정 도메인 그룹(여기서는 내장된 geosite:cn 국내 도메인 분류 사용)에 전용 DNS 서버를 지정할 수 있게 합니다. 정책 범위 밖의 도메인은 계속 기본 nameserver 목록으로 해석되며, 두 로직은 서로 충돌하지 않습니다.

    IPv6 환경에서 추가로 주의할 점

    기기나 통신사 네트워크에서 이미 IPv6가 활성화되어 있다면, DNS가 반환하는 AAAA 레코드로 인해 시스템이 IPv6 연결을 우선 시도할 수 있으며, 일부 프록시 노드나 규칙 세트가 IPv6에 아직 완전히 대응하지 못한 경우 '어떤 때는 연결되고 어떤 때는 안 되는' 진단하기 어려운 문제가 발생하기 쉽습니다. IPv6 경로가 안정적인지 아직 확신이 없다면 먼저 DNS 설정에서 IPv6 해석을 비활성화할 수 있습니다.

    # dns 필드 계속 ipv6: false

    IPv6 환경에서 노드 연결성에 문제가 없음을 확인한 후 다시 활성화하면 됩니다. 이 단계는 'DNS 문제인지 IPv6 경로 문제인지'라는 흔한 진단 사각지대를 빠르게 배제하는 데 도움이 됩니다.

    요약

    DNS 문제는 '네트워크가 안 된다'는 것과 비슷하게 나타나서 노드 장애로 오진되기 쉽습니다. 접속 이상이 발생하면 먼저 DNS 계층을 배제해 보세요. 신뢰할 수 있는 암호화 DNS 서버로 바꾸고, fake-ip 필터 규칙을 확인하고, IPv6 환경의 호환성에 주의하는 것이 노드를 반복적으로 바꾸는 것보다 문제를 짚어내는 데 훨씬 효과적일 때가 많습니다.

    다 읽으셨다면 한번 사용해보세요

    5개 플랫폼용 설치 파일이 다운로드 페이지에 모두 정리되어 있습니다.튜토리얼 페이지의 절차를 따라 하면 바로 사용할 수 있습니다.

    다운로드 페이지로 이동
    블로그 목록으로 돌아가기
    아직 Clash를 다운로드하지 않으셨나요?탭하여 공식 다운로드 페이지로 이동