Thông tin liên hệ
- 036.686.3943
- admin@nguoicodonvn2008.info
Khi bạn truy cập một trang web bằng tên miền của trang web đó, hệ thống của bạn sẽ gửi yêu cầu đến máy chủ DNS để lấy địa chỉ IP cho domain đó. Cặp địa chỉ IP-domain này được lưu trong cache DNS để sử dụng sau này, do đó bạn không phải gửi yêu cầu đến máy chủ DNS mỗi lần để tạo kết nối.
Nhưng đôi khi, cache DNS cục bộ bị hỏng và gây ra lỗi HTTP. May mắn thay, việc xóa và xây dựng lại cache DNS trên máy tính Linux rất đơn giản. Sau đây là cách thực hiện.
Có một số lý do khiến bạn có thể muốn build lại cache DNS được lưu trữ trên hệ thống của mình. Có thể bạn có bản ghi DNS lỗi thời cho một trang web và muốn lấy lại từ máy chủ DNS. Hoặc có thể hệ thống của bạn đã bị xâm phạm và bạn muốn đảm bảo rằng cache DNS không bị can thiệp, còn được gọi là giả mạo DNS.
Khi bạn xóa cache DNS, hệ thống phải ping lại máy chủ DNS và lấy bản ghi địa chỉ IP-domain mới từ đó, xóa mọi dữ liệu lỗi thời hoặc bị xâm phạm trong quá trình này.
Trước systemd, hầu hết các bản phân phối Linux đều không có cache DNS trên toàn hệ thống, trừ khi một chương trình như dnsmasq hoặc nscd được thiết lập thủ công. systemd đi kèm với systemd-resolved, một service phân giải tên miền thành địa chỉ IP và lưu cache các mục nhập DNS.
Các phần sau sẽ hướng dẫn bạn cách xem nội dung cache DNS do systemd-resolved, nscd và dnsmasq tạo ra, để bạn có thể hiểu dữ liệu được lưu trữ trước khi quyết định xóa dữ liệu đó.
Để xem các bản ghi cache systemd-resolved, trước tiên bạn cần tạm thời tắt service, sau đó xuất nhật ký của service đó sang file.
Bắt đầu bằng cách gửi tín hiệu SIGUSR1 để tắt service systemd-resolved:
sudo killall -USR1 systemd-resolved
Sử dụng lệnh journalctl và toán tử đầu ra chuẩn để lưu đầu ra vào file văn bản:
sudo journalctl -u systemd-resolved > ~/cache.txt
Sau đó, bạn có thể xem nội dung của file bằng trình soạn thảo văn bản như Vim:
vim ~/cache.txt

Trong file, hãy tìm kiếm "CACHE:" bằng cách nhấn Escape, nhập "/CACHE:" và nhấn Enter. Tất cả các bản ghi DNS được liệt kê trong CACHE: Đều là một phần của cache DNS cục bộ. Nhấn n để chuyển đến tập hợp mục nhập DNS tiếp theo nếu bạn đang sử dụng Vim.
Để xem cache cục bộ do nscd tạo ra, bạn cần đọc nội dung của cơ sở dữ liệu máy chủ nscd bằng lệnh strings.
Trên các bản phân phối dựa trên Debian và Ubuntu, file này nằm tại /var/cache/nscd/hosts. Chạy lệnh sau để xem file:
sudo strings /var/cache/nscd/hosts | uniq

