DNS leak là gì và cách khắc phục khi dùng proxy

Cập nhật:

DNS leak (rò rỉ DNS) là khi máy bạn tự hỏi máy chủ DNS của nhà mạng để đổi tên miền thành địa chỉ IP, trong khi lưu lượng web lại đi qua proxy. Kết quả là website và các bên trung gian có thể thấy một yêu cầu DNS từ mạng Việt Nam đi kèm một kết nối từ IP Mỹ, một sự mâu thuẫn dễ nhận ra. Với proxy HTTP cấu hình đúng trong trình duyệt, việc phân giải tên miền thường do phía proxy đảm nhận nên ít khi rò rỉ; rò rỉ hay xảy ra ở ứng dụng không dùng proxy, công cụ tự phân giải trước khi kết nối, hoặc cấu hình hệ thống không đầy đủ. Bài này giải thích cơ chế, cách kiểm tra và cách khắc phục cho từng trường hợp.

Proxy riêng, IP cố định theo quốc gia

DNS là gì và vì sao có thể rò rỉ

Mỗi khi bạn mở một trang web, máy cần biết tên miền đó tương ứng với IP nào. Việc tra cứu này gọi là phân giải DNS, do một máy chủ DNS (resolver) thực hiện, thường là resolver của nhà mạng hoặc một dịch vụ DNS công cộng bạn đã cài.

Resolver nhìn thấy bạn đang tìm tên miền nào, và máy chủ DNS của website nhìn thấy resolver nào đang hỏi. Nếu bạn dùng proxy để kết nối từ một quốc gia khác nhưng DNS vẫn đi qua nhà mạng ở nhà, hai mảnh thông tin này không khớp nhau. Đó là DNS leak.

Proxy HTTP xử lý DNS thế nào

Khi trình duyệt dùng proxy HTTP/HTTPS, nó gửi cho proxy tên miền đầy đủ, ví dụ lệnh CONNECT example.com:443. Máy chủ proxy tự phân giải tên miền rồi mở kết nối. Vì vậy, với các yêu cầu đi qua proxy, máy bạn không cần hỏi DNS nhà mạng.

Điều này khác với VPN, nơi toàn bộ lưu lượng của máy được đưa qua đường hầm và DNS phải được cấu hình riêng; khác biệt giữa hai công nghệ có trong bài proxy và VPN. Nó cũng khác với một số kiểu kết nối khác, nơi công cụ có thể chọn tự phân giải tên miền trên máy rồi chỉ gửi IP cho proxy.

Tình huốngAi phân giải DNSNguy cơ rò rỉ
Trình duyệt cấu hình proxy HTTP đúngMáy chủ proxyThấp
Ứng dụng bỏ qua proxy hệ thốngDNS nhà mạng của bạnCao, vì cả lưu lượng cũng không qua proxy
Script tự tra IP rồi mới kết nối qua proxyDNS nhà mạng của bạnTrung bình
Proxifier với tuỳ chọn phân giải qua proxyMáy chủ proxyThấp
VPN cấu hình thiếu DNSDNS nhà mạng của bạnCao

Cách kiểm tra DNS leak

  • Bước 1, xác nhận IP: mở trang kiểm tra IP của tôi trong đúng trình duyệt hoặc profile, chắc rằng IP hiển thị là IP proxy.
  • Bước 2, chạy test DNS: mở một trang kiểm tra DNS leak như dnsleaktest.com hoặc mục DNS của browserleaks.com, chọn kiểm tra mở rộng.
  • Bước 3, đọc danh sách resolver: trang sẽ liệt kê các máy chủ DNS đã hỏi thay bạn, kèm tên tổ chức và quốc gia.
  • Bước 4, so sánh: nếu thấy resolver của nhà mạng ở nhà bạn, đó là rò rỉ. Nếu chỉ thấy resolver gắn với phía proxy hoặc một dịch vụ DNS công cộng lớn, thường là không rò rỉ.
  • Bước 5, kiểm tra cả ứng dụng: với app không phải trình duyệt, kiểm tra xem app có thực sự dùng proxy không trước khi bàn đến DNS. Bài proxy chạy trên trình duyệt nhưng không chạy trên app giải thích nguyên nhân.

Đọc kết quả đúng: resolver khác nước chưa chắc là rò rỉ

Nhiều người hoảng khi thấy proxy Nhật nhưng resolver lại ở Singapore hoặc của một dịch vụ DNS công cộng. Thực ra máy chủ proxy cũng phải dùng một resolver nào đó, và resolver ấy có thể đặt ở nước khác hoặc là dịch vụ anycast toàn cầu. Đó là đặc điểm của hạ tầng proxy, không phải dữ liệu từ máy bạn bị lộ.

Dấu hiệu rò rỉ thật là sự xuất hiện của resolver nhà mạng bạn đang dùng ở nhà hoặc văn phòng. Nếu thấy, nghĩa là ít nhất một phần truy vấn đang đi thẳng từ máy bạn ra, không qua proxy.

Cách khắc phục DNS leak

  • Cấu hình proxy ngay trong trình duyệt hoặc profile antidetect, thay vì dựa vào proxy hệ thống. Hướng dẫn cho từng công cụ nằm trong mục cài đặt proxy, ví dụ Chrome hoặc Firefox.
  • Với ứng dụng không hỗ trợ proxy, dùng Proxifier và bật tuỳ chọn phân giải tên miền qua proxy trong phần Name Resolution.
  • Trong code, truyền tên miền cho proxy thay vì tự tra IP trước. Ví dụ curl -x http://user:pass@ip:port https://example.com để proxy phân giải; tránh gọi hàm tra DNS rồi kết nối tới IP.
  • Tắt tiện ích, phần mềm tự đổi DNS mà bạn không cần, vì chúng có thể gửi truy vấn ngoài đường proxy.
  • Kiểm tra lại sau mỗi thay đổi bằng trang test DNS và công cụ test WebRTC leak, vì WebRTC là nguồn lộ IP phổ biến hơn DNS.

