Câu hỏi DNS cache nằm ở đâu trên Windows 8.1?


Tôi đang đọc về bộ nhớ cache DNS và đặc biệt là về ipconfig /flushdns chỉ huy. Có rất nhiều tài nguyên trên mạng - QA, blog, trang web - giải thích bộ nhớ cache DNS là gì nhưng không ai trong số họ nói Ở đâu Bộ nhớ cache DNS nằm trên máy tính Windows 8.1 của tôi. Nếu tôi làm đúng, nó phải là một tệp có ánh xạ, giống như sau:

example.com 123.123.123.123
foo.net 123.123.0.0

Trước khi tôi chạy ipconfig /flushdns, Tôi muốn xem tệp bộ nhớ cache DNS đó. Tôi có thể tìm thấy nó trên máy tính của tôi ở đâu?


1
2018-01-21 05:49


gốc


Có lẽ trong bộ nhớ. - Daniel B


Các câu trả lời:


Nếu bạn muốn xem bộ nhớ cache DNS, các phiên bản gần đây của hỗ trợ Microsoft Windows IPConfig /displaydns

(Tôi không nghĩ rằng Windows 98 hỗ trợ nó, không hỗ trợ Win98 ipconfig /flushdns. Tôi đoán cả hai tùy chọn đã được thêm vào cùng một phiên bản Microsoft Windows.)

Đây là cách điển hình / dễ dàng để xem thông tin đó.

Tôi không chắc chắn những gì tập tin này được lưu trữ trong. Tôi khá chắc chắn rằng nó không sử dụng định dạng HOSTS giống như bạn hiển thị, bởi vì tôi chắc chắn nó cũng theo dõi thời gian hết hạn. Sử dụng Process Explorer có thể giúp tìm ra tệp nào được truy cập khi sử dụng IPConfig/displaydns.


2
2018-01-21 06:01



Ở đó Là không có "tệp bộ nhớ cache" - bộ nhớ cache chỉ được lưu trong bộ nhớ. Nó được duy trì bởi dịch vụ "Máy khách DNS" (được đặt tên bên trong Dnscache), do đó dữ liệu bộ nhớ cache sẽ ở đâu đó bên trong một trong các svchost.exe quy trình. - grawity


Chỉ để sao lưu những gì người khác đã nói, sử dụng Process Hacker để tìm kiếm các chuỗi bên trong svchost.exe bạn có thể xem các mục được lưu trữ trong bộ nhớ. Ví dụ.

enter image description here

Một đầu ra hữu ích hơn rất nhiều so với việc sử dụng đơn giản ipconfig /displaydns (Bạn luôn có thể xuất ra một tệp bằng ipconfig /displaydns>output.txt nếu bạn muốn.


1
2018-01-21 06:17





Bộ nhớ đệm có thể được lưu trong bộ nhớ, và dịch vụ dns cục bộ có thể không giữ được một tệp bộ đệm, nhưng có nhiều hơn một chút cho nó.

Ipconfig / displaydns của tôi đã giữ lại các mục giữa các lần khởi động lại cho tôi. Nó phải được giữ trên đĩa ở đâu đó.

Tôi đã có một vấn đề dns ngày hôm nay và khi kiểm tra với một máy ảo cũ, tôi phát hiện ra một số mục thực sự cũ trong dnscache địa phương của tôi. Đây là những bài viết từ công ty cũ của tôi và lúc đầu tôi nghĩ có lẽ họ đã đột nhập vào hoặc tôi vẫn kết nối bằng cách nào đó với mạng của họ. Nhưng họ cũng chứa một số mục của riêng tôi từ máy ảo từ một thời gian trước đây.

ipconfig / flushdns sẽ không xóa các mục nhập. Tôi đã thử dừng và khởi động lại dịch vụ dns. Đã không giúp được gì. Tôi đã ngắt kết nối bộ định tuyến của mình khỏi Internet và các mục vẫn còn. Sau đó, tôi nhớ rằng VM từng là một bộ điều khiển miền và máy chủ dns từ lâu vì vậy tôi nghi ngờ một cái gì đó đã không được gỡ bỏ cài đặt một cách chính xác.

Tôi đã sử dụng procman.exe và cô lập cá thể của svchost.exe để trả lời các yêu cầu ping. Trên một ping, nó đã mở tập tin host và không có gì khác. Ngu ngốc tôi, tôi nên kiểm tra tập tin host trước khi bắt đầu tất cả điều này. Tất cả các mục cũ đều nằm trong tệp host. Một khi họ đã bị xóa sổ ở đó, họ đã không hiển thị trong ipconfig / displaydns.

Khi dịch vụ dns cục bộ bị dừng và khởi động lại, các mục nhập hiện có sẽ bị xóa, để có xu hướng xác nhận chúng chỉ được lưu trong bộ nhớ đệm. Nhưng có, ipconfig dns liên tục mục được sử dụng bởi ping thông qua các dns địa phương được đặt tại c: \ windows \ system32 \ drivers \ etc \ hosts.

Hy vọng điều này sẽ giúp bất cứ ai khác cố gắng khắc phục sự cố này.


0
2018-05-25 19:49