Để xem số liệu thống kê chung về cache DNS nscd, hãy sử dụng flag -g:
sudo nscd -g
dnsmasq lưu cache DNS trong bộ nhớ nên không dễ để có được các bản ghi chính xác. Nhưng bạn có thể gửi tín hiệu kill đến dnsmasq và ghi lại đầu ra của nó để biết số lượng truy vấn DNS được xử lý.
Để thực hiện, trước tiên, hãy đảm bảo dnsmasq đang hoạt động bằng cách sử dụng lệnh systemctl:
sudo systemctl status dnsmasq
Nếu trạng thái hiển thị Active, hãy chạy lệnh sau để tắt service:
sudo pkill -USR1 dnsmasq
Sử dụng lệnh journalctl, trích xuất nhật ký dnsmasq và lưu chúng vào file văn bản:
sudo journalctl -u dnsmasq > ~/cache.txt
Cuối cùng, hãy xem nội dung của file bằng tiện ích xem file như cat hoặc less:
cat ~/cache.txt
Xóa cache DNS có nghĩa là xóa các bản ghi DNS được lưu trong cache khỏi máy tính. Điều này buộc nó phải gửi yêu cầu đến máy chủ DNS để truy xuất các mục DNS mới.
Đây là cách bạn có thể xóa cache DNS trên Linux:
Bạn có thể sử dụng lệnh Resolvectl để xóa cache DNS được lưu trữ bởi systemd-resolved:
sudo resolvectl flush-caches
Nếu bạn đang chạy Ubuntu 17.04 hoặc 18.04, hãy sử dụng lệnh systemd-resolved để xóa cache:
sudo systemd-resolved --flush-caches
Cách thuận tiện nhất để xóa cache DNS cho nscd là khởi động lại service. Bạn có thể làm như vậy bằng cách chạy:
sudo /etc/init.d/nscd restart
Nếu cách đó không hiệu quả, trước tiên, hãy kiểm tra xem cache cục bộ được lưu trên PC có liên tục hay không. Bạn có thể sử dụng flag -g để xác minh nó:
sudo nscd -g
Nếu đúng như vậy, hãy sử dụng flag -i với lệnh nscd để xóa các bản ghi (i là viết tắt của invalidate):
sudo nscd -i hosts
Việc xóa cache DNS do dnsmasq tạo ra rất đơn giản. Vì cache được lưu trong bộ nhớ nên việc khởi động lại service sẽ xóa tất cả các mục được lưu trữ.
Để khởi động lại dnsmasq, hãy chạy lệnh systemctl sau:
sudo systemctl restart dnsmasq
Hoặc, đưa ra lệnh sau:
service dnsmasq restart
Nhập mật khẩu admin nếu được nhắc. dnsmasq bây giờ sẽ khởi động lại và tất cả các mục DNS hiện có sẽ bị xóa khỏi cache.
Sau khi xóa cache DNS, tốt nhất bạn nên xem các mục trong cache cục bộ và xác minh xem dữ liệu đã được xóa thành công hay chưa. Bạn có thể sử dụng dig, một trong nhiều lệnh Linux khắc phục sự cố mạng và kiểm tra giá trị thời gian truy vấn ở đầu ra. Nếu lớn hơn 0 mili giây thì cache đã được xóa thành công (0 mili giây có nghĩa là bản ghi domain vẫn còn trong cache).
dig google.com
Nguồn tin: Quantrimang.com:
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn
AI Burnout là gì? Vì sao AI có thể khiến bạn làm việc nhiều hơn và kiệt sức
OpenAI Presence: Nền tảng AI agent dành cho doanh nghiệp chính thức ra mắt
Xu hướng tự động hóa AI năm 2026: Từ chatbot đến hệ điều hành
TOP công cụ AI chuyển ảnh thành tranh vẽ
Prompt AI biến logo thành mô hình nhựa 3D siêu chân thực
Top 5 MCP Server tốt nhất để xây dựng AI Agent hiệu năng cao năm 2026
Khi thêm Copilot vào Microsoft Office 365 thì bạn sẽ có thể tận dụng Copilot để hỗ trợ làm việc với các ứng dụng văn phòng, như dùng Copilot trong PowerPoint chẳng hạn. Copilot sẽ giúp bạn thêm ý tưởng sáng tạo cho slide nội dung PowerPoint, hay sửa
TOP cách tận dụng AI Agent hiệu quả trong môi trường làm việc
Tiết kiệm thời gian đọc tài liệu với tool tạo âm thanh trong Google Docs
Khám phá Gemini trong Google Docs: Công cụ AI viết văn bản nhanh hơn
SDK vs API: Khác nhau như thế nào?
Kết nối với Foundry IQ từ agent trong Copilot Studio
Hướng dẫn tạo bảng Google Docs bằng Gemini từ A đến Z
Prompt tạo sổ tay giáo viên các cấp học
Top 7 MCP Client tốt nhất để khai thác sức mạnh của AI Agent
Gemini Omni có thể tạo video tốt đến mức nào?
Hướng dẫn sử dụng Copilot trong Excel
Jasper vs ChatGPT: Công cụ AI nào tốt hơn?
Hướng dẫn viết prompt ChatGPT giúp tiết kiệm token, chi phí và nhận được câu trả lời tốt hơn
Cách huấn luyện ChatGPT bằng dữ liệu riêng