본문으로 바로가기 본문 바로가기
WIKI 기술 지식 베이스

와일드카드 DNS 레코드

원문 보기 위키 갱신

와일드카드 DNS 레코드 (Wildcard DNS records)

일반 DNS 레코드는 도메인 이름을 하나 또는 여러 IP 주소 또는 기타 연관 리소스에 매핑해요(일대다 매핑). 와일드카드 DNS 레코드를 사용하면 다대다(many-to-many) 매핑이 가능해요. 예를 들어 수백 또는 수천 개의 서브도메인을 같은 리소스로 가리키고 싶을 때 유용하죠.

출처: 문서

본문

일반 DNS 레코드는 도메인 이름을 하나 또는 여러 개의 IP 주소나 기타 연관 리소스에 매핑해요(일대다 매핑). 와일드카드 DNS 레코드를 사용하면 다대다 매핑이 가능해요. 예를 들어 수백 또는 수천 개의 서브도메인을 같은 리소스로 가리키고 싶을 때요.

Cloudflare 내에서 와일드카드 DNS 레코드는 프록시 또는 DNS-only 중 하나일 수 있어요.

와일드카드 레코드 생성하기 (Create a Wildcard record)

와일드카드 DNS 레코드를 만들려면 Name 필드에 *가 있는 DNS 레코드를 만들어 주세요.

Type Name IPv4 address Proxy status
A * 192.0.2.1 Proxied

주의

프로젝트가 Cloudflare Pages에 있다면 와일드카드 커스텀 도메인이 지원되지 않는다는 점에 유의해 주세요. 자세한 내용은 알려진 이슈를 참조해요.

더 깊은 서브도메인에 대해 특별히 와일드카드 DNS 레코드를 만들 수도 있어요. 예를 들어 *.www.example.com에 와일드카드 레코드를 만들고 싶다면 이름 필드에 *.www가 있는 레코드를 만들면 돼요.

Type Name IPv4 address Proxy status
CNAME *.www example.com Proxied

고려할 사항 (Aspects to consider)

와일드카드는 첫 번째 라벨에서만 지원돼요

즉 subdomain.*.example.com 같은 호스트 이름은 별표(*) 문자가 있는 수준에서 와일드카드가 아니에요. 그 이름으로 DNS 레코드를 만들면, 별표는 와일드카드 연산자가 아니라 리터럴 문자 *로 해석돼요.

와일드카드는 기본적으로 다중 레벨(multi-level)이에요

*.*.example.com에 DNS 레코드를 만들면 첫 번째 별표만 와일드카드로 해석되고 두 번째 별표는 리터럴 * 문자로 해석돼요. *.example.com 레코드는 기본적으로 이미 다중 레벨이에요. 즉 우선하는 특정 DNS 레코드가 없는 한, abc.example.com뿐 아니라 123.abc.example.com도 커버한답니다.

특정 DNS 레코드가 와일드카드 레코드보다 우선해요

와일드카드 레코드는 질의된 이름에 정확한 레코드가 존재하지 않을 때만 적용돼요. 레코드나 위임이 존재하면 와일드카드는 적용되지 않아요.

예시 1 - 특정 레코드 또는 그 아래

도메인에 다음 두 레코드만 있다고 해 보아요:

Type Name Content
A * 192.0.2.1
TXT abc <some_text>

A 와일드카드 레코드는 example.com의 모든 서브도메인으로 가는 질의에 사용되지만, abc.example.com 또는 그 특정 라벨 아래의 어떤 것(123.abc.example.com이나 deeper.label.abc.example.com 등)은 제외돼요.

와일드카드는 abc.example.com의 특정 레코드 아래에 있지 않은 더 깊은 라벨 — 예를 들어 deeper.label.xyz.example.com — 에는 여전히 사용돼요.

예시 2 - 암시적 부모(implicit parent)

도메인에 다음 두 레코드만 있다고 해 보아요:

Type Name Content
A * 192.0.2.1
TXT 123.abc <some_text>

이 예시에서 123.abc.example.com은 abc.example.com의 하위 항목이고, abc.example.com에는 연결된 레코드가 없어요. 동작은 사용 중인 네임서버 유형에 따라 달라져요:

사용 가능 여부 (Availability)

모든 요금제의 고객이 와일드카드 DNS 레코드를 만들고 프록시할 수 있어요.

제한 사항 (Limitations)

DNS에 CNAME 설정(부분)을 사용한다면, Cloudflare는 와일드카드 레코드에 대한 SSL/TLS 인증서를 자동으로 프로비저닝하지 않아요.

와일드카드 호스트 이름 인증서의 경우 인증서 발급과 갱신은 사용 중인 인증서 유형에 따라 달라져요:

  • Universal: TXT 검증 방법을 사용해 DCV를 수행해요.
  • Advanced: 대부분의 경우 Delegated DCV를 선택할 수 있으며, 인증서 관리를 크게 간소화해 줘요.

Delegated DCV를 사용할 수 없다면 인증서 발급과 갱신에 TXT 기반 DCV를 사용해야 해요. 즉 인증서의 모든 호스트 이름마다 TXT DCV 토큰 하나를 배치해야 해요. 인증서의 호스트 이름 중 하나라도 검증에 실패하면 인증서는 발급되거나 갱신되지 않아요.

즉 example.com과 *.example.com을 커버하는 와일드카드 인증서는 권한 있는 DNS 공급자에 두 개의 DCV 토큰을 배치해야 해요. 마찬가지로 SAN에 5개의 호스트 이름(와일드카드 포함)이 있는 인증서는 권한 있는 DNS 공급자에 5개의 DCV 토큰을 배치해야 해요.

추가 정보 (Additional information)

와일드카드 레코드에 대한 자세한 정보와 그 제한 사항에 대한 더 많은 내용은 소개 블로그 포스트 ↗︎를 참조해요.

각주 (Footnotes)

  1. Enterprise 고객이 사용할 수 있는 선택(opt-in) 구성이에요. ↩

더 알아보기 (Learn more)

와일드카드 레코드는 첫 번째 라벨에서만 동작하고 기본적으로 다중 레벨이며, 특정 레코드가 있으면 와일드카드보다 우선한다는 점을 기억하세요. 와일드카드 인증서의 DCV 토큰 수 설정도 중요해요. DNS 레코드 관리와 DNS 레코드 유형 문서를 함께 참고해 주세요.