Có thể tạo máy chủ DNS gốc của riêng bạn?


14

Tôi tò mò. Tôi tiếp tục đọc về cách các ISP và người trung gian internet của chúng tôi ghi lại và theo dõi tất cả các yêu cầu DNS về cơ bản để lại dấu vết vụn bánh mì trong nhiều nhật ký và cũng cho phép chiếm quyền điều khiển DNS cho mục đích quảng cáo (Tôi đang xem bạn Cox Communications!).

Bất kể các phương pháp khác về quyền riêng tư / bảo mật, tôi đặc biệt muốn biết liệu có thể chạy máy chủ DNS trên mạng cục bộ của mình hay không, thực sự có thông tin vùng của các máy chủ DNS gốc (đối với .com, .net ,. tên miền org.

Tôi biết bạn có thể thiết lập DNS về cơ bản chỉ ánh xạ các máy trong miền của mình, nhưng về cơ bản có thể yêu cầu sao chép / chuyển thông tin DNS gốc được lưu trữ trên máy chủ DNS của riêng bạn để bạn có thể bỏ qua internet để nhận DNS thông tin nào cho trình duyệt web?

Tôi hy vọng tôi đang rõ ràng. Tôi không muốn máy chủ DNS của mình chỉ có thông tin về mạng nội bộ của mình - Tôi muốn nó có thông tin trùng lặp mà các máy chủ DNS internet lớn có, nhưng tôi muốn thông tin đó cục bộ trên máy chủ DNS của mình.

Có thứ gì đó giống như chuyển BGP Zone nhưng cho DNS không?

Cập nhật: Có bất kỳ sản phẩm / phần mềm OSS nào về cơ bản có thể "quét" thông tin này từ chuỗi DNS bên ngoài vào bộ đệm cục bộ với số lượng lớn để chúng sẵn sàng khi bạn cần chúng, so với lưu trữ chúng khi bạn yêu cầu rõ ràng các bản ghi tên miền?

Câu trả lời:


12

DNS theo thiết kế không cho phép có một bản sao có thẩm quyền của tất cả các vùng, vì nó sử dụng một hệ thống đặt tên phân cấp.

Các máy chủ gốc có thẩm quyền để xác định máy chủ chịu trách nhiệm về Tên miền cấp cao (TLD) được đề cập. Ví dụ: giải quyết www.example.nettrước tiên sẽ truy vấn máy chủ gốc để xác định máy chủ tên có thẩm quyền cho .net. Máy .netchủ tên sẽ xác định máy chủ tên có thẩm quyền example.net, sau đó sẽ trả về bản ghi cho www.example.net.

Bạn không thể tải xuống một bản sao của tất cả các khu vực. Tuy nhiên, bạn có thể chạy một máy chủ tên bộ nhớ đệm cục bộ. Máy chủ tên bộ đệm sẽ cung cấp một bản sao cục bộ của tất cả các bản ghi được giải quyết, hết hạn sử dụng Time To Live (TTL) được chỉ định cho bản ghi. Xin lưu ý rằng lời giải thích của tôi là một mô tả đơn giản về giao thức DNS, có thể được khám phá chi tiết bằng cách đọc các định nghĩa trong Yêu cầu Nhận xét .

Mặc dù có thể tránh bị tấn công NXDOMAIN bằng cách chạy bộ đệm cục bộ, hãy nhớ rằng tất cả lưu lượng truy cập độ phân giải DNS sẽ vẫn được truyền qua kết nối Internet của bạn không được mã hóa. ISP của bạn có khả năng giám sát lưu lượng đó và vẫn nhìn thấy thông tin liên lạc. Các hợp đồng bạn có với ISP cũng như luật pháp địa phương sẽ là phương tiện dứt khoát của bạn để thiết lập cách thức liên lạc của bạn được đối xử. Hợp đồng của ISP của bạn sẽ bao gồm Điều khoản dịch vụ, Chính sách bảo mật và bất kỳ hợp đồng bổ sung nào bạn có thể có với ISP của mình.

Sử dụng các giao thức được mã hóa là một trong những phương pháp tốt nhất để bảo đảm dữ liệu của bạn chống lại việc nghe lén trong quá trình vận chuyển. Tuy nhiên, ngay cả điều đó không có gì đảm bảo tính ẩn danh. Có các giao thức bổ sung ngoài đó như TorFreenet , cố gắng giới thiệu ẩn danh với Internet, vì nó không bao giờ được thiết kế để thực sự ẩn danh.


1
Câu trả lời đơn giản là không, bạn không thể. Câu trả lời kỹ thuật là ở trên trong câu trả lời của Warner. Không có một bộ máy chủ nào chứa tất cả thông tin DNS .. các máy chủ gốc chỉ cần giới thiệu bạn đến một trong các máy chủ TLD có đề cập đến yêu cầu tiếp theo.
Rex

1
Một số ISP cung cấp cách tắt tính năng chiếm quyền điều khiển NXDOMAIN. Một số ISP cung cấp cơ chế dựa trên cookie (ngu ngốc và giả mạo) để "tắt" vụ cướp NXDOMAIN. Ngoài ra còn có các máy chủ tên thay thế có thể được sử dụng thay cho máy chủ tên ISP của bạn.
Brian

3

Một vài thứ:

Nếu bạn định cấu hình máy chủ của mình để sử dụng các gợi ý gốc thay vì sử dụng các bộ chuyển tiếp thì bạn không phải lo lắng về các vấn đề MITM (ít nhất là từ các kẻ tấn công ISP và DNS). Đối với tất cả độ phân giải DNS bên ngoài, máy chủ của bạn sẽ truy vấn các gợi ý gốc, sẽ giới thiệu bạn đến các máy chủ gTLD cho tên miền cấp cao nhất trong câu hỏi (.com, v.v.), sau đó sẽ giới thiệu bạn đến các máy chủ NS cho miền được đề cập .

Nếu bạn thực sự muốn tạo máy chủ gốc của riêng mình, bạn chắc chắn có thể, mặc dù tôi không thấy nó sẽ giúp bạn nhiều như thế nào. Đây là cách bạn làm điều đó trên máy chủ Windows DNS:

Tải xuống tệp vùng gốc DNS và lưu dưới dạng root.dns trong thư mục% systemroot% \ system32 \ dns trên máy chủ DNS Windows của bạn, sử dụng trình hướng dẫn tạo vùng DNS để tạo vùng tra cứu chuyển tiếp chính mới có tên "." (không có dấu ngoặc kép), bỏ chọn tùy chọn để tạo vùng tích hợp AD, nhập "." đối với tên vùng (không có dấu ngoặc kép), chọn tùy chọn sử dụng tệp hiện có và trường tên tệp vùng sẽ tự động được điền với tên root.dns (nếu không nhập nó vào), hãy để tùy chọn không cho phép cập nhật động, nhấp vào nút hoàn tất sau khi bạn đạp xe qua từng bước của trình hướng dẫn. Bây giờ bạn có một máy chủ gốc với các bản ghi vùng và vùng cho tất cả các máy chủ gTLD.

Lưu ý rằng điều này sẽ vô hiệu hóa các tùy chọn chuyển tiếp và gợi ý gốc trên máy chủ (vì máy chủ của bạn hiện là máy chủ gốc) và cũng lưu ý rằng nếu thông tin gTLD thay đổi, không có cách nào để máy chủ của bạn nhận được thông báo về những thay đổi đó.


Không có gì ngăn ISP chiếm quyền điều khiển IP của các máy chủ gốc (trừ DNSsec) ... Khác với điều đó, chính xác.
Chris S

1

Đối với các máy chủ liên quan chặt chẽ có chuyển vùng. Những chức năng này giống như thông báo BGP. Vì lý do bảo mật, chúng thường bị chặn cho các máy chủ khác.

Nếu bạn chạy một máy chủ tên bộ đệm, nó sẽ sao chép danh sách máy chủ gốc và sẽ sớm có các gốc cho .com, .net, v.v. Có một lý do rất chính đáng là DNS được phân phối. Nếu không thì mọi người sẽ làm việc với dữ liệu lỗi thời. Kích thước của cơ sở dữ liệu sẽ khá lớn và phần lớn dữ liệu không quan tâm đến bạn.

Có các tùy chọn để giảm nguy cơ ngộ độc DNS và xử lý phần mềm tốt với các vấn đề khi chúng được biết đến. Có những tổ chức làm việc trong việc cung cấp dữ liệu vệ sinh có thể được sử dụng như các nhà cung cấp thượng nguồn. Chúng sẽ lọc ra một số nỗ lực ngộ độc. Nhìn vào việc sử dụng OpenDNS hoặc google là nhà cung cấp ngược dòng.

Các vùng DNS gốc hiện đã được ký và tôi ngày càng thấy máy chủ thư của mình báo cáo rằng dữ liệu DNS đã được ký. Việc ký DNS đã được báo cáo là một yêu cầu đối với IPV6. DNS đã ký khiến việc đầu độc bộ nhớ cache rất khó khăn, nhưng làm tăng thêm khó khăn trong việc quản lý DNS.


1

Bạn chắc chắn có thể thiết lập máy chủ của riêng mình và làm cho nó có thẩm quyền đối với root, nhưng tôi không biết bất kỳ cách nào bạn có thể điền trước nó với các vùng tệp của máy chủ gốc. Bạn không thể đơn giản yêu cầu zonetransfer, vì vậy tôi đoán bạn sẽ phải lấp đầy nó bằng cách giữ bộ nhớ cache của bạn.

Sửa đổi root.h gợi ý trên các máy chủ tên khác của bạn để trỏ chúng đến máy chủ gốc riêng của bạn và để thử nghiệm bắt đầu.

Nhưng hãy nhớ rằng các máy chủ gốc chỉ biết máy chủ nào có thẩm quyền cho TLD, không có gì khác. Về cơ bản bạn sẽ cần phải tạo lại toàn bộ hệ thống phân cấp của các máy chủ, có vẻ như là một nhiệm vụ bất khả thi.


0

Có một trong những tính năng của máy chủ DNS là lưu trữ cục bộ các truy vấn được yêu cầu thường xuyên, quá thường xuyên bỏ qua ttl được chỉ định.

Bạn chắc chắn có thể chạy dns của riêng bạn, không có vấn đề. Nhưng các máy chủ gốc và máy chủ tên miền cấp cao nhất, bạn sẽ phải hỏi chú sam.

Ghi nhật ký tất cả các yêu cầu dns là có thể, nhưng sẽ điên rồ.


Nhưng dựa vào bộ đệm sẽ ngụ ý rằng bạn đã phải gửi yêu cầu DNS cho tên miền được đề cập, điều này đánh bại toàn bộ mục đích cố gắng chỉ có (hoặc hầu hết) các yêu cầu DNS cục bộ.
pythonnewbie

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.