Skip to content

Dashboard

CNAME là gì? - Bản ghi CNAME

Created by Admin

Các bản ghi CNAME có khả năng cho phép một server sở hữu nhiều tên khác nhau. Vậy cụ thể hơn, CNAME là gì? Quản lý CNAME như thế nào?

Bản ghi CNAME là gì?

Bản ghi CNAME được dùng để đặt bí danh cho tên này bằng một cái tên khác. CNAME là viết tắt của Canonical Name (tên quy chuẩn). 

Lấy ví dụ, bản sở hữu hai tên trang web là vietnix.vnwww.vietnix.vn. Cả hai cùng trỏ đến một ứng dụng và được host bởi cùng một server. Để tránh duy trì hai bản ghi khác nhau, bạn nên tạo:

  • Bản ghi A cho vietnix.vn trỏ đến địa chỉ IP server
  • Bản ghi CNAME cho www.vietnix.vn trỏ đến vietnix.vn.

Do đó, vietnix.vn trỏ đến địa chỉ IP của server. Và www.vietnix.vn trỏ đến cùng một địa chỉ qua vietnix.vn. Nếu địa chỉ IP thay đổi, bạn chỉ cần cập nhật nó ở một vị trí. Cụ thể, chỉnh sửa bản ghi A cho vietnix.vn, và www.vietnix.vn sẽ tự động thay đổi theo.

Chú ý: Bản ghi CNAME phải luôn trỏ đến một tên miền khác. Chứ không bao giờ trực tiếp đến một địa chỉ IP.

Bản ghi DNS A được chỉ định bởi RFC 1035.

CNAME là gì

Hạn chế của bản ghi CNAME là gì?

  1. Bản ghi CNAME phải luôn trỏ đến một tên miền khác và không bao giờ trực tiếp đến một địa chỉ IP.
  2. Bản ghi CNAME không thể cùng tồn tại với bản ghi khác cùng tên. Không thể có cả bản ghi CNAME và TXT cho www.vietnix.vn.
  3. Một CNAME có thể trỏ đến CNAME khác. Mặc dù điều này thường không được khuyến nghị vì có thể ảnh hưởng đến hiệu suất. Khi áp dụng, CNAME phải trỏ càng gần tên mục tiêu càng tốt để tránh các chi phí hiệu suất không cần thiết.

Định dạng bản ghi CNAME

Cấu trúc của một bản ghi A tuân theo định nghĩa định dạng tiêu chuẩn cấp cao được xác định RFC 1035. Phần RDATA bao gồm một yếu tố duy nhất:

Yếu tố      Mô tả
Tên miềnTên miền chỉ định tên chuẩn hoặc tên chính cho bản ghi.

Trình bày theo chuẩn là:

CNAME <domain-name>

trong đó <domain-name> là một tên miền đủ điều kiện, chẳng hạn như vietnix.vn.

Bản ghi CNAME được thể hiện bởi các yếu tố có thể tùy chỉnh sau:

Yếu tốMô tả
NameHostname cho record (tên của CNAME)
TTLTime-to-live, tính bằng giây. Đây là khoảng thời gian mà trình phân giải DNS cho phép lưu bản ghi vào bộ nhớ cache.
Nội dungTên miền mà CNAME trỏ tới.

CNAME và Redirect

Bản ghi CNAME đôi khi được gọi là chuyển hướng (redirect), thường là trong context chuyển hướng web (HTTP).

Không có mối tương quan trực tiếp giữa CNAME và HTTP redirect. Cũng như không thể cấu hình CNAME để thực hiện chức năng redirect nào.

Để thực hiện redirect HTTP, server phản hồi HTTP request phải được định cấu hình để trả về HTTP response thích hợp. Điều này không thể đạt được trực tiếp bằng CNAME.

Truy vấn bản ghi CNAME

Bạn có thể sử dụng dig trong terminal để xác định bản ghi CNAME được liên kết với tên miền. Kết quả trong phần ANSWER có tên miền đầy đủ (FQDN), time-to-live (TTL) và tên miền.

$ dig CNAME www.dnsimple.com
; <<>> DiG 9.10.6 <<>> CNAME www.dnsimple.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 5274
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;www.dnsimple.com. IN CNAME
;; ANSWER SECTION:
www.dnsimple.com. 3599 IN CNAME dnsimple.com.
;; Query time: 52 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Fri Nov 02 20:33:09 CET 2018
;; MSG SIZE  rcvd: 59

Theo dnsimple

Source: https://vietnix.vn/ban-ghi-cname-la-gi/