“Pinging” bằng giao thức DNS

Aug 19 2020

Có "thực tiễn tốt" được chấp nhận để kiểm tra xem kết nối mạng với máy chủ DNS có hoạt động hay không và máy chủ có phản hồi tối thiểu, ngoài việc đưa ra yêu cầu tra cứu không? Nhìn vào mã cho Nagios như một ví dụ cụ thể, tôi nhận thấy rằng nó dường như được định hướng theo hướng "tên này có giải quyết được không?" chứ không phải là "máy chủ có ổn không?".

Tôi đã thử một truy vấn rỗng nhưng dường như nó bị bỏ qua. Tôi đã thử yêu cầu trạng thái máy chủ và trong khi một số phản hồi (thường là "chưa được triển khai") thì những người khác lại bỏ qua yêu cầu. Tôi muốn thứ gì đó tốt hơn là dựa vào ping vì tôi đã thấy rất nhiều hệ thống máy chủ bỏ qua ping và vì rắc rối thêm với các khả năng, v.v.

Hiện tại, tôi nghi ngờ rằng giải pháp duy nhất đáng tin cậy sẽ là tra cứu một cái gì đó như google.com, với giả định rằng máy chủ sẽ lưu vào bộ nhớ cache sẽ tốn ít công sức nhất để phản hồi: vì tôi cần thực hiện việc này vài phút một lần, tôi không muốn làm buồn chủ nhân của nó.

Trả lời

2 telcoM Aug 19 2020 at 16:01

RFC 6303 liệt kê một số vùng DNS về cơ bản mà mọi máy chủ DNS đều có thể trả lời, về cơ bản là để ngăn những truy vấn đó được truyền tải một cách không cần thiết tới gốc của hệ thống phân cấp DNS, nếu những vùng đó không được sử dụng cho bất kỳ mục đích cục bộ nào.

Lâu đời nhất và nổi tiếng nhất trong số đó là vùng đảo ngược cho mạng lặp lại, và đặc biệt, bản ghi PTR cho địa chỉ IPv4 127.0.0.1 (tức là FQDN 1.0.0.127.in-addr.arpa.). Về cơ bản, mọi máy chủ DNS sẽ có thể cung cấp điều đó mà không cần truy vấn bất kỳ máy chủ DNS nào khác.

Vì vậy, mặc dù dig -x 127.0.0.1 @dns-server-addressvề mặt kỹ thuật là một truy vấn cho một bản ghi cụ thể, nó có thể áp dụng hiệu quả là "máy chủ có ổn không?" kiểm tra, vì đó là bản ghi nên mọi máy chủ DNS sẽ có thể phân giải với nỗ lực tối thiểu và không cần liên hệ với bất kỳ máy chủ DNS nào khác.

Truy vấn cho tên localhost.thực tế phải tốt như vậy, chỉ cần lưu ý rằng bạn nên bao gồm rõ ràng toàn bộ dấu chấm ở cuối để cho biết rằng tên bạn đang truy vấn đã hoàn toàn đủ điều kiện, để ngăn công cụ bạn đang sử dụng có thể thêm vào hậu tố miền địa phương của bạn có thể làm lệch kết quả.