─ CNAME RR được chuẩn hóa trong RFC 1035, định nghĩa một bí danh cho một máy chủ hiện tại được xác định bởi một A RR. Cú pháp chính thức như sau:
name ttl class rr canonical-name
─ Trong ví dụ tập tin, các CNAME RR sau đây được định nghĩa: ftp IN CNAME ftp.example.net.
Bảng 2-5 cú pháp CNAME RR:
Cú pháp Ví dụ Mô tả
name ftp Tên của nó không đủ tiêu chuẩn, gây nên sự thay thế $ ORIGIN. Bạn có thể viết này như ftp.example.com. (bằng cách sử dụng định dạng FQDN), có thể dễ hiểu hơn.
Ttl Không có giá trị tt1 định nghĩa cho RR, mặc
định vùng 2d những chỉ thị $TTL sẽ được sử dụng.
class IN IN định nghĩa class tới Internet. Canonical-
name
ftp.example.net Xác định rằng tên ftp.example.com được đặt bí danh cho host ftp.example.net. trong một miền nước ngoài hoặc bên ngoài. Trong DNS biệt ngữ, ftp.example.net. được gọi là tên kinh điển,
thực.
─ CNAME RR thường được sử dụng khi gán tên dịch vụ đến các host hiện có; Ví dụ, nếu một máy chủ được thực sự gọi là hóa đơn nhưng chạy một FTP và một dịch vụ web, sau đó CNAME RR thường được sử dụng để xác định các dịch vụ này, như thể hiện trong đoạn sau đây:
ftp IN CNAME bill www IN CNAME bill bill IN A 192.168.254.21
─ CNAME RR có một số hạn chế. Nó được cho phép nhưng được coi là thực tế rất xấu đến chuỗi các bản ghi CNAME.
ns1 IN A 192.168.254.2 mail IN A 192.168.254.3
joe IN CNAME www.example.com. www IN CNAME mail.example.com.
─ Bản ghi CNAME không nên được sử dụng với cả NS hay bản ghi MX; do đó trong file ví dụ, nếu các máy chủ mail và máy chủ web là đồng nằm trên cùng một máy chủ, sau đây sẽ được kỹ thuật không hợp lệ nhưng thông thường sẽ làm việc; đây là một phương pháp được sử dụng rộng rãi!
IN MX mail.example.com.
mail IN CNAME www.example.com. www IN A 192.168.254.7
─ Đoạn sau đây là hợp lệ và đạt được kết quả tương tự: IN MX mail.example.com.
mail IN A 192.168.254.7
www IN CNAME mail.example.com.
─ Nguyên tắc xác định các ví dụ trước (RFC 1034 phần 3.6.2) là thận trọng trong vấn đề sử dụng quá gián tiếp và nói rằng nếu một tên xuất hiện ở phía bên phải của một RR (như mail.example.com làm trong trước MX RR trong đoạn), nó không nên xuất hiện trong tên trái của một RR CNAME. Nhiều cấu
hình làm việc sử dụng cấu trúc này thường xuyên. Luôn luôn có một nguy cơ là một ngày đặc điểm kỹ thuật có thể được thắt chặt và cấu hình có thể không hoạt động.
─ Bạn cần phải nhận thức của hai hậu quả khác khi sử dụng CNAME RR. Đầu tiên, CNAME gây ra các name server để làm nhiều việc hơn bởi vì cả hai CNAME và CNAME'd RR phải được tra cứu bởi các name server. Trong số lượng lớn các name server, khối lượng công việc bổ sung này có thể được xem xét. Thứ hai, CNAME RR và các mục tiêu (CNAME'd) bản ghi RR được trả về trong các câu trả lời. Khi giao dịch với câu trả lời lớn, điều này có thể gây ra các phản ứng để vượt quá giới hạn 512-byte của một giao dịch DNS UDP, do đó làm giảm hiệu suất.
Khi CNAME Records phải được sử dụng
─ Như đã nói ở phần trước, CNAME RR là thường xuyên và thường được sử dụng để lập bản đồ dịch vụ như FTP, web, gopher, và những người khác trên một máy chủ duy nhất. Trong những trường hợp này, nhiều RR A cũng có thể được sử dụng để đạt được các kết quả tương tự. Nói chung, lần duy nhất CNAME phải được sử dụng là khi các máy chủ thực sự hay kinh điển nằm trong một tên miền nước ngoài hoặc bên ngoài, như minh họa trong file ví dụ nơi ftp.example.com được đặt bí danh ftp.example.net. Một CNAME RR thường được sử dụng khi người sử dụng muốn đặt địa chỉ một trang web bằng cách sử dụng www.example.com hay example.com chỉ. Trong trường hợp này, các chức năng thường sẽ được thực hiện bằng cách sử dụng các đoạn sau đây:
; xác định một IP mà giải quyết cho example.com IN A 192.168.254.7
; alias www.example.com to example.com www IN CNAME example.com.
─ Ở đây, việc xác định các WWW RR là một A RR đơn giản sẽ đạt được chính xác cùng một kết quả. Dù hình thức sẽ đòi hỏi một sự thay đổi cấu hình để máy chủ web của bạn, được bao phủ hoàn toàn trong chương 8.