요약

FakeDNS는 V2Ray의 DNS 모드 중 하나입니다. 쿼리를 받으면 예약된 네트워크의 가짜 IP(예: 198.18.0.0/15)를 즉시 반환하고 실제 해석을 아웃바운드 단계로 미루어 DNS 왕복을 줄이고 첫 패킷 지연을 낮춥니다. TUN 모드와 가장 잘 어울리지만 IP 기준 라우팅 규칙이 작동하지 않을 수 있다는 점에 주의해야 합니다.

FakeDNS의 작동 방식

FakeDNS는 V2Ray의 특수 DNS 모드입니다. 켜면 DNS 쿼리를 받았을 때 V2Ray가 실제 DNS 해석을 기다리지 않고 예약된 네트워크의 가짜 IP(예: 198.18.0.0/15)를 즉시 반환합니다. 이렇게 하면 앱이 즉시 연결을 시작할 수 있어 대기 시간이 줄어듭니다.

비유하자면

기존 DNS는 '주소를 미리 확인한 후 나가는' 방식이라 매번 나가기 전에 주소를 확인하는 시간이 필요합니다. FakeDNS는 '일단 임의의 집 번호를 주고 나가서, 도착한 뒤에 구체적인 주소를 묻는' 방식입니다. 웹 서핑이나 메신저처럼 많은 도메인을 자주 접근해야 하는 시나리오에서는 후자가 대기 시간을 크게 줄여 줍니다.

DNS 쿼리 수신

앱이 특정 도메인 해석을 요청하면 V2Ray의 DNS 모듈이 해당 쿼리를 가로챕니다.

가짜 IP 반환

V2Ray가 예약된 네트워크 내의 가짜 IP를 즉시 반환하고, 앱은 곧바로 연결을 시작합니다.

아웃바운드에서 도메인 복원

트래픽이 라우팅 단계에 들어가면 V2Ray가 매핑 테이블을 통해 가짜 IP를 실제 도메인으로 복원합니다.

도메인별 전달

라우팅 규칙이 도메인 기준으로 아웃바운드를 매칭하여 트래픽을 프록시 또는 직결로 보냅니다.

FakeDNS로 속도를 높일 수 있는 시나리오

FakeDNS는 웹 브라우징, 채팅 앱 사용처럼 도메인 해석이 잦은 시나리오에 특히 적합합니다. 이러한 시나리오에서는 기존 DNS 해석이 여러 번 왕복해야 하지만, FakeDNS는 즉시 결과를 반환하여 지연을 크게 줄입니다.

어떤 시나리오에서 효과가 가장 큰가

웹 브라우징, 비디오 스트리밍, 인스턴트 메신저처럼 '도메인이 많고 해석이 잦은' 시나리오에서 FakeDNS의 효과가 가장 큽니다. 반면 온라인 게임이나 실제 IP 검증이 필요한 일부 금융 앱에서는 FakeDNS가 오히려 문제를 일으킬 수 있습니다. 켤지 여부는 주 사용 시나리오에 따라 결정하세요.

FakeDNS 켜기

권장

DNS 쿼리에 즉시 응답하여 첫 패킷 지연이 낮고, 웹 브라우징, 채팅, 비디오 등 고빈도 해석 시나리오에 적합합니다.

적합: TUN 모드 + 도메인 라우팅

FakeDNS 끄기

매번 해석이 실제 DNS를 거치므로 지연이 약간 높지만, IP 기준 매칭 규칙이 정상 작동합니다.

적합: 실제 IP가 필요한 앱

라우팅 규칙과의 연동

FakeDNS를 사용할 때는 IP 규칙보다 도메인 규칙을 우선 사용하는 것이 좋습니다. FakeDNS가 반환하는 것은 가짜 IP이므로 IP 기준 매칭 규칙이 제대로 작동하지 않을 수 있습니다. v2rayN에서는 '설정' → 'DNS'에서 FakeDNS를 켜고 '라우팅 설정'에서 규칙을 조정할 수 있습니다.

도메인 규칙

권장

도메인 기준 매칭은 FakeDNS의 매핑 메커니즘과 자연스럽게 맞아 분류가 정확합니다.

적합: FakeDNS 시나리오

IP 규칙

IP 기준 매칭이지만 FakeDNS가 반환하는 것은 가짜 IP이므로 규칙이 작동하지 않을 수 있습니다.

적합: FakeDNS를 끈 경우
IP 규칙 충돌 주의

라우팅 규칙에 IP 기준 매칭 규칙이 포함되어 있으면 FakeDNS가 올바르게 매칭하지 못할 수 있습니다. 도메인 규칙을 IP 규칙보다 앞에 두는 것이 좋습니다.

FakeDNS와 TUN 모드 조합

FakeDNS는 TUN 모드와 함께 사용할 때 가장 효과적입니다. TUN 모드가 모든 트래픽을 처리하므로 FakeDNS가 모든 DNS 쿼리를 가속화할 수 있습니다. 단, FakeDNS가 모든 시나리오에 적합한 것은 아닙니다. 예를 들어 IP 기준 라우팅 규칙은 가짜 IP를 올바르게 매칭하지 못할 수 있습니다.

