DNS leak là tình trạng thiết bị gửi truy vấn tra cứu tên miền ra ngoài đường hầm VPN được mã hóa, thường đến nhà mạng hoặc một DNS resolver khác. Khi đó, dù VPN vẫn che IP của bạn, tên miền bạn truy cập vẫn có thể bị lộ.
Tin tốt là rò rỉ DNS có thể kiểm tra và thường sửa được. Bài viết này giải thích DNS là gì, vì sao truy vấn DNS nhạy cảm, nguyên nhân hay gặp, cách chạy test rò rỉ DNS đáng tin cậy và cách giảm rủi ro trên máy tính, điện thoại và trình duyệt.
DNS là gì và vì sao nó quan trọng?
DNS là viết tắt của Domain Name System, hệ thống phân giải tên miền của internet. Nói đơn giản, nó giống cuốn danh bạ của mạng. Khi bạn nhập tên một trang web, thiết bị cần tìm địa chỉ máy chủ tương ứng trước khi tải trang.
Bạn nhớ theo tên miền vì nó dễ đọc. Trình duyệt và ứng dụng lại cần địa chỉ IP, vì mạng định tuyến bằng số. DNS là phần chuyển từ tên sang địa chỉ.
Quy trình tra cứu DNS thường diễn ra như sau:
- Bạn nhập tên miền hoặc mở một ứng dụng.
- Thiết bị hỏi DNS resolver xem tên miền đó trỏ tới đâu.
- Resolver trả về địa chỉ IP hoặc bản ghi liên quan.
- Thiết bị kết nối đến đích và tải dịch vụ.
Điểm quan trọng về quyền riêng tư là DNS có thể hé lộ ý định của bạn. Resolver thường không thấy toàn bộ URL, nội dung chi tiết của trang hay dữ liệu bên trong phiên HTTPS đã mã hóa. Nhưng nó thường thấy tên miền bạn yêu cầu, ví dụ một trang tin, ngân hàng, diễn đàn sức khỏe, công cụ công việc hoặc dịch vụ streaming.
Vì vậy, cách xử lý DNS là một phần của quyền riêng tư khi dùng VPN. VPN không chỉ là đổi IP mà website nhìn thấy, nó còn nên giữ các truy vấn tra cứu thông thường không lọt ra ngoài đường bảo vệ. Nếu bạn mới tìm hiểu cơ bản, xem thêm VPN là gì để hiểu cách đường hầm VPN hoạt động.
DNS leak là gì?
DNS leak là sự lệch giữa nơi lưu lượng internet chính của bạn đi qua và nơi các truy vấn DNS đi qua. Lưu lượng web có thể đang chạy qua máy chủ VPN, nhưng truy vấn DNS lại vẫn đi tới nhà mạng, nhà mạng di động, một resolver công cộng đã được cấu hình trên thiết bị, hoặc resolver do trình duyệt chọn.
Điều này tạo ra một lỗ hổng về quyền riêng tư. Trang web bạn mở có thể chỉ thấy IP của máy chủ VPN, nhưng resolver ở ngoài đường hầm vẫn có thể thấy các tên miền bạn yêu cầu. Nếu resolver đó thuộc nhà mạng, họ có thể suy ra khá nhiều từ siêu dữ liệu DNS.
Rò rỉ DNS không có nghĩa là toàn bộ VPN đã hỏng. Nó có thể xảy ra ngay cả khi biểu tượng VPN báo đã kết nối và IP công khai của bạn vẫn là IP của máy chủ VPN. Vì vậy, nếu không test trực tiếp thì rất dễ bỏ sót.
Với Crispy VPN, truy vấn DNS được đi qua đường hầm VPN khi ứng dụng đang kết nối. Cách thiết kế này giữ lưu lượng tra cứu DNS đi cùng kết nối VPN, thay vì để nó quay về mạng bạn đang dùng.
DNS leak có thể tiết lộ gì?
- Tên miền: các trang và dịch vụ mà thiết bị của bạn yêu cầu phân giải.
- Thời điểm: lúc các truy vấn đó xảy ra.
- Bối cảnh mạng: truy vấn đến từ nhà mạng gia đình, công ty, khách sạn, mạng di động hay một mạng nội bộ khác.
DNS một mình thường không lộ toàn bộ nội dung của một trang HTTPS an toàn. Nó cũng không làm bạn ẩn danh. Các trang bạn đã đăng nhập vẫn có thể nhận ra tài khoản của bạn, và tracker vẫn có thể bám qua cookie hoặc dấu vân tay trình duyệt. Nhưng rò rỉ DNS vẫn đáng ngăn chặn vì nó cho người khác một bản đồ khá rõ về những gì bạn truy cập.
DNS leak xảy ra như thế nào?
DNS leak thường đến từ xung đột cấu hình. Hệ điều hành, trình duyệt, ứng dụng VPN và bộ điều hợp mạng đều có thể ảnh hưởng đến cách DNS hoạt động. Nếu các lớp này không thống nhất, truy vấn có thể đi theo đường bạn không ngờ tới.
Cài đặt DNS của hệ điều hành
Hệ điều hành quyết định dùng DNS server nào cho từng giao diện mạng. Khi VPN kết nối, nó thường tạo một giao diện mạng ảo và nên đẩy DNS đi qua giao diện đó. Rò rỉ có thể xảy ra nếu hệ thống vẫn dùng DNS của Wi-Fi hoặc Ethernet cũ.
Điều này dễ gặp hơn sau khi đổi mạng nhiều lần, máy ngủ rồi thức dậy, đăng nhập qua cổng captive portal, hoặc tự chỉnh tay cài đặt mạng. Ngắt rồi kết nối lại VPN thường xử lý được lỗi định tuyến tạm thời, nhưng rò rỉ kéo dài thì cần xem lại phần cài đặt.
Xử lý IPv6
IPv6 là hệ thống địa chỉ internet mới hơn, có thể chạy song song với IPv4. DNS có thể phân giải cả bản ghi IPv4 và IPv6. Nếu VPN hoặc thiết bị định tuyến IPv4 đúng nhưng lại để DNS IPv6 hoặc lưu lượng IPv6 đi qua mạng cục bộ, đó cũng là một dạng rò rỉ.
Vì vậy, khi test không nên chỉ nhìn xem một địa chỉ IPv4 có đổi hay không. Kết quả sạch là khi DNS server và thông tin IP hiển thị khớp với đường đi VPN bạn muốn dùng.
DNS server đặt thủ công
Nhiều người tự đặt DNS server trên thiết bị, router hoặc trình duyệt để tăng tốc, lọc nội dung hoặc ổn định hơn. Các cài đặt đó có thể ghi đè DNS do ứng dụng VPN cung cấp. Nếu resolver tùy chỉnh đó đi ra ngoài đường hầm, bạn sẽ gặp DNS leak.
Đặt DNS thủ công không phải lúc nào cũng xấu, nhưng nó phải phù hợp với mục tiêu riêng tư của bạn. Khi dùng VPN, cách an toàn mặc định là để ứng dụng VPN quản lý DNS, trừ khi bạn có lý do cụ thể và biết chính xác truy vấn đang đi đâu.
DNS over HTTPS trong trình duyệt
Một số trình duyệt có tính năng DNS over HTTPS, còn gọi là secure DNS. Nó mã hóa DNS giữa trình duyệt và nhà cung cấp DNS. Cách này có thể bảo vệ DNS khỏi mạng cục bộ, nhưng cũng có thể bỏ qua DNS settings mà ứng dụng VPN dùng.
Nếu DNS over HTTPS của trình duyệt trỏ tới một resolver nằm ngoài đường đi VPN, bài test có thể hiện resolver đó thay vì DNS của VPN. Dữ liệu có thể đã mã hóa, nhưng nó vẫn không đi theo cách DNS mà VPN định dùng. Tiện ích mở rộng trình duyệt cũng có thể có quy tắc định tuyến riêng, nên test trong trình duyệt và test toàn thiết bị có thể cho kết quả khác nhau.
Chọn split tunneling
Split tunneling cho phép một số ứng dụng hoặc website đi đường khác với phần còn lại của lưu lượng. Nó hữu ích khi bạn muốn một phần lưu lượng ở trong VPN và một phần ở ngoài. Nhưng nó cũng có thể giải thích những kết quả DNS bất ngờ.
Nếu một ứng dụng hoặc website bị loại khỏi VPN, DNS của nó cũng có thể bị loại khỏi VPN, tùy nền tảng và cách triển khai. Crispy VPN hỗ trợ split tunneling trên Android theo ứng dụng, trên iPhone và iPad theo website, và trong tiện ích trình duyệt theo website. Nếu bạn dùng split tunneling, hãy kiểm tra lại quy tắc trước khi cho rằng mọi truy vấn DNS đều đã được bảo vệ. Xem thêm split tunneling là gì.
Cách test rò rỉ DNS
Test rò rỉ DNS giúp xem DNS resolver nào có thể nhìn thấy truy vấn tra cứu của bạn. Cách cơ bản là so sánh kết quả khi tắt VPN và khi bật VPN. Nếu khi đã kết nối mà vẫn thấy DNS server của nhà mạng hoặc mạng nội bộ, khả năng cao là có rò rỉ.
Hãy test trong điều kiện bạn dùng thực tế. Nếu bạn chủ yếu duyệt web bằng một trình duyệt cụ thể, hãy test ngay trong trình duyệt đó. Nếu bạn dùng app máy tính hoặc app di động, hãy test cả kết nối toàn thiết bị. Nếu bạn thường xuyên đổi giữa Wi-Fi và dữ liệu di động, hãy test cả hai mạng.
Danh sách kiểm tra khi test DNS leak
- Tắt VPN. Mở một trang test DNS leak và ghi lại tên DNS provider, quốc gia và địa chỉ IP hiển thị. Đây là mốc nền của bạn.
- Bật VPN. Chọn vị trí máy chủ VPN bạn thường dùng và đợi app báo đã kết nối.
- Tải lại trang test. Chạy bài test tiêu chuẩn trước. Nếu có test mở rộng thì chạy thêm.
- So sánh kết quả. Khi VPN đang bật, bạn không nên thấy DNS server của nhà mạng, công ty, trường học, khách sạn hay nhà mạng di động.
- Kiểm tra IP công khai. Dùng trang kiểm tra IP để xác nhận IP công khai của bạn cũng đã đổi sang vị trí VPN. Bạn có thể xem thêm IP của tôi là gì để làm bước này.
- Lặp lại sau khi đổi mạng. Test lại sau khi đổi Wi-Fi, chuyển sang dữ liệu di động hoặc đánh thức thiết bị từ chế độ ngủ.
Kết quả tốt không phải lúc nào cũng hiện đúng tên thương hiệu VPN của bạn. Hạ tầng DNS có thể hiện tên nhà cung cấp khác, tên trung tâm dữ liệu khác hoặc địa chỉ relay khác. Điều quan trọng là kết quả không cho thấy nhà mạng cục bộ hay resolver bạn không định dùng.
Nếu bạn dùng Crispy VPN, hãy kết nối app trước rồi mới test. DNS sẽ được đi qua đường hầm cùng với lưu lượng VPN. Nếu sau khi kết nối mà vẫn thấy DNS của nhà mạng, hãy xem đó là vấn đề cấu hình thiết bị hoặc trình duyệt và kiểm tra các cách sửa bên dưới.
Cách khắc phục sự cố rò rỉ DNS
Cách sửa đúng phụ thuộc vào nguyên nhân. Hãy bắt đầu từ những bước ít can thiệp nhất, rồi mới đi sâu vào cài đặt hệ thống và trình duyệt nếu lỗi vẫn còn.
Những cách thử trước tiên
- Ngắt rồi kết nối lại VPN. Việc này làm mới đường định tuyến và cài đặt DNS.
- Đổi vị trí máy chủ VPN. Một kết nối mới có thể xóa trạng thái mạng cũ.
- Khởi động lại ứng dụng và trình duyệt. Trình duyệt có thể giữ lại quyết định DNS cho đến khi được mở lại.
- Khởi động lại thiết bị. Cách này đặt lại giao diện mạng và các gán DNS cũ.
- Cập nhật ứng dụng VPN và hệ điều hành. Lỗi định tuyến DNS thường được sửa qua bản cập nhật.
Kiểm tra DNS đặt thủ công
Xem trong cài đặt Wi-Fi, Ethernet và mạng di động. Nếu bạn từng nhập DNS server thủ công, hãy tạm thời xóa chúng và đưa DNS về chế độ tự động. Sau đó kết nối lại VPN và chạy test DNS leak lần nữa.
Nếu lỗi biến mất, nghĩa là DNS thủ công đã ghi đè lên VPN. Bạn có thể cân nhắc có cần giữ cấu hình đó hay không, nhưng đừng mặc định rằng nó an toàn chỉ vì quen thuộc hoặc đã được mã hóa.
Kiểm tra secure DNS của trình duyệt
Mở phần cài đặt quyền riêng tư hoặc bảo mật của trình duyệt và tìm secure DNS hoặc DNS over HTTPS. Nếu đang bật với một nhà cung cấp cụ thể, hãy tắt tạm thời hoặc đặt trình duyệt dùng mặc định của hệ điều hành. Kết nối lại VPN, khởi động lại trình duyệt rồi test lại.
Điều này đặc biệt quan trọng nếu chỉ một trình duyệt bị leak trong khi các ứng dụng khác đều sạch. Khi đó, có thể VPN đang hoạt động đúng ở cấp hệ thống, còn trình duyệt đang tự chọn resolver riêng.
Kiểm tra quy tắc split tunneling
Nếu đang bật split tunneling, hãy kiểm tra xem trình duyệt, trang test hoặc ứng dụng có bị loại khỏi VPN hay không. Bỏ loại trừ đó rồi test lại. Nếu kết quả thay đổi sau khi tắt split tunneling, điều đó không hề bí ẩn. Nó chỉ có nghĩa là quy tắc đang chạy đúng như đã cấu hình.
Dùng ứng dụng VPN thay vì cách vòng vo không được hỗ trợ
Các kiểu cấu hình router không được hỗ trợ, file cấu hình rời rạc hoặc công cụ mạng của bên thứ ba có thể làm DNS routing khó đoán hơn. Crispy VPN có ứng dụng cho iPhone và iPad, Mac, Windows, Linux, Android, Apple TV, Android TV và Google TV, cùng tiện ích trình duyệt cho Chrome, Edge và Firefox. Hãy tải app phù hợp từ trang tải xuống rồi test từ đó.
Trên các thiết bị được hỗ trợ, Crispy VPN dùng WireGuard trên mọi máy chủ. WireGuard là giao thức VPN hiện đại, mã nguồn nhỏ, hiệu năng tốt và tiết kiệm pin trên thiết bị di động. Nếu muốn hiểu thêm về giao thức này, xem WireGuard là gì.
Ngăn rò rỉ DNS trên từng loại thiết bị
Ngăn rò rỉ DNS chủ yếu là giữ cho ứng dụng VPN kiểm soát đường đi của lưu lượng và tránh xung đột DNS. Chi tiết sẽ khác nhau theo thiết bị.
Windows, Mac và Linux
Hệ điều hành máy tính thường có nhiều giao diện mạng cùng lúc, như Wi-Fi, Ethernet, bộ điều hợp ảo và đôi khi cả profile công việc. Nếu thấy DNS leak, hãy kiểm tra cài đặt DNS của adapter và xóa các resolver thủ công cũ. Sau đó kết nối lại VPN.
Trên Windows, Mac và Linux, kill switch cũng có thể giúp giảm lộ dữ liệu nếu kết nối VPN bị rớt. Crispy VPN có kill switch dạng opt-in trên các nền tảng máy tính này. Trên Windows còn có thêm chế độ Lockdown tùy chọn. Kill switch không giống bảo vệ DNS leak, nhưng nó giúp ngăn lưu lượng tiếp tục đi ra ngoài VPN khi kết nối bị gián đoạn.
iPhone, iPad và Android
Thiết bị di động thường chuyển qua lại giữa Wi-Fi, dữ liệu di động, mạng khách sạn và cổng captive portal. Nếu bạn dựa vào VPN để giữ riêng tư, hãy test sau mỗi lần đổi mạng. Đồng thời kiểm tra xem private DNS, profile quản trị thiết bị hoặc ứng dụng bảo mật có đang làm thay đổi DNS hay không.
Trên Android, các cài đặt hệ thống như Always-on VPN và Block connections without VPN có thể giúp tránh lưu lượng vô tình đi ra ngoài VPN. Trên iPhone và iPad, hãy giữ app VPN luôn được cập nhật và xem lại các quy tắc split tunneling theo website nếu một trang cụ thể hoạt động khác thường.
Trình duyệt và tiện ích mở rộng
Trình duyệt là nguồn gây rối DNS khá phổ biến vì chúng có thể dùng cài đặt secure DNS riêng. Nếu chỉ Chrome, Edge hoặc Firefox bị leak, hãy kiểm tra cài đặt DNS của trình duyệt trước khi chỉnh cả thiết bị.
Tiện ích trình duyệt cũng chỉ bảo vệ lưu lượng web trong trình duyệt, không phải mọi ứng dụng trên máy. Điều đó hữu ích khi bạn chỉ cần bảo vệ khi lướt web, nhưng nó không giống một kết nối VPN toàn thiết bị. Nếu cần phân biệt rõ hơn, xem tiện ích VPN cho trình duyệt.
Thiết bị TV
Nền tảng TV đơn giản hơn, nhưng cũng có ít tùy chọn mạng hơn. Crispy VPN hỗ trợ Apple TV và Android TV hoặc Google TV, với cách đăng nhập bằng quét mã QR trên điện thoại. Nếu đang xử lý DNS trên TV, hãy test cùng mạng đó từ điện thoại hoặc laptop trước, rồi kết nối lại app TV.
VPN che được gì và không che được gì với DNS
Một VPN được cấu hình tốt sẽ giữ truy vấn DNS bên trong đường hầm được mã hóa. Điều đó ngăn người vận hành Wi-Fi cục bộ, nhà mạng hoặc nhà mạng di động nhìn thấy các truy vấn DNS thông thường dưới dạng rõ. Nó cũng giữ đường đi DNS khớp với máy chủ VPN bạn đã chọn.
Crispy VPN cũng không lưu nhật ký hoạt động và dùng mô hình two-party relay để tách người dùng là ai ra khỏi việc người dùng làm gì. Điều này có liên quan, vì quyền riêng tư DNS không chỉ nằm ở đường hầm, mà còn nằm ở cách dịch vụ được xây dựng để giảm liên kết không cần thiết.
Tuy nhiên, VPN không làm bạn ẩn danh. Nó không tự chặn malware hay phishing, và cũng không ngăn một trang web nhận ra bạn khi bạn đã đăng nhập tài khoản. Nó cũng không xóa cookie theo dõi đã có sẵn trong trình duyệt.
Hãy coi bảo vệ DNS leak là một lớp bảo vệ. Nó giúp che siêu dữ liệu tra cứu web khỏi mạng cục bộ và nhà mạng. Kết hợp nó với cài đặt trình duyệt hợp lý, thói quen dùng tài khoản cẩn thận, cập nhật thường xuyên và hiểu rõ VPN đang bảo vệ phần nào.
Nếu bạn vừa cài VPN và muốn kiểm tra kỹ, đừng chỉ test DNS. IP công khai, hành vi WebRTC, cài đặt kill switch và cấu hình trình duyệt đều có thể ảnh hưởng đến quyền riêng tư. Bước tiếp theo thực tế là làm sao biết VPN có đang hoạt động không, bài này sẽ đi qua các kiểm tra rộng hơn.



