Bỏ qua, tới nội dung chính
Esc

Cách kiểm tra proxy — IP, quốc gia, nhà mạng, tốc độ và rò rỉ DNS, WebRTC

Cài đặt và sử dụng 4 phút đọc

Trong bài này
  1. 01 Bước 1: proxy có hoạt động không?
  2. 02 Bước 2: quốc gia và nhà mạng
  3. 03 Bước 3: IP di động hay IP máy chủ?
  4. 04 Bước 4: đo độ trễ và tốc độ
  5. 05 Bước 5: rò rỉ DNS
  6. 06 Bước 6: rò rỉ WebRTC
  7. 07 Bước 7: múi giờ và ngôn ngữ của trình duyệt
  8. 08 Bảng kiểm tra nhanh

Proxy "chạy được" chưa có nghĩa là proxy đúng như bạn cần. Một proxy tốt phải ra đúng quốc gia, đúng loại mạng, đủ nhanh cho công việc, và không để lộ IP thật của bạn qua DNS hay WebRTC. Bài này đi qua từng bước kiểm tra, từ lệnh một dòng tới các trang kiểm tra rò rỉ, kèm cách đọc kết quả.

Bước 1: proxy có hoạt động không?

Cách nhanh nhất là gọi một trang chỉ trả về địa chỉ IP, đi qua proxy:

Terminal
curl -x "http://USER:PASS@HOST:PORT" https://api.ipify.org

Trên Windows, mở Command Prompt hoặc PowerShell và gõ curl.exe thay cho curl (trong PowerShell, curl là tên tắt của một lệnh khác).

  • In ra một địa chỉ IP khác IP nhà bạn: proxy hoạt động.
  • Báo lỗi (ví dụ 407, Failed to connect, Could not resolve proxy): xem ý nghĩa từng lỗi trong bài các lỗi proxy thường gặp.

Không quen dòng lệnh? Cài proxy vào trình duyệt theo hướng dẫn cài proxy rồi mở api.ipify.org — kết quả tương tự.

Bước 2: quốc gia và nhà mạng

Trang ipinfo.io trả về cả vị trí và chủ sở hữu của IP:

Terminal
curl -x "http://USER:PASS@HOST:PORT" https://ipinfo.io/json

Kết quả có dạng như sau (ví dụ minh hoạ, đã rút gọn; IP và số AS lấy từ dải dành cho tài liệu):

JSON
{
  "ip": "203.0.113.42",
  "city": "Singapore",
  "country": "SG",
  "org": "AS64500 Example Mobile Operator",
  "timezone": "Asia/Singapore"
}

Đọc kết quả thế nào:

  • country là mã quốc gia: SG là Singapore.
  • timezone là múi giờ của vị trí IP — sẽ dùng lại ở bước kiểm tra trình duyệt.
  • org là số AS và tên tổ chức sở hữu dải IP. Đây là chỗ cho biết IP thuộc nhà mạng hay máy chủ.
  • city với IP di động thường chỉ gần đúng: cơ sở dữ liệu vị trí ước đoán theo dải IP của nhà mạng. Với Singapore — một quốc gia thành phố — điều này gần như không quan trọng.

Các dịch vụ tra cứu IP khác nhau đôi khi cho kết quả hơi khác nhau. Nếu nền tảng bạn làm việc quan trọng, hãy thử thêm một trang tra cứu nữa.

Bước 3: IP di động hay IP máy chủ?

Với proxy 4G, phần org phải là một nhà mạng viễn thông, không phải một công ty hosting hay điện toán đám mây. Nếu bạn thấy tên các nhà cung cấp máy chủ hay dịch vụ đám mây, IP đó là IP datacenter, dù được bán dưới tên gì.

Lưu ý một điểm: nhiều nhà mạng vừa có mạng di động vừa có internet cố định trong cùng một số AS, nên tên nhà mạng cho biết IP thuộc nhà mạng, chưa chắc là mạng di động. Một số dịch vụ tra cứu IP có thêm nhãn "mobile" riêng. Khác biệt giữa các loại IP được giải thích trong bài so sánh proxy 4G, dân cư và datacenter.

Bước 4: đo độ trễ và tốc độ

curl có thể đo từng mốc thời gian của một request qua proxy:

