← Trở về blog

Phát hiện rò rỉ DNS như thế nào? 4 bước kiểm tra proxy

Kết luận chính: qua bài kiểm tra IP chỉ chứng tỏ điểm xuất đã đổi, chưa chứng tỏ truy vấn DNS cũng đi cùng một đường. Proxy và DNS đảm nhận hai giai đoạn khác nhau: proxy quyết định kết nối rời mạng qua cổng xuất nào, còn DNS biến tên miền thành IP. Truy vấn phân giải đi theo đường không mong đợi chính là rò rỉ DNS. Chỉ cần bốn bước để phát hiện, và đọc đúng kết quả còn quan trọng hơn cả việc chạy bài test.

Bạn cấu hình proxy xong, mở trang kiểm tra IP, trang hiện IP của proxy, vậy là bạn kết luận môi trường mạng không có vấn đề. Vài ngày sau, khi truy vấn sự cố tài khoản, bạn mới phát hiện truy vấn DNS vẫn đi qua mạng nội bộ suốt từ đầu.

Chưa chắc là lỗi proxy: truy vấn DNS có thể chưa từng đi qua proxy.

Đã bật proxy, sao còn phải kiểm tra DNS

Proxy và DNS là hai quy trình riêng; bật proxy không đồng nghĩa DNS cũng được tiếp quản. Proxy quyết định kết nối gửi ra qua cổng xuất mạng nào, còn DNS đảm nhiệm việc phân giải tên miền. Hai việc chạm tới những khúc khác nhau của mạng, nên proxy chạy tốt chưa chắc truy vấn DNS đã đúng như kỳ vọng.

Nói cụ thể vào request mạng: khi mở một trang web, client hoặc phân giải IP của tên miền trước bằng truy vấn DNS, hoặc đưa tên miền sang phía proxy xử lý; chọn cách nào phụ thuộc giao thức proxy, cách client triển khai và thiết lập DNS của trình duyệt. Bật proxy không tự động đồng nghĩa mọi truy vấn phân giải đều đi đúng đường mong đợi. Muốn đánh giá phải dựa vào kiểm tra thực tế, không thể an tâm chỉ vì proxy báo đã kết nối.

Cần phân biệt thêm một ranh giới: rò rỉ DNS không đồng nghĩa IP công khai thật bị lộ. Thứ lộ là đường đi của truy vấn tên miền; nhà cung cấp phân giải hoặc mạng nội bộ có thể thấy bạn đã tra những tên miền nào. IP thật có bị lộ hay không phải do bài kiểm tra IP độc lập phán đoán. Trong khuyến nghị an ninh cho VPN, cơ quan an ninh mạng Singapore xếp bài test rò rỉ DNS và bài test lộ IP thành hai kiểm tra độc lập, lý do chính là chúng xác minh hai vấn đề khác nhau (xem hướng dẫn an toàn VPN của CSA).

Rò rỉ DNS thường xảy ra thế nào

Ba nguồn phổ biến nhất đều liên quan cấu hình, không dính tới việc proxy hỏng hay chưa. Xét lần lượt từng cái.

Proxy chỉ xử lý một phần traffic

Một số cấu hình proxy chỉ tiếp quản request web của trình duyệt, còn việc phân giải vẫn do hệ thống local đảm nhiệm; điều đó phụ thuộc giao thức proxy và cách client xử lý. Request web đi qua proxy còn truy vấn phân giải đi local, kết quả kiểm tra sẽ hiện máy phân giải của mạng nội bộ.

Trình duyệt bật DNS bảo mật riêng

Chrome lẫn Firefox đều hỗ trợ DNS over HTTPS (DoH). Khi bật, truy vấn phân giải đi qua kết nối HTTPS mã hoá tới dịch vụ phân giải chỉ định, giúp giảm cơ hội mạng nội bộ quan sát trực tiếp các truy vấn. Nhưng mã hoá chưa chắc truy vấn đã đi qua proxy, cũng chưa chắc dịch vụ phân giải đã chọn phù hợp môi trường hiện tại. Firefox cho bật tắt riêng tính năng này, xem tài liệu chính thức của Mozilla.