DNS leak có quan trọng với bạn không

Với việc xem kết quả tìm kiếm theo quốc gia hay cào dữ liệu công khai, DNS leak hiếm khi làm sai kết quả, vì website chủ yếu nhìn IP kết nối. Với tài khoản cần đăng nhập lâu dài, nên loại bỏ mọi mâu thuẫn có thể kiểm soát, DNS là một trong số đó. Danh sách đầy đủ các tín hiệu nằm trong bài website phát hiện proxy như thế nào.

Cũng cần nhớ rằng proxy không mã hoá thêm lưu lượng và không thay thế công cụ bảo mật. Proxy giúp kết nối từ đúng quốc gia bằng một IP cố định; mọi thứ còn lại vẫn cần cấu hình đúng.

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

Dùng proxy HTTP có bị DNS leak không?

Khi trình duyệt cấu hình proxy HTTP đúng, máy chủ proxy phân giải tên miền nên rò rỉ ít xảy ra. Rò rỉ thường đến từ ứng dụng không dùng proxy hoặc script tự phân giải trước.

Test DNS hiện resolver ở nước khác với proxy, có sao không?

Thường là không. Đó là resolver mà máy chủ proxy sử dụng. Chỉ đáng lo khi thấy resolver của nhà mạng bạn đang dùng.

DNS leak và WebRTC leak khác nhau thế nào?

DNS leak lộ việc bạn tra tên miền qua DNS nhà mạng. WebRTC leak lộ trực tiếp địa chỉ IP thật qua kết nối UDP của trình duyệt. WebRTC leak thường nghiêm trọng hơn.

Đổi DNS sang dịch vụ công cộng có hết rò rỉ không?

Không hẳn. Nếu truy vấn vẫn đi từ máy bạn, resolver công cộng vẫn thấy IP thật của bạn. Cách đúng là để phía proxy phân giải tên miền.

Proxy có mã hoá DNS không?

Proxy không mã hoá thêm lưu lượng. Nội dung HTTPS vẫn được mã hoá bởi chính website, còn việc phân giải tên miền diễn ra ở phía máy chủ proxy.

Proxy riêng, IP cố định theo quốc gia

HTTP/HTTPS, xác thực user và mật khẩu, định dạng ip:port:user:pass. IPv4 riêng ở 7 nước, ISP tĩnh ở Việt Nam và Mỹ.

Xem bảng giá

Bài viết liên quan

Kiến thức proxy
WebRTC leak là gì và cách tắt trên trình duyệt, antidetect
WebRTC leak là khi trình duyệt để lộ IP thật dù đã dùng proxy. Cách kiểm tra WebRTC leak và tắt trên Chrome, Firefox, Edge và trình duyệt antidetect, từng bước.
Kiến thức proxy
Proxy và VPN: khác nhau ở đâu, khi nào dùng loại nào
Proxy và VPN khác nhau ở phạm vi, mã hóa, DNS và số IP dùng cùng lúc. Bảng so sánh, khi nào dùng loại nào và cách tự kiểm tra IP bạn đang dùng.
Cài đặt proxy
Cách cài đặt và tạo Rule gắn proxy cho từng phần mềm trên Proxifier
Hướng dẫn cấu hình proxy HTTPS trong Proxifier trên Windows và macOS. Tạo Proxification Rules cho Zalo PC, giả lập LDPlayer và game. Xem từng bước.
Công cụ miễn phí
Kiểm tra rò rỉ WebRTC (So sánh IP HTTP Proxy và IP UDP STUN)
Công cụ kiểm tra rò rỉ WebRTC (STUN UDP) miễn phí. So sánh địa chỉ IP HTTP Proxy với IP WebRTC để đảm bảo trình duyệt không làm lộ IP mạng thật của bạn.
Sản phẩm
Proxy tĩnh (IP tĩnh dân cư ISP) Việt Nam & Mỹ
Mua proxy tĩnh ISP dân cư tại Mỹ và Việt Nam: IP đăng ký nhà mạng dân dụng, mỗi IP chỉ một khách dùng, băng thông không giới hạn. Xem giá và mua ngay.
Sản phẩm
Proxy IPv4 datacenter riêng
Mua, thuê proxy IPv4 datacenter riêng tại Mỹ, Việt Nam, Nhật Bản, Hàn Quốc, Singapore, Anh, Hồng Kông. HTTP(S), băng thông không giới hạn, kích hoạt tự động.
ISP · vietnam
Proxy ISP tĩnh Việt Nam: IP mạng gia đình cho các tài khoản giá trị nhất của bạn
Proxy dân cư tĩnh Việt Nam (ISP tĩnh): proxy IP tĩnh từ nhà mạng dân cư cho shop Shopee chính, TikTok Shop, tài khoản quảng cáo Facebook và Zalo OA.
IPV4 · united states
Proxy IPv4 riêng Mỹ: IP datacenter Hoa Kỳ nhanh, dùng riêng và ổn định
Thuê proxy IPv4 Mỹ dùng riêng cho cào dữ liệu, theo dõi thứ hạng, duyệt quảng cáo và nghiên cứu Amazon. IP tĩnh, 1 người 1 IP, băng thông không giới hạn.