Hotline : 07 088 44444
Thích
Chia sẻ

Flush DNS là gì? Hướng dẫn cách xóa cache DNS trên máy tính

15/01/2021

Trong quá trình sử dụng mạng, nhiều người gặp phải hiện tượng không truy cập được internet. Một trong những cách giải quyết vấn đề này là flush DNS. Vậy flush DNS là gì và vì sao ta nên thực hiện nó thường xuyên?

Flush DNS là gì?

Bất kì ai tiếp xúc với internet hằng ngày đều để lại lịch sử và các “dấu vết”. Kể cả những người có ít hiểu biết hay kinh nghiệm về internet cũng biết điều này. Các nhà điều hành website thường sử dụng cookies hoặc các ứng dụng JavaScript để ghi lại các hoạt động. Dữ liệu này được dùng để tối ưu hóa website, cá nhân hóa nội dung mà không làm lộ thông tin cá nhân. Người dùng ngày càng dựa vào các trình chặn quảng cáo và JavaScript, proxy hoặc xóa lịch sử, cookies. Họ mong chấm dứt được việc thu thập dữ liệu, đồng thời bảo vệ quyền riêng tư của mình.

Tuy nhiên, rất ít người nhận thức được hệ điều hành cũng lưu trữ thông tin về hoạt động lướt web. Thực tế, cache DNS được tạo tự động, chứa các entry tạm thời về tất cả trang web đã truy cập. Các phần dưới đây sẽ giải thích bộ nhớ cache này là gì. Đồng thời lý giải vì sao người dùng cần flush DNS thường xuyên.

Những thông tin về Flush DNS là gì? Tiếp theo tìm hiểu rõ hơn Cache DNS là gì? để có cái nhìn tổng quan và rõ hơn

flush DNS là gì
Flush DNS là gì?

Cache DNS là gì?

Các máy chủ DNS có tác dụng chuyển đổi tên miền dạng chữ thành các địa chỉ số mà hệ thống máy tính có thể xử lý. Các “máy chủ định danh” này được liên hệ mặc định thông qua các trình duyệt khi chúng được truy cập. Điều này ít nhiều làm việc truy cập tốn thời gian hơn. Thậm chí có thể dẫn đến việc quá tải server DNS. Các thông báo lỗi như “Máy chủ DNS không phản hồi“, “ns_probe_finished_nxdomain” là khá phổ biến, tuy nhiên ít được quan tâm.

Vì lý do này, các hệ điều hành như Windows hay MacOS đính kèm bộ nhớ đệm của riêng chúng cho các địa chỉ được gọi và phân giải – gọi là DNS cache. Chúng lưu trữ tất cả thông tin liên quan đến việc phân giải tên, mỗi thông tin có một thời gian hiệu lực (TTL) – chỉ thời gian tồn tại của dữ liệu. Trong khoảng thời gian này, các truy vấn tương ứng được trả lời trực tiếp từ bộ nhớ cache. Quá trình này không cần phải liên hệ tới máy chủ DNS.

Bên cạnh đó, một số ứng dụng như các trình duyệt web hay máy chủ định danh từ các nhà cung cấp dịch vụ internet, cũng có bộ đệm DNS riêng để tăng tốc độ phân giải tên.

Cache DNS chứa những thông tin gì?

Cache DNS chứa những thông tin gì?
Cache DNS chứa những thông tin gì?

Các đơn vị thông tin hoặc entry trong cache DNS được gọi là bản ghi (resource record – RR). Chúng được hiển thị dưới dạng mã ASCII (dưới dạng nén), có các thành phần như:

  • Dữ liệu tài nguyên (Resource data – rdata): dữ liệu mô tả bản ghi. Ví dụ: địa chỉ, tên máy chủ…
  • Loại bản ghi (Record Type): loại của entry được tạo. Ví dụ: “A”: Địa chỉ IPv4 (giá trị thập phân tương ứng: 1); “AAAA”: Địa chỉ IPv6 (giá trị thập phân: 28)…
  • TTL (time-to-live): thời gian hiệu lực của bản ghi (đơn vị: giây).
  • Tên bản ghi (Record Name – không bắt buộc): tên miền của đối tượng mà entry DNS được tạo.
  • Lớp (Class – không bắt buộc): nhóm giao thức mà RR thuộc trong đó (chủ yếu là “IN” – internet).
  • Độ dài dữ liệu (Resource data length – không bắt buộc): giá trị độ dài của dữ liệu.