Terminal
curl -x "http://USER:PASS@HOST:PORT" -o /dev/null -s -w "connect: %{time_connect}s\ntls: %{time_appconnect}s\nfirst byte: %{time_starttransfer}s\ntotal: %{time_total}s\n" https://www.google.com.sg/

Trên Windows, thay -o /dev/null bằng -o NUL. Các mốc tính từ lúc bắt đầu request:

  • connect — đã kết nối tới máy chủ proxy;
  • tls — đã bắt tay mã hoá xong với website, qua đường hầm của proxy;
  • first byte — website bắt đầu trả dữ liệu;
  • total — tải xong.

Muốn đo tốc độ tải, tải thử một file 25 MB qua proxy (lệnh này dùng 25 MB băng thông của gói):

Terminal
curl -x "http://USER:PASS@HOST:PORT" -o /dev/null -s -w "%{speed_download} bytes/s\n" "https://speed.cloudflare.com/__down?bytes=25000000"

Cách hiểu kết quả: proxy 4G có độ trễ cao hơn proxy datacenter — đó là bản chất của mạng di động. Thay vì nhìn một con số, hãy đo vài lần vào các thời điểm khác nhau và xem kết quả có ổn định không.

Bước 5: rò rỉ DNS

Rò rỉ DNS xảy ra khi máy bạn tự hỏi DNS của nhà mạng Việt Nam thay vì để proxy phân giải tên miền. Website vẫn thấy IP proxy, nhưng nhà mạng của bạn thấy bạn vào trang nào, và kết quả phân giải có thể không đúng như người dùng ở Singapore.

  • Trong code và cURL: dùng HTTP proxy, hoặc SOCKS5 dạng socks5h:// (chữ h để proxy tự phân giải DNS). Chi tiết ở bài SOCKS5 và HTTP proxy.
  • Trong trình duyệt: mở trang kiểm tra DNS của BrowserLeaks. Nếu danh sách máy chủ DNS có máy chủ của nhà mạng Việt Nam của bạn, DNS đang bị rò rỉ.

Bước 6: rò rỉ WebRTC

WebRTC là công nghệ gọi video, chat trong trình duyệt. Trên trình duyệt thông thường, WebRTC có thể làm lộ IP thật của bạn kể cả khi đã cài proxy.

Mở trang kiểm tra WebRTC của BrowserLeaks trong đúng trình duyệt hoặc hồ sơ dùng proxy. Trang không được hiện IP nhà bạn — chỉ được hiện IP proxy hoặc không có IP công khai nào. Nếu IP thật bị lộ, hãy dùng trình duyệt antidetect và đặt WebRTC ở chế độ thay thế hoặc ẩn IP — xem hướng dẫn gắn proxy vào trình duyệt antidetect.

Bước 7: múi giờ và ngôn ngữ của trình duyệt

IP ở Singapore nhưng trình duyệt báo múi giờ Việt Nam là một dấu hiệu không khớp dễ thấy: Singapore dùng UTC+8, Việt Nam dùng UTC+7. Mở công cụ cho nhà phát triển (phím F12), chọn tab Console và gõ:

JavaScript
Intl.DateTimeFormat().resolvedOptions().timeZone

Kết quả nên là "Asia/Singapore" — trùng với timezone ở bước 2. Gõ tiếp navigator.language để xem ngôn ngữ trình duyệt đang báo cho website.

Bảng kiểm tra nhanh

Kiểm tra Cách làm Kết quả mong muốn
Proxy hoạt động curl -x … https://api.ipify.org In ra IP của proxy
Quốc gia ipinfo.io country là SG
Loại IP ipinfo.io, mục org Tên nhà mạng, không phải công ty hosting
Độ trễ curl -w Ổn định qua nhiều lần đo
Rò rỉ DNS browserleaks.com/dns Không có DNS nhà mạng của bạn
Rò rỉ WebRTC browserleaks.com/webrtc Không hiện IP nhà bạn
Múi giờ Intl.DateTimeFormat() trong Console Asia/Singapore

Proxy qua hết các bước này là sẵn sàng cho công việc. Nếu dùng proxy 4G xoay IP, nhớ kiểm tra lại bước 1 và 2 mỗi khi đổi IP — cách đổi có trong bài proxy xoay là gì.