DNS CNAME 레코드?

jinjoo-jung·2024년 6월 4일

CNAME 레코드

  • DNS CNAME 레코드는 도메인의 정식 이름을 지정하는 DNS 영역에서 사용할 수 있는 레코드 유형으로, 다른 도메인의 별칭이거나 주 도메인의 하위 도메인일 수 있다.

  • DNS CNAME 레코드는 한 호스트 이름을 다른 호스트 이름에 매핑한다. 즉, IP 주소는 같지만 각각 다른 이름을 가진 여러 호스트를 가질 수 있다.

  • CNAME(정식 이름) 레코드는 "실제 이름" 또는 "정식 이름"이라고도 한다. CNAME 레코드는 별칭 이름을 해당 별칭의 true, 정식 대응하는 이름에 매핑하기 때문

CNAME 레코드를 단계별로 생성하는 방법

  1. DNS 관리 콘솔로 이동
  2. '레코드'를 클릭한 다음 표시되는 레코드 목록에서 'CNAME'을 선택
  3. CNAME 레코드를 만들려는 도메인 이름을 입력
  4. 하위 도메인으로 처리할 호스트명을 입력
  5. 레코드를 요청하는 시스템에서 레코드가 캐시에 유지되는 시간인 TTL(Time To Live) 를 입력
  6. 고정 IP 주소를 사용하는 시스템의 경우 권장 TTL은 1800 이상이다.

DNS CNAME 레코드는 어떻게 작동?

  • CNAME 레코드는 정식 이름 (도메인의 실제 이름)을 가리킨다. 따라서 블로그에 CNAME 레코드를 설정하면 A 레코드를 통해 블로그의 IP 주소가 반환된다.

  • CDN은 세 가지 종류의 서버에 의존

오리진 서버 : 오리진 서버에는 콘텐츠의 원본 버전이 포함되어 있으며 원본 소스 역할을 한다. 콘텐트를 업데이트해야 할 때마다 오리진 서버에서 변경이 이루어진다. 오리진 서버는 콘텐츠 공급업체가 소유하고 관리할 수도 있다.

엣지 서버 : 엣지 서버는 전 세계 여러 지리적 위치에 위치하며, 이를 PoP이라고 한다. 이러한 PoP 내의 엣지 서버는 오리진 서버에서 복사된 콘텐츠를 캐싱하고 , 인근 사용자에게 해당 콘텐츠를 전송하는 역할을 담당한다. 사용자가 오리진 서버의 콘텐츠에 대한 접속을 요청하면 지리적으로 가까운 엣지 서버에 캐싱된 콘텐츠 사본으로 리디렉션된다. 캐싱된 콘텐츠가 오래된 경우 엣지 서버는 오리진 서버에 업데이트 된 콘텐트를 요청한다.

DNS(도메인 네임 시스템) 서버 : 오리진 및 엣지 서버의 IP 주소를 추적하고 제공한다. 클라이언트가 오리진 서버에 요청을 보내면 DNS 서버는 콘텐츠를 더 빠르게 제공할 수 있는 페어링된 엣지 서버의 이름으로 응답한다.

CDN 최적의 경험을 위한 필수 기능

  • 지연 시간 단축
  • 부하 분산

CDN의 장점

  • 성능 향상
  • 가용성 보장
  • 보안 강화
  • 고객 경험 개선
  • 인텔리전스 수집
  • 트래픽 부하 분산
  • 대역폭 비용 절감

DNS (Domain Name System)
DNS는 "도메인 이름 시스템"의 약자로, 인터넷의 전화번호부와 같은 역할을 합니다. 사람들이 웹사이트 주소를 기억하기 쉬운 도메인 이름(예: www.example.com)으로 입력할 때, DNS 서버는 그 도메인 이름을 IP 주소(예: 192.0.2.1)로 변환합니다. 이 IP 주소는 인터넷에서 컴퓨터나 서버를 식별하는 데 사용됩니다. 즉, DNS는 사용자가 도메인 이름을 통해 웹사이트에 접근할 수 있도록 해주는 시스템입니다.

CDN (Content Delivery Network)
CDN은 "콘텐츠 전송 네트워크"의 약자로, 전 세계 여러 위치에 데이터 센터를 두고 사용자에게 콘텐츠를 더 빠르게 전달하는 시스템입니다. 예를 들어, 한 웹사이트의 서버가 미국에 위치해 있고 한국의 사용자가 그 사이트를 방문할 때, CDN은 가장 가까운 데이터 센터에서 콘텐츠를 제공하여 로딩 시간을 줄여줍니다. 이는 웹사이트의 성능을 향상시키고 사용자 경험을 개선하는 데 도움이 됩니다.

