Bản ghi CNAME (Canonical Name Record) là một loại bản ghi DNS được sử dụng để thiết lập một tên miền con (hoặc một phần của tên miền) là một tên bí danh (alias) cho một tên miền khác. Nó thường được sử dụng để chỉ định rằng một tên miền hoặc một phần của tên miền sẽ chuyển hướng đến một tên miền chính cụ thể.
Ví dụ, nếu bạn có một trang web với tên miền chính là example.com và bạn muốn tạo một tên miền con blog.example.com để trỏ đến một trang blog khác hoặc trỏ đến trang chủ example.com, bạn có thể sử dụng bản ghi CNAME. Bản ghi CNAME cho phép bạn chỉ định rằng blog.example.com là một tên bí danh cho www.anotherblog.com hoặc example.com. Như vậy mỗi lần thay đổi địa chỉ IP (bản ghi A hoặc AAAA) của www.anotherblog.com thì tên miền phụ blog.example.com sẽ tự cập nhật theo giá trị mới.
Một quan niệm sai lầm thường gặp là bản ghi CNAME phải luôn chuyển đến cùng một trang web với tên miền mà nó trỏ tới, nhưng không phải vậy. Bản ghi CNAME chỉ trỏ máy khách đến cùng địa chỉ IP với tên miền gốc. Khi máy khách truy cập địa chỉ IP đó, máy chủ web sẽ vẫn xử lý URL tương ứng. Vì vậy, ví dụ: blog.example.com có thể có CNAME trỏ đến example.com, hướng khách hàng đến địa chỉ IP của example.com. Nhưng khi máy khách thực sự kết nối với địa chỉ IP đó, máy chủ web sẽ xem URL, thấy rằng đó là blog.example.com và phân phối trang blog chứ không phải trang chủ.
- Không thể sử dụng CNAME và bản ghi khác cùng một tên miền: Một tên miền không thể có cả bản ghi CNAME và bản ghi khác (ví dụ: bản ghi A) với cùng tên. Điều này có nghĩa nếu bạn muốn sử dụng một tên miền con làm tên bí danh (CNAME), bạn không thể đồng thời sử dụng nó để trỏ đến một địa chỉ IP cụ thể (bản ghi A).
- Không thể sử dụng cho tên miền gốc (root domain): Bản ghi CNAME không thể được sử dụng trực tiếp cho tên miền gốc (ví dụ: example.com). Điều này có nghĩa bạn không thể tạo một bản ghi CNAME để ánh xạ tên miền gốc đến một tên miền khác. Để ánh xạ root domain, bạn cần sử dụng bản ghi A (Address).
- Tăng thời gian phản hồi DNS: Sử dụng quá nhiều bản ghi CNAME trong chuỗi ánh xạ DNS có thể làm tăng thời gian phản hồi DNS. Mỗi bản ghi CNAME yêu cầu thêm một truy vấn để giải quyết, và nếu có quá nhiều bản ghi trong chuỗi, thời gian phản hồi có thể bị trì hoãn.
- Khó quản lý và theo dõi: Khi có nhiều bản ghi CNAME và chuỗi phụ thuộc, quản lý và theo dõi chúng có thể trở nên phức tạp. Điều này đặc biệt đúng khi bạn cần thay đổi cấu trúc DNS hoặc xác định lỗi trong chuỗi ánh xạ.
Mặc dù có những hạn chế này, bản ghi CNAME vẫn là một công cụ hữu ích để ánh xạ tên miền con thành tên miền chính hoặc tên miền khác trong nhiều trường hợp sử dụng.
Một bản ghi CNAME phổ biến thường được trỏ là CNAME bản ghi www về tên miền gốc. Ví dụ: www.example.com CNAME về example.com
Bản ghi CNAME chứa các thông tin nào?
Ta sử dụng lệnh dig để kiểm tra bản ghi CNAME của một tên miền con, ví dụ tên miền con www.zozo.com:
dig -t CNAME www.zozo.vn
; <<>> DiG 9.10.6 <<>> -t CNAME www.zozo.vn
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48379
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;www.zozo.vn. IN CNAME
;; ANSWER SECTION:
www.zozo.vn. 300 IN CNAME zozo.vn.
Như kết quả trả về thì tên miền con www.zozo.vn sẽ redirect về trang chủ zozo.vn.