Hệ thống, trình duyệt và client proxy mỗi bên một bộ

Trường hợp khó nhận nhất. Hệ thống dùng một máy phân giải, trình duyệt bật DoH đổi sang máy khác, client proxy lại cấu hình thêm một máy nữa; chồng lại, đường phân giải thành hộp đen. Chỉ nhìn trạng thái đã kết nối trên app proxy không kết luận được gì; phải xem trình duyệt đang chạy thực sự đi đường nào.

Khi đường phân giải rơi vào ISP nội bộ, truy vấn đi qua dịch vụ phân giải của ISP đó. Có thể đối chiếu với bài viết về nguyên lý ISP proxy và trường hợp áp dụng.

Cách kiểm tra rò rỉ DNS: bốn bước

Bài test vốn không phức tạp; điều quan trọng là có kỳ vọng trước khi test và có mốc đối chiếu sau khi test. Làm đủ bốn bước, kết luận mới vững.

Bước 1: ghi trước kết quả mong đợi. Trước khi test, ghi rõ ba việc: cổng xuất của proxy hiện tại thuộc khu vực nào, ai sẽ đảm nhận phân giải tên miền, trình duyệt đã bật DoH chưa. Không có kỳ vọng, nhìn kết quả cũng chẳng biết mà phán.

Bước 2: chạy test khi proxy đang bật. Dùng một trang hỗ trợ phát hiện rò rỉ DNS, ví dụ dnsleaktest.com, bấm bài test mở rộng (Extended test) để trang hiển thị thêm nhiều máy phân giải; hoặc dùng trang kiểm tra DNS của BrowserLeaks xem từng máy phân giải thuộc tổ chức nào. Ghi lại tên, tổ chức và khu vực của các máy phân giải.

Bước 3: đối chiếu kết quả với kỳ vọng. Kiểm tra các máy phân giải trong kết quả có khớp cấu hình hiện tại của hệ thống, trình duyệt và proxy không. Máy phân giải thuộc đúng dịch vụ DNS như kỳ vọng, lại không xuất hiện đường phân giải local ngoài dự kiến, bạn có thể tạm coi bài test đạt như mong đợi. Nếu gặp ISP nội bộ hoặc dịch vụ phân giải xa lạ, trước tiên hãy xác nhận nó có thực sự nằm ngoài cấu hình dự kiến; sau đó kiểm tra lần lượt cách client proxy xử lý DNS, DNS bảo mật của trình duyệt và thiết lập mạng của hệ thống. Đừng vội kết luận proxy đã lỗi. Một lần test chỉ phản ánh điều kiện tại thời điểm đó, không bảo đảm mọi request đều sạch vấn đề.

Bước 4: đổi một thiết lập rồi test lại một lần. Muốn chỉnh thì mỗi lần chỉ động một chỗ: cách xử lý DNS của client proxy, công tắc DoH của trình duyệt hay thiết lập mạng của hệ thống; đổi xong test lại để so sánh. Đổi nhiều chỗ cùng lúc, kết quả không cho biết chỗ nào tạo ra khác biệt.

Đọc kết quả kiểm tra thế nào

Cùng một kết quả, đọc đúng thành manh mối, đọc sai thành phán đoán nhầm. Năm kết quả thường gặp và cách xử lý tương ứng:

