Định nghĩa tên miền đủ điều kiện


8

Tôi đã cố gắng tìm kiếm trên Internet cho một định nghĩa về FQDN. Wikipedia nói, một FQDN

chỉ định vị trí chính xác của nó trong hệ thống phân cấp cây của Hệ thống tên miền (DNS) Tôi sẽ giải thích điều này, rằng nó có thể phân giải rõ ràng (trong DNS).

Ví dụ tại WP (khó khăn tôi không muốn sử dụng điều này làm tài liệu tham khảo) nêu rõ việc sử dụng hostname.example.com.

Các RFC tôi tìm thấy ( RFC 1035RFC duy nhất không có giao thức cụ thể mà tôi tìm thấy) không cung cấp thông tin về những gì FQDN đủ điều kiện.

Tôi nghĩ rằng chỉ có một định danh như hostname.example.com là một FQDN hợp lệ (bao gồm tất cả tên máy chủ, tên miền và TLD riêng biệt), nhưng điều này có vẻ sai.
Có cần FQDN phải luôn bao gồm tên máy chủ bên cạnh tên miền, ngay cả khi tên miền chỉ bao gồm một máy chủ không? Hoặc là định nghĩa duy nhất rằng FQDN sẽ được phân giải thông qua DNS? Ví dụ: tên miền .tk có thể phân giải rõ ràng, đây có phải là FQDN không?


Tôi thấy đây là một câu hỏi thú vị, nhưng nếu bạn dự định trả lời nó, xin lưu ý rằng tôi rất muốn xem câu trả lời được tham chiếu. Trừ khi bạn là Paul Vixie, tôi không quan tâm lắm đến một tuyên bố đơn giản về ý kiến ​​của bạn về chủ đề này.
MadHatter

2
Chà, tôi đoán tôi Paul Vixie, vì vậy tôi sẽ cố gắng trả lời câu hỏi này, bên dưới.
Paul Vixie

Câu trả lời:


6

Tôi sẽ xem xét một tên đủ điều kiện nếu bạn không phải nối thêm bất kỳ số nhận dạng nào để giải quyết rõ ràng máy chủ lưu trữ. Nếu điều này không đúng, thì tên sẽ được coi là tương đối.

RFC1535 thảo luận về một điểm quan trọng:

Một FQDN "gốc" tuyệt đối có định dạng {name} {.} Một tên miền không "gốc" có định dạng {name}

Trong ví dụ của bạn ở trên, bạn sẽ giải quyết .tknhư tk.để đảm bảo nó là rõ ràng. Điều thú vị là điều này thực sự có một hồ sơ A hợp lệ.

$ dig tk.
; <<>> DiG 9.8.3-P1 <<>> tk.
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 812
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;tk.                IN  A

;; ANSWER SECTION:
tk.         20  IN  A   217.119.57.22

EDIT: RFC1535 có một trích dẫn thú vị khác:

Hơn nữa, trong mọi trường hợp có dấu "." tồn tại trong một tên được chỉ định, nó phải được coi là một tên miền đủ điều kiện (FQDN) và trước tiên NÊN thử làm tên gốc.


4

Trong Hàng đợi ACM , tôi đã định nghĩa FQDN như sau:

Không gian tên DNS có cấu trúc cây, trong đó mỗi nút có cha mẹ ngoại trừ nút gốc, là cha mẹ của chính nó. Các nút có nhãn dài từ 1 đến 63 ký tự, ngoại trừ nút gốc có nhãn trống. Một miền là một nút trong ngữ cảnh và một tên miền đủ điều kiện có một hình thức trình bày chỉ là các tên nút, từ dưới lên, với mỗi tên được theo sau bởi một dấu chấm (.). Ví dụ: www.google.com là tên đủ điều kiện của một nút có tên là www, có cha mẹ là google, có ông bà là com và ông cố của họ là gốc DNS.

Bất cứ khi nào bạn sử dụng các thuật ngữ như "tên máy chủ" hoặc "phần máy chủ" hoặc "phần tên miền" bạn sẽ tắt trong cỏ dại và bạn sẽ thấy rằng không có định nghĩa nào về FQDN hoàn toàn phù hợp với mục đích của bạn. Ý nghĩa, thay vì định nghĩa, của FQDN có thể được làm rõ bằng cách xem xét từ trái nghĩa của nó: tên miền không đủ điều kiện. Để có đủ điều kiện nghĩa là bạn chỉ định tất cả các nhãn tên miền lên cấp cao nhất và trong trường hợp đó bạn có thể nối thêm một dấu chấm cuối cùng (.) Để cho biết rằng bạn đã làm như vậy. Ít hơn đủ điều kiện có nghĩa là tên bạn đang xem chỉ có ý nghĩa trong ngữ cảnh của danh sách tìm kiếm hoặc miền mặc định.

RFC 1535 rất thú vị bởi vì rất nhiều người trong chúng ta đã sử dụng tên địa phương đa nhãn và vẫn mong đợi hành vi trong danh sách tìm kiếm - và điều này đã phá vỡ quá nhiều thứ khác, vì vậy đã bị cấm. Nhưng khi tôi là postmaster@dec.com vào năm 1988-1993, có thể gửi thư từ vixie@cognition.pa đến matt @ decvax và đã mở rộng thành vixie@cognition.pa.dec.com và matt@decvax.dec .com và tất cả chỉ hoạt động. Hóa ra chúng tôi đã phải từ bỏ điều đó. Ngày nay, nếu có một dấu chấm trong tên cấp độ trình bày của bạn (nghĩa là bạn đã nhập nó hoặc một chương trình hiển thị nó), thì tất cả các phần mềm trên thế giới đều coi là FQDN.

Cuốn sách Sendmail của tôi (đồng tác giả với Fred Avolio sau khi cả hai chúng tôi rời khỏi DEC.COM) cũng có một chương về chủ đề này, đây là một cách đọc thú vị vì nó được viết cùng lúc với RFC 1535.


0

2 xu của tôi:

Theo nghĩa chặt chẽ nhất, FQDN là những gì bạn đã viết trong ví dụ của mình.

tức là hostname.example.com.

bao gồm cả dấu chấm ở cuối

Tôi không nghĩ rằng nó phải được phân giải thông qua DNS, nó chỉ là một định nghĩa cú pháp.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.