Bạn đã trả lời từ lâu nhưng tôi cảm thấy chúng ta có thể chính xác hơn và bạn có một câu hỏi tiếp theo, đó thực sự phải là một câu hỏi khác.
Vì vậy, hãy để chúng tôi trở lại từ đầu.
Nếu bạn truy vấn các máy chủ gốc để tìm hiểu về .COM
ủy quyền (lưu ý rằng mọi thứ bên dưới đều áp dụng theo cùng một cách .NET
vì cả hai đều được xử lý bởi cùng một sổ đăng ký), bạn sẽ nhận được câu trả lời này:
$ dig @a.root-servers.net com. NS +noall +auth
; <<>> DiG 9.12.0 <<>> @a.root-servers.net com. NS +noall +auth
; (1 server found)
;; global options: +cmd
com. 172800 IN NS e.gtld-servers.net.
com. 172800 IN NS b.gtld-servers.net.
com. 172800 IN NS j.gtld-servers.net.
com. 172800 IN NS m.gtld-servers.net.
com. 172800 IN NS i.gtld-servers.net.
com. 172800 IN NS f.gtld-servers.net.
com. 172800 IN NS a.gtld-servers.net.
com. 172800 IN NS g.gtld-servers.net.
com. 172800 IN NS h.gtld-servers.net.
com. 172800 IN NS l.gtld-servers.net.
com. 172800 IN NS k.gtld-servers.net.
com. 172800 IN NS c.gtld-servers.net.
com. 172800 IN NS d.gtld-servers.net.
Vì vậy, tóm lại, bất kỳ máy chủ tên nào trong số này đều có thẩm quyền .COM
và tất cả chúng đều có cùng một dữ liệu (vì vậy bạn có thể mở rộng câu hỏi của mình, a.gtld-servers.net
không có gì đặc biệt, mọi thứ bên dưới sẽ áp dụng cho bất kỳ máy chủ tên nào).
Khi bạn sẽ truy vấn các máy chủ tên này cho bất kỳ .COM/.NET
tên miền nào, chúng cần trả lời một cách có thẩm quyền với các máy chủ tên có thẩm quyền cho tên miền bạn đang yêu cầu.
Do đó, theo định nghĩa, "Điều đó có nghĩa là a.gtld-servers.net (và * .gtld-server.net) có bản ghi của tất cả các tên miền .com cục bộ không?", Nhưng nó có nghĩa chính xác như vậy! Với một số cảnh báo xung quanh "tất cả" được thêm vào bên dưới.
Lưu ý rằng bạn nói về hồ sơ keo, đây là một trường hợp cụ thể, và không phải là trường hợp thường xuyên nhất. Thông thường, một yêu cầu cho một tên miền tại bất kỳ máy chủ tên nào ở trên sẽ chỉ trả lại một hoặc nhiều bản ghi NS.
Hãy để chúng tôi dành thời gian để giải quyết các điểm nhỏ khác trong văn bản của bạn:
Họ trả lời rất nhanh, vì vậy tôi không nghĩ họ đang tự truy vấn thêm.
Một máy chủ tên có thẩm quyền, theo định nghĩa, có dữ liệu cần thiết để trả lời các truy vấn, mà không phải dựa vào bất kỳ tài nguyên bên ngoài nào, nếu không nó không thực sự có thẩm quyền.
Về tốc độ, điều này một phần chủ quan và phụ thuộc nhiều vào những gì và cách bạn kiểm tra, nhưng có một số yếu tố: mặc định DNS sử dụng UDP nhẹ hơn TCP do đó nhanh hơn và các máy chủ tên như vậy được phát sóng có nghĩa là bạn luôn gặp may mắn có một "gần" bạn.
Tôi nhận ra a.gtld-servers.net có lẽ là một số máy
Bạn có thể xóa "có thể" :-) Những máy chủ tên này nhận được rất nhiều truy vấn mà bất kỳ hộp đơn nào cũng không bao giờ có thể chịu được.
Nếu bạn truy cập https://stat.ripe.net/192.5.6.30#tabId=outout bạn sẽ thấy rất nhiều thông tin có thể khó tiêu hóa nhưng về cơ bản, nhìn thấy IP này của a.gtld-servers.net
(trong thực tế là khối trong đó nó là) được công bố bởi một số AS tất cả được kiểm soát bởi một công ty, đó là một chỉ số mạnh mẽ của bất kỳ phát sóng nào, hoạt động tuyệt vời cho hầu hết DNS.
Nếu bạn truy cập http://www.root-servers.org/, bạn có thể tìm hiểu thêm. Điều này có liên quan đến máy chủ tên gốc, không phải là máy chủ .COM
nữa, nhưng về mặt kỹ thuật thì nó hoàn toàn giống nhau. Ví dụ, bạn có thể phát hiện ra rằng 13 máy chủ gốc được quản lý bởi 12 tổ chức khác nhau trên 930 trường hợp (một trường hợp không chỉ là một máy chủ, đó là một vị trí, một "điểm hiện diện" trong đó toán tử có "nút" thường là thiết bị định tuyến, nhiều máy chủ trong việc cân bằng tải / thất bại trong quá trình thiết lập, một số khả năng giám sát / điều khiển từ xa, v.v.). F
ví dụ là ở 222 nơi.
và rằng tôi đang được chuyển đến một nơi gần tôi nhất (thông qua công nghệ một máy đa ip mới đó), nhưng điều này chỉ có nghĩa là một số máy khác có tất cả các tên miền .com.
Có nhiều máy có danh sách tất cả các .COM
tên miền. Nhưng trước hết, chính xác: trên các máy chủ tên này, bạn sẽ nhận được danh sách tất cả các máy chủ tên cho tất cả các tên miền .COM ... có nghĩa là đối với các tên miền không được ủy quyền, bạn sẽ không tìm thấy chúng ở đây. Điều này có thể xảy ra trong nhiều trường hợp:
- Khi bạn đăng ký một tên miền, bạn có thể chọn không đặt máy chủ tên hoặc xóa chúng sau này.
- công ty đăng ký của bạn, ví dụ vì tranh chấp thanh toán có thể thêm trạng thái
clientHold
trên tên miền của bạn, điều này làm cho nó biến mất khỏi DNS
- đăng ký có thể đưa tên miền vào
serverHold
vì lý do.
(xem https://www.icann.org/resource/pages/epp-status-codes-2014-06-16-en nếu bạn muốn tìm hiểu thêm về các trạng thái này và các trạng thái khác).
Tùy thuộc vào cách bạn xác định "tất cả" và những gì bạn sẽ làm với dữ liệu đó, bạn có thể không thực sự nhận được tất cả chúng.
Trong tất cả các trường hợp trên, tên miền sẽ không xuất hiện trên các máy chủ DNS đăng ký, nhưng sẽ xuất hiện khi bạn thực hiện truy vấn whois. Vì vậy, các máy chủ whois (một lần nữa, không phải là một hộp) cũng sẽ có ... danh sách tất cả các tên miền .COM và thậm chí nhiều dữ liệu hơn trên máy chủ tên vì:
- bạn thực sự có tất cả các tên miền, bao gồm cả những tên miền không giải quyết và do đó không có trên máy chủ tên đăng ký
- Whois cung cấp nhiều thông tin hơn, chẳng hạn như dữ liệu liên lạc
Và đây vẫn chỉ là các dịch vụ đăng ký đối mặt công khai, theo một cách nào đó hoặc một phần, danh sách (hoặc một phần của nó) của các tên miền.
Theo dõi của bạn:
Câu hỏi tiếp theo: nếu ai đó "đột nhập" vào một trong những máy này, họ có thể nhận được danh sách tất cả các tên miền .com không?
Về mặt kỹ thuật, vâng. Nhưng:
- Đây chắc chắn không phải là mục tiêu dễ nhất bạn sẽ tìm thấy trực tuyến
- Và trong trường hợp cụ thể này, dữ liệu đã có sẵn miễn phí.
.COM
là một gTLD và như vậy là theo hợp đồng với ICANN. ICANN bắt buộc tất cả các cơ quan đăng ký gTLD phải xuất bản các tệp vùng của họ (về cơ bản là những gì mà máy chủ tên sử dụng, do đó, các bản ghi NS cộng với keo A / AAAA), ít nhất một lần mỗi ngày và truy cập miễn phí cho bất kỳ ai miễn là bạn ký thỏa thuận để đảm bảo rằng bạn không sử dụng lại dữ liệu này cho mục đích "xấu" (như tự xuất bản lại).
Xem https://czds.icann.org/en để biết tất cả chi tiết về điều đó. Điều này có thể cung cấp cho bạn quyền truy cập vào hàng trăm vùng tệp gTLD.
Lưu ý rằng nếu câu hỏi của bạn được mở rộng thành "nếu ai đó xâm nhập vào một trong những máy này và thay đổi nội dung được thêm hoặc xóa tên miền .COM ..." thì chúng tôi có thể nhanh chóng trả lời:
- những thay đổi sẽ không được nhìn thấy trên toàn thế giới, vì bạn chỉ hack một hộp và có rất nhiều máy chủ tên, đầu tiên là tên sau đó bằng cách phát sóng
- DNSSEC có thể làm cho các thay đổi của bạn xuất hiện dưới dạng lỗi và do đó sẽ được phát hiện nhanh chóng (bên cạnh bất kỳ biện pháp đối phó cục bộ nào của chính nhà điều hành).
Nói tóm lại, đó không phải là ý tưởng tốt nhất để làm điều đó để gây rối với .COM
tên miền, và có nhiều cách khác.
Tôi nhận ra thông tin tên miền là công khai, nhưng vẫn khó có được số lượng lớn.
Xem ở trên cho chương trình ICANN. Đối với ccTLD, tình hình thay đổi nhưng thường thì họ không cấp quyền truy cập vào vùng dữ liệu của họ và không theo thời gian thực.
Đôi khi, bạn có thể truy cập nó sau một thời gian, ví dụ như thông qua các chuyển động "dữ liệu mở". Một ví dụ: https://opendata.afnic.fr/en/products-and-service/service/opendata-en.html cho .FR
tên miền.
Tôi đoán * .gtld-server.net không hỗ trợ chuyển vùng (mặc dù máy chủ tên .edu đã làm, ít nhất là một vài năm trước).
Dễ kiểm tra:
$ for ns in $(dig NS . +noall +ans | grep 'IN NS' | awk '{print $5}') ; do echo $ns ; dig @$ns com. AXFR; done
c.root-servers.net.
; <<>> DiG 9.12.0 <<>> @c.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
m.root-servers.net.
; <<>> DiG 9.12.0 <<>> @m.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
i.root-servers.net.
; <<>> DiG 9.12.0 <<>> @i.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
e.root-servers.net.
; <<>> DiG 9.12.0 <<>> @e.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
j.root-servers.net.
; <<>> DiG 9.12.0 <<>> @j.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
l.root-servers.net.
; <<>> DiG 9.12.0 <<>> @l.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
g.root-servers.net.
; <<>> DiG 9.12.0 <<>> @g.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
k.root-servers.net.
; <<>> DiG 9.12.0 <<>> @k.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
b.root-servers.net.
; <<>> DiG 9.12.0 <<>> @b.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
h.root-servers.net.
; <<>> DiG 9.12.0 <<>> @h.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
d.root-servers.net.
; <<>> DiG 9.12.0 <<>> @d.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
;; Connection to 199.7.91.13#53(199.7.91.13) for com. failed: timed out.
;; QUERY SIZE: 44
;; Connection to 199.7.91.13#53(199.7.91.13) for com. failed: timed out.
;; QUERY SIZE: 44
;; connection timed out; no servers could be reached
;; Connection to 199.7.91.13#53(199.7.91.13) for com. failed: timed out.
a.root-servers.net.
; <<>> DiG 9.12.0 <<>> @a.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
f.root-servers.net.
; <<>> DiG 9.12.0 <<>> @f.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
Không, ngay bây giờ, không có .COM
máy chủ tên có thẩm quyền chấp nhận truy vấn AXFR. Nhưng điều này không nhất thiết giống nhau ở mọi nơi. Nếu bạn truy vấn f.root-servers.net
máy chủ tên, bạn có thể thực hiện truy vấn AXFR để xuất bản tất cả các TLD. Một số TLD khác cũng có thể cho phép điều đó.
Lưu ý rằng có "rất nhiều" đề xuất không cho phép truy vấn AXFR công khai. Sự thật là chúng là những câu trả lời khổng lồ theo định nghĩa và có thể làm căng máy chủ nếu lặp đi lặp lại, đó là sự thật. Trên có thể tranh luận không ngừng về lý do tại sao / nếu công chúng có nhu cầu về thông tin này. Nó được sử dụng nhiều hơn vào đầu DNS để sao chép các vùng giữa các máy chủ tên (hiện tại có nhiều lựa chọn thay thế tốt hơn). Vì vậy, AXFR thường bị vô hiệu hóa ... ngoại trừ rằng nếu bạn thực hiện DNSSEC cùng một lúc, theo một cách cụ thể nào đó (đó là biến thể NSEC và không phải NSEC3), bạn có thể dễ dàng đi qua các truy vấn DNS tiêu chuẩn và không có AXFR, tất cả khu vực và xây dựng lại các khu vực. Công cụ tồn tại để làm điều đó.
Cũng lưu ý rằng các nhà cung cấp khác nhau trực tuyến sẽ bán cho bạn zonefiles và / hoặc danh sách tất cả các tên miền với nhiều tên miền cấp cao, mà họ mua lại bởi phương tiện khác nhau (một ý tưởng trong số những người khác: bạn lấy zonefiles mở, giống như .COM
, và cho TLD .example
bạn truy vấn từng người một tất cả tên bạn đã tìm thấy .COM
, có thể cung cấp cho bạn một số ý tưởng, ngoài ra tất nhiên là đi bộ từ điển dựa trên các ngôn ngữ được sử dụng nhiều nhất trong tìm kiếm TLD).