Kết quả kiểm traCách hiểuViệc cần làm tiếp
Xuất hiện máy phân giải của ISP nội bộCó thể lệch khỏi đường mong đợiĐối chiếu DNS hệ thống, proxy, nguồn gốc
Xuất hiện dịch vụ phân giải công cộng thứ baCó thể đúng cấu hình, có thể khôngKiểm tra DNS bảo mật trình duyệt, hệ thống
Xuất hiện nhiều máy phân giảiCó thể do dịch vụ, đường đi hoặc cơ chế testĐối chiếu tên, tổ chức, nguồn cấu hình
Kết quả giống trước và sau khi bật proxyChưa đủ căn cứ kết luận proxy vô dụngTest lại bằng công cụ khác, rà cấu hình DNS
Không trả về máy phân giải nàoTimeout, bị chặn hoặc giới hạn của công cụXác nhận mạng, test lại hoặc đổi công cụ

Còn một bẫy nữa: Anycast và node phân tán che khuất cổng xuất thực sự.

Minh hoạ năm loại kết quả kiểm tra DNS và hành động tương ứng

Rò rỉ DNS, rò rỉ WebRTC và vân tay trình duyệt khác nhau ra sao

Bốn bài kiểm tra nhắm bốn loại thông tin khác nhau; đạt một mục chưa nghĩa các mục khác cũng đạt. Đặt cạnh nhau, ranh giới hiện rõ nhất:

Mục kiểm traKiểm tra cái gìLiên quan proxy thế nào
Rò rỉ DNSTruy vấn tên miền đi qua máy phân giải nàoProxy chưa chắc tiếp quản hết truy vấn
Rò rỉ WebRTCĐịa chỉ mà WebRTC có thể để lộ ra ngoàiPhụ thuộc trình duyệt và định tuyến mạng
Vân tay trình duyệtCanvas, font, múi giờ và các đặc trưng khácĐổi IP proxy không tự đổi các đặc trưng này
Kiểm tra IP công khaiIP cổng xuất mà trang web nhìn thấyChỉ phản ánh cổng xuất của lần request này

DNS và WebRTC là cặp dễ nhầm nhất vì đều mang chữ rò rỉ. Nguyên lý kiểm tra và cách xử lý của hai bên khác hẳn nhau: cách kiểm tra rò rỉ WebRTC và thiết lập liên quan đã có bài riêng, ở đây không lặp lại. Rò rỉ IPv6 thuộc cùng họ, soi việc địa chỉ IPv6 có vòng qua proxy hay không; cách làm xem tại cách kiểm tra rò rỉ IPv6.

Bốn mục trên phản ánh thông tin khác nhau và không thay thế được nhau. Khi truy vấn môi trường proxy, nên xác nhận IP công khai trước, rồi tới DNS và WebRTC, cuối cùng rà vân tay và cấu hình môi trường; chọn mục nào theo đúng kịch bản thực tế của bạn.

Minh hoạ: IP, DNS, WebRTC và vân tay mỗi mục giữ một khúc

Dùng MostMate, xếp các bài kiểm tra này vào quy trình thế nào

Thứ tự đề xuất: cổng xuất trước, tiếp tới phân giải, rồi WebRTC, sau cùng xem cấu hình môi trường. Khi dùng MostMate để quản lý nhiều môi trường trình duyệt, bạn có thể tách bài kiểm tra kết nối proxy và bài test rò rỉ DNS ra làm hai bước.

Cấu hình proxy đứng đầu. Sau khi gắn proxy vào môi trường, dùng tính năng test proxy trong sản phẩm để xác nhận trạng thái kết nối, đồng thời đối chiếu loại giao thức (HTTP, HTTPS, SOCKS5, SSH) và thông tin xác thực. Lưu ý: test proxy đạt không thay thế được bài test rò rỉ DNS, vì đường đi thực của truy vấn DNS vẫn phụ thuộc client proxy, trình duyệt và hệ thống.

Mô tả giao diện gắn proxy và test proxy của MostMate

Sau đó, mở trang kiểm tra DNS trong môi trường đã gắn proxy đó, lặp lại bốn bước như trên, rồi xem máy phân giải thuộc về có đúng như kỳ vọng không.