CNAME (Canonical Name)
CNAME은 "정규화된 이름"을 의미하는 DNS 레코드 유형 중 하나입니다. CNAME 레코드를 사용하면 한 도메인 이름(별칭)을 다른 도메인 이름(실제 호스트 이름)에 매핑할 수 있습니다. 예를 들어, www.example.com이라는 도메인을 example.com 서버로 매핑할 수 있습니다. 이는 도메인 관리를 유연하게 하고 여러 서비스를 하나의 IP 주소에 연결할 때 유용합니다.

CNAME 설정과정

  1. 도메인 등록 : 사용자의 웹사이트에 대한 도메인 이름이 필요하다 (ex. www.yoursite.com)같은 주소를 가지고 있어야 한다.

  2. CDN 제공자 선택 : CDN 서비스를 제공하는 회사를 선택 (Cloudflare, Akamai, AWS , CloudFront) 등 다양한 옵션이 있다.

  3. CDN 설정 : CDN 제공자는 CDN 서비스를 설정한 후, 특정 CDN 서버의 주소를 제공한다. 이 주소는 cdn.yoursite.com 과 같이 우리의 도메인 이름을 기반으로 할 수도 있고, CDN 제공자의 도메인을 기반으로 할 수도 있다.

  4. CNAME 레코드 생성 : 우리의 도메인 이름 관리자(DNS 관리자)에 로그인하여 CNAME 레코드를 생성한다. 'images.yoursite.com' 과 같은 서브 도메인을 CDN 제공자의 주소로 매핑한다. 예를 들어, CDN에서 제공하는 주소가 'yourcdnprovider.com'이라면, CNAME 레코드에서 'images.yoursite.com'은 'yourcdnprovider.com'을 가리키도록 설정한다

  5. DNS 전파 기다리기 : DNS 레코드 변경이 전 세계에 전파되는 데는 최대 48시간까지 걸릴 수 있다. 이 기간동안에는 새로운 설정이 완전히 적용될 때까지 기다려야 한다.

  6. 콘텐츠 업로드 및 테스트 : 설정이 완료되면, 'images.yoursite.com'을 통해 접근하는 모든 이미지와 정적 파일들이 CDN을 통해 제공되도록 한다. 모든 것이 제대로 설정되었는지 확인하기 위해 사이트를 테스트하고 이미지 로딩 속도와 성능을 검토한다.

=> CNAME을 설정하는 것은 기본적으로 사용자의 도메인을 통해 CDN에 접근할 수 있게하며, CDN의 모든 장점을 웹사이트에 적용할 수 있도록 하는 중요한 단계이다.


  • 호스팅 kr 들어가서 cname 설정?
  • cdn이랑 oss 연결이 되었다면, cdn으로 리소스가 불러와져야 한다.
  • cname은 간단하게 어떤 도메인을 다른 이름으로 매핑 시키는 것.
  • 현재 도메인 자체가 호스팅 kr에 있어서 여기서 voidX 서브 도메인에 대한 canme을 설정해야 한다.
    -> cdn 설정할 때 cdn에 고유주소가 있는데, 그 주소를 cname을 통해서 voidx 서브 도메인으로 매핑하는 것, 이 때 매핑이 잘 안되면 Pending

정적파일

  • 웹 사이트는 일반적으로 이미지, 자바스크립트 , css 등의 여러가지 추가 파일을 제공해야 한다. 이것들을 흔히 정적 파일이라고 부른다. 서버에서 직접 이 모든 정적 파일을 제공하는 방법을 택할 수도 있지만, 이런 경우는 단점이 많다.
  1. 서버의 저장 용량은 상대적으로 비싸다.
  2. 서버의 저장 용량은 증설하기 어렵다.
  3. 그러나 많은 컴퓨팅 파워를 요구하지는 않는다.

=> 따라서 위와 같은 정적 파일들을 일반적으로 클라우드 업체에서 제공하는 정적 파일 저장소를 사용한다. S3 등의 정적 파일 저장소는 위 단점들에 대한 완벽한 대안이 된다.

CDN은 지리적으로 분산된 여러 개의 서버로, 수많은 이미지 콘텐츠의 빠른 전송, 대용량 콘텐츠의 초고속 다운로드, 미디어 콘텐츠의 끊김 없는 스트리밍 서비스 등 많은 분야에서 활용된다.
일반적으로 지역별로 여러 개의 서버를 두어 사용자의 요청을 가장 가까운 로컬 서버에서 처리하도록 한다. 이 과정에서 정적 파일 저장소에서 가까운 CDN 로컬 서버로 데이터를 전송해야 하는데, 해당 지역에 데이터가 들어있나 없나에 따라 사용자의 응답 속도에 차이가 난다.

도메인을 만들고, CNAME 등을 추가로 설정이 가능.

profile
개인 개발 공부, 정리용 🔗

0개의 댓글