TUN 모드에서는 모든 앱의 DNS 쿼리가 커널에 의해 처리되므로 FakeDNS의 효과가 커집니다. TUN 모드와 FakeDNS를 동시에 켰다면 라우팅 규칙에서 도메인 규칙을 맨 앞에 두어 분류가 정확하도록 하는 것이 좋습니다.

FakeDNS를 켜는 방법

v2rayN에서 '설정' → 'DNS' → 'FakeDNS 켜기'로 이동합니다. 켜면 v2rayN이 생성하는 구성에 fake-dns 서버를 추가합니다. v2rayNG에서는 '설정' → 'DNS' → 'FakeDNS 켜기'로 이동합니다.

{
  "dns": {
    "servers": [
      {
        "address": "fake-dns",
        "domains": [
          "geosite:geolocation-!cn"
        ]
      }
    ]
  }
}

위 예시에서 fake-dns는 중국 본토가 아닌 도메인의 해석을 처리하도록 구성되어 있습니다. 이렇게 하면 중국 본토가 아닌 도메인은 즉시 가짜 IP를 반환하고, 중국 본토 도메인은 여전히 실제 DNS 서버를 사용합니다.

모든 도메인을 FakeDNS로 처리하고 싶으신가요?

domains["geosite:geolocation-!cn", "geosite:cn"]로 변경하거나 domains 필드를 생략해도 됩니다. 단, 중국 본토 도메인도 FakeDNS에 맡기면 중국 본토 사이트의 해석도 아웃바운드 단계로 미뤄져 직결 속도에 영향을 줄 수 있습니다.

FakeDNS의 한계

FakeDNS는 만능이 아닙니다. 실제 IP가 필요한 시나리오(예: 일부 앱이 IP 주소를 검증하는 경우)에서는 FakeDNS가 문제를 일으킬 수 있습니다. 또한 FakeDNS는 커널이 도메인과 가짜 IP의 매핑 테이블을 유지해야 하므로 메모리 사용량이 늘어납니다. 낮은 사양의 기기에서는 켤지 여부를 신중히 결정해야 합니다.

간과하기 쉬운 문제

FakeDNS가 반환하는 가짜 IP는 예약된 네트워크(예: 198.18.0.0/15)에 속합니다. 어떤 앱이나 게임이 대상 IP를 하드코딩으로 검증하거나 'IP 기준 직결' 전략을 사용하면 연결 이상이 발생할 수 있습니다. 이런 경우 관련 도메인을 직결 규칙에 추가하거나 FakeDNS를 끄면 됩니다.

권장 구성

DNS 서버
fake-dns + 실제 DNS 폴백
라우팅 규칙
도메인 규칙 위주
적용 시나리오
TUN 모드 + 고빈도 해석
도메인 규칙을 IP 규칙보다 앞에 두어 가짜 IP 매칭 실패를 방지합니다.

비권장 구성

DNS 서버
fake-dns만
라우팅 규칙
IP 규칙 다수
적용 시나리오
실제 IP에 민감한 앱
IP 기준 매칭 규칙이 작동하지 않을 수 있으므로 도메인 규칙으로 바꾸는 것이 좋습니다.

켠 후 일부 앱이 열리지 않음

이러한 앱은 실제 IP를 검증했을 수 있습니다. FakeDNS를 끄거나 관련 도메인을 직결 규칙에 추가해 보세요.

IP 기준 규칙이 적용되지 않음

FakeDNS가 반환하는 것은 가짜 IP이므로 IP 기준 매칭은 실패합니다. 도메인 규칙으로 바꾸고 도메인 규칙을 IP 규칙보다 앞에 두세요.

메모리 사용량 증가

커널이 도메인과 가짜 IP의 매핑 테이블을 유지해야 합니다. 낮은 사양의 기기에서는 FakeDNS를 끄고 일반 DNS를 사용할 수 있습니다.

언제 켜는 것이 좋을까

TUN 모드로 모든 트래픽을 처리하고 라우팅이 도메인 규칙 위주라면 FakeDNS가 첫 패킷 지연을 크게 줄일 수 있습니다. 반대로 라우팅이 IP 규칙에 크게 의존하거나 앱이 실제 IP에 민감하다면 꺼 두는 것이 좋습니다.

FakeDNS가 DNS를 유출하나요?

아니요. FakeDNS는 해석을 아웃바운드 단계로 미룰 뿐이며, 실제 해석은 설정한 DNS 서버가 수행하므로 도메인이 프록시 서버에 평문으로 노출되지 않습니다.

FakeDNS와 일반 DNS를 동시에 사용할 수 있나요?

네. FakeDNS가 일부 도메인(예: geosite:geolocation-!cn)만 처리하도록 하고 나머지 도메인은 실제 DNS 서버를 사용하게 할 수 있습니다.