Mục thứ hai là sự cô lập của chính môi trường. Trong kịch bản nhiều tài khoản, proxy, Cookie và tham số vân tay của từng môi trường phải độc lập với nhau, không mượn chừng; phạm vi cô lập cụ thể xem tại phạm vi và cấu hình cô lập môi trường trình duyệt. Gắn nhầm proxy hay dùng chung cấu hình, kết quả kiểm tra mất luôn giá trị đối chiếu. Cô lập giúp quản lý phiên và cấu hình khác nhau, nhưng không tự khiến đường DNS chạy đúng, cũng không thay được kiểm tra bên ngoài.

Mục thứ ba, ghi nhớ ranh giới: trình duyệt anti-detect lo việc sắp xếp môi trường gọn gàng, còn proxy có thực sự hoạt động và DNS có đi đúng đường mong đợi hay không vẫn phải xác minh bằng kiểm tra bên ngoài. Test đạt cũng chưa phải xong việc mãi; sau khi đổi cấu hình hay cập nhật hệ thống, nên test lại.

Câu hỏi thường gặp

Đã bật proxy mà bài test DNS hiện máy phân giải local, vậy proxy có lỗi không?

Chưa chắc. Proxy có thể chỉ tiếp quản request web, còn truy vấn phân giải do hệ thống hoặc trình duyệt tự xử lý. Kiểm tra lần lượt cách client proxy xử lý DNS và thiết lập DoH của trình duyệt, mỗi lần đổi một chỗ rồi test.

Rò rỉ DNS có làm lộ IP thật của tôi không?

Không thể coi là một. Rò rỉ DNS cho thấy đường đi của request phân giải tên miền; phần thông tin thực sự lộ ra phụ thuộc cấu hình mạng và kịch bản kiểm tra. IP công khai thật có được giấu hay không phải xác nhận bằng bài kiểm tra IP độc lập, còn đường phân giải DNS kiểm tra riêng.

Dùng trình duyệt anti-detect rồi, vẫn có thể gặp rò rỉ DNS?

Hoàn toàn có thể. Trình duyệt anti-detect quản lý việc cô lập môi trường và tham số vân tay; hành vi DNS phụ thuộc giao thức proxy cùng thiết lập hệ thống, trình duyệt, nên bài test không thể bỏ.

Bài test DNS đã đạt, còn cần kiểm tra gì nữa?

Còn hai mục: rò rỉ WebRTC và vân tay trình duyệt, mỗi mục dùng đúng công cụ của nó để xác minh. Khi tất cả đều đạt, phần kiểm tra tầng mạng của môi trường mới tính là trọn vẹn.

Lời kết

Giá trị của bài kiểm tra rò rỉ DNS không nằm ở nhãn đạt hay trượt, mà ở việc xác nhận request mạng của môi trường hiện tại có khớp kỳ vọng hay không. IP công khai, DNS, WebRTC và vân tay trình duyệt mỗi mục có cách kiểm riêng, không thể lấy kết quả mục này đắp thay phần xác minh của mục khác. Dù dùng trình duyệt anti-detect nào, bạn cũng nên kiểm tra lại sau mỗi lần đổi proxy hay cấu hình mạng.

Nếu bạn cần quản lý nhiều môi trường trình duyệt, hãy bắt đầu từ cách MostMate tổ chức cấu hình môi trường và quản lý proxy, rồi xác minh từng mục theo các bước trong bài. Muốn tầng proxy vững hơn, bạn có thể tải MostMate; bản miễn phí có hai môi trường, hãy chạy trọn quy trình kiểm tra trên môi trường đầu tiên trước.

MOSTMATE

Quản lý nhiều tài khoản an toàn, thật đơn giản

Bắt đầu với tài khoản đầu tiên và dùng MostMate để xây dựng hoạt động đa tài khoản an toàn, thông minh và hiệu quả hơn.

  • Hồ sơ độc lập. Danh tính nhất quán.
  • Tự động hóa bằng AI · Tình trạng tài khoản · Vận hành nhóm
Tải MostMate