Cách kiểm tra proxy — IP, quốc gia, nhà mạng, tốc độ và rò rỉ DNS, WebRTC
Trong bài này
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:
curl -x "http://USER:PASS@HOST:PORT" https://api.ipify.orgTrê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:
curl -x "http://USER:PASS@HOST:PORT" https://ipinfo.io/jsonKế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):
{
"ip": "203.0.113.42",
"city": "Singapore",
"country": "SG",
"org": "AS64500 Example Mobile Operator",
"timezone": "Asia/Singapore"
}Đọc kết quả thế nào:
countrylà mã quốc gia:SGlà Singapore.timezonelà múi giờ của vị trí IP — sẽ dùng lại ở bước kiểm tra trình duyệt.orglà 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ủ.cityvớ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:
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):
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õ:
Intl.DateTimeFormat().resolvedOptions().timeZoneKế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ì.