Cache DNS chứa địa chỉ IP cho từng domain hoặc host tương ứng. Ngoài ra nó còn chứa các thông tin bổ sung chỉ định nó. Ví dụ như thời hạn hiệu lực của bản ghi, nhóm giao thức thích hợp,…

Lý do để thường xuyên flush DNS là gì?

Cần thường xuyên flush DNS
Cần thường xuyên flush DNS

Như đã đề cập ở trên, người dùng nên duy trì thói quen flush DNS. Việc này không thể tự động xảy ra. Bởi vì các entry vẫn còn trong bộ nhớ đệm đến khi TTL hết hạn. Đặc biệt, có ba lý do để bạn bắt đầu thực hiện việc flush DNS thường xuyên. Hơn nữa, việc này cũng không phụ thuộc vào thời hạn hiệu lực thực tế của các bản ghi.

Ẩn các hoạt động tìm kiếm

Mặc dù việc theo dõi hoạt động người dùng trên internet chủ yếu được thực hiện bởi cookies, JavaScript,… Nhưng cache DNS vẫn là một “con mồi” tiềm năng cho những kẻ thu thập dữ liệu. Trên cơ sở các địa chỉ được liệt kê, bao gồm cả các thông tin bổ sung, ta có thể có cái nhìn tổng quan tương đối chính xác về lịch sử trang của mình. Trong mọi trường hợp, việc lưu trữ địa chỉ tiềm ẩn rủi ro cho những dự án bạn truy cập thường xuyên hoặc trong một thời gian dài. Bộ sưu tập địa chỉ được lưu trong cache càng cụ thể, thông tin người dùng càng bị tiết lộ nhiều.

Chống lại tấn công giả mạo

Vì vấn đề bảo mật, mỗi người dùng nên thường xuyên xóa bộ nhớ đệm DNS của mình. Các thông tin trong cache rõ ràng là có thể hữu dụng khi truyền tải các dự án web. Mặt khác, nó có thể nhanh chóng trở nên nguy hiểm khi rơi vào tay kẻ xấu. Nếu các tay tội phạm mạng có được quyền truy cập vào bộ nhớ cache DNS, chúng hoàn toàn có thể giả mạo các entry dễ dàng. Chẳng hạn như chuyển hướng bạn đến các website sai, giả mạo…Hành động này được gọi là làm nhiễm độc DNS hay giả mạo DNS. Chúng thường dùng để truy cập vào các dữ liệu đăng nhập nhạy cảm như online banking. Tuy vậy, bằng cách flush DNS, bạn hoàn toàn có thể loại bỏ nguy cơ này.

Giải quyết được các sự cố kỹ thuật

Đối với các hệ điều hành như Windows, MacOS…, việc flush DNS thường là một giải pháp hiệu quả nếu bạn đang gặp sự cố kỹ thuật khi truy cập các ứng dụng web. Chẳng hạn do các entry cũ làm phiên bản của trang web bạn dùng không còn phù hợp. Với những trường hợp như vậy, tên miền có thể được lưu trong bộ nhớ cache với một địa chỉ IP đã cũ hoặc không chính xác. Ta có thể khắc phục việc này bằng cách xóa bộ nhớ cache DNS. Từ đó, ta sẽ được chuyển hướng đến máy chủ DNS thích hợp và các dự án sẽ hoạt động lại như cũ.

Ngoài ra, người dùng có thể kiểm tra bộ nhớ cache DNS hiện tại của mình bất kỳ lúc nào. Trên hệ điều hành Windows, bạn có thể nhập lệnh “ipconfig /displaydns” trong command prompt.

Flush DNS cache như thế nào?

Khi bạn nhập một trang web vào thanh địa chỉ, chẳng hạn như vietnix.vn, máy tính sẽ không thể tự nó biết được nên đi đến đâu. Thay vào đó, nó sẽ tìm kiếm địa chỉ đó trên máy chủ Hệ thống tên miền (Domain Name System – DNS). Máy chủ này sẽ khớp với địa chỉ IP để máy tính có thể truy cập được.

Lấy một ví dụ thực tiễn, khi bạn bè hẹn :”Đến nhà của A tối nay nhé.” Nếu bạn không biết địa chỉ của nhà A, bạn có thể tìm địa chỉ trong danh bạ và đi đến đó.

Tuy nhiên, việc này có thể mất nhiều thời gian để tìm được địa chỉ phù hợp trong danh bạ. Để tăng tốc quá tình này, máy tính của bạn lưu một số mục nhập để truy cập dễ hơn sau này. Để tiếp tục với ví dụ trước, nó sẽ giống như việc viết “Nhà của A – 123 Phan Đình Phùng” vậy. Việc này giúp máy tính bạn điều hướng đến các trang web bạn đã truy cập mà không cần hỏi máy chủ DNS.

Sự cố khi truy cập vào internet

Một điều không may là bộ nhớ cache này có thể gặp sự cố, dù tương đối hiếm hoi. Có thể trang web bạn đang truy cập đã thay đổi máy chủ. Do đó nó không còn nằm ở địa chỉ đã lưu trong bộ nhớ cache. Ngoài ra, một số phần mềm độc hại đang cố chuyển hướng các trang phổ biến đến trang web độc hại. Khi đó, bạn có thể flush DNS cache để bắt đầu lại từ đầu. Máy tính sau đó sẽ tra cứu địa chỉ web trên máy chủ DNS lại lần nữa.

Quá trình này khác với việc xóa bộ nhớ cache web của bạn khỏi trình duyệt. Nếu xóa bộ nhớ cache của trình duyệt không giải quyết được, việc xóa DNS cache nên được cân nhắc.

Flush DNS trên Windows

Nếu bạn đang sử dụng máy Windows (XP trở lên), việc xóa DNS tương đối dễ dàng. Nhấp vào menu Start, nhập “cmd”. Nhập chuột phải vào Command Prompt và chọn “Run as administrator”. Trong cửa sổ Command Prompt hiện lên, nhập lệnh sau:

ipconfig /flushdns

Flush DNS trên Windows
Flush DNS trên Windows

Nếu thành công, Command Prompt sẽ thông báo “Successfully flushed the DNS Resolver Cache.” Sau đó, thử truy cập lại trang web để kiểm tra. Nếu không thành công, có thể trang web đã ngừng hoạt động hoặc có sự cố với Wi-Fi. Hoặc bạn có thể gặp sự cố khó nắm bắt hơn cần được theo dõi cụ thể. Bạn có thể khắc phục sự cố từ xa đối với máy tính của người khác.

Flush DNS trên macOS

Người dùng Mac cần chạy lệnh Terminal, tuy nhiên lệnh này khác nhau dựa theo phiên bản MacOS. Đầu tiên, nhấn Command+Space để mở Spotlight, tìm “Terminal”. Sau đó nhấn Enter để mở lệnh.

Hầu hết các phiên bản MacOS hiện đại – từ OS X Lion đến MacOS Sierra – đều sử dụng lệnh sau. Nhập lệnh vào Temrinal và nhấn Enter:

sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

MacOS DNS Flush
MacOS DNS Flush

Khác với Windows, sẽ không có thông báo hiện lên sau khi nhập lệnh. Tuy nhiên bạn có thể trực tiếp kiểm tra trang web để xem tình trạng của nó. Nếu không, bạn sẽ phải chuyển sang các bước khắc phục sự cố khác liên quan đến internet.

Nếu bạn có thắc mắc hay có vấn đề cần hỗ trợ, bạn có thể liên hệ trực tiếp với Vietnix thông qua các kênh sau:
  • Hotline: 1800 1093 - 07 088 44444
  • Email: support@vietnix.vn
  • Hoặc chat trực tiếp với Vietnix thông qua biểu tượng Livechat ở góc phải màn hình. Đội ngũ chuyên viên của chúng tôi luôn sẵn sàng tư vấn và hỗ trợ bạn 24/7.
Vietnix hiện đang có chương trình khuyến mãi lớn nhất trong năm, giảm giá TRỌN ĐỜI: Đăng ký dùng thử ngay và Vietnix sẽ hoàn tiền 100% nếu quý khách không hài lòng với chất lượng sản phẩm, dịch vụ!
Mình là Bo - admin của Quản Trị Linux. Mình đã có 10 năm làm việc trong mảng System, Network, Security và đã trải nghiệm qua các chứng chỉ như CCNP, CISSP, CISA, đặc biệt là chống tấn công DDoS. Gần đây mình trải nghiệm thêm Digital Marketing và đã hòan thành chứng chỉ CDMP của PersonVUE. Mình rất thích được chia sẻ và hỗ trợ cho mọi người, nhất là các bạn sinh viên. Hãy kết nối với mình nhé!
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments