Chuyển đến nội dung
Proxy · geoip · WebRTC · SOCKS5

Proxy khớp với danh tính

Một IP dân cư ở Mỹ trên trình duyệt đặt múi giờ Europe/Amsterdam là thứ chỉ cần một dòng code để kiểm tra, và cũng là kiểu sai lệch rất dễ vô tình mắc phải. Đưa cho Clearcote một proxy và bật geoip, nó sẽ tra cứu IP đầu ra và đặt múi giờ, ngôn ngữ và địa chỉ WebRTC cho khớp, trước khi trang đầu tiên được tải.

Hỗ trợ proxy và geoip có ở mọi gói.

Một tùy chọn để mọi thứ khớp nhau

import { launch } from "clearcote";

const browser = await launch({
  fingerprint: "account-42",
  proxy: { server: "http://gateway:8080", username: "u", password: "p" },
  geoip: true, // timezone + languages + WebRTC follow the exit IP
});

Điểm nổi bật

geoip chỉ trong một tùy chọn

IP đầu ra được tra cứu trong cơ sở dữ liệu offline geoip-all-in-one, và múi giờ, ngôn ngữ chính, Accept-Language cùng địa chỉ WebRTC được đặt theo khu vực đó.

Một locale ở mọi nơi

Accept-Language, navigator.language, Intl.DateTimeFormat và toLocaleString theo cùng một ngôn ngữ, trong trang lẫn trong worker.

SOCKS5 có xác thực

Chromium gốc không thể xác thực với proxy SOCKS5. Bản build có giấy phép hiện thực handshake username và password (RFC 1929) ngay trong engine, nên không cần relay local. Truyền thông tin xác thực dưới dạng các trường riêng biệt, hoặc ngay trong địa chỉ proxy với SDK 0.31.1 trở lên.

WebRTC không rò rỉ

Mặc định WebRTC không thể gửi lưu lượng đi vòng qua proxy, nên địa chỉ của chính bạn được giữ kín. Khi bật geoip (hoặc webrtcIp), WebRTC sẽ báo cáo địa chỉ của proxy, như một trình duyệt thực sự đứng sau proxy đó. Ngay cả khi đó, bản build có giấy phép vẫn giữ lưu lượng WebRTC không đi qua kết nối của chính bạn; bản build mở thì không, nên một relay do trang chọn vẫn có thể thấy địa chỉ của bạn.

Vị trí địa lý khớp theo

--fingerprint-location ghim tọa độ vào khu vực của múi giờ, để Geolocation API và đồng hồ khớp nhau.

Hoặc khỏi phải mua proxy

Trình duyệt hosted đã kèm proxy dân cư, với khả năng chọn theo quốc gia, bang, thành phố và sticky session.

Vì sao vị trí phải khớp nhau

Vị trí xuất hiện ở nhiều nơi độc lập với nhau: địa chỉ IP, múi giờ, header ngôn ngữ, định dạng số và ngày tháng, WebRTC và, nếu được cấp quyền, geolocation. Bộ phát hiện không cần biết bạn ở đâu. Nó chỉ cần hai trong số đó mâu thuẫn nhau.

geoip lấy IP đầu ra làm nguồn chuẩn. Khi khởi chạy, SDK xác định địa chỉ đầu ra của proxy, tra cứu nó trong một cơ sở dữ liệu offline và đặt các giá trị còn lại cho khớp, nên ngay trang đầu tiên đã thấy một locale nhất quán.

Luôn kiểm tra IP đầu ra trước khi tin tưởng một phiên. Một proxy âm thầm hỏng theo kiểu fail-open sẽ gửi lưu lượng từ chính IP của bạn, và mọi biện pháp phòng ngừa khác đều trở nên vô nghĩa. Chỉ cần một request tới một dịch vụ phản hồi địa chỉ IP lúc khởi chạy là đủ.

Mọi người dùng nó để làm gì

Kết quả theo khu vực

Giá cả, kết quả tìm kiếm và tình trạng còn hàng đúng như khách truy cập ở quốc gia đó nhìn thấy.

Tài khoản gắn với một khu vực

Giữ IP, múi giờ và ngôn ngữ của một tài khoản giống nhau ở mọi phiên.

Kiểm tra quảng cáo và nội dung

Xem quảng cáo, trang hoặc ưu đãi hiển thị cho khách truy cập ở một thành phố cụ thể.

QA bản địa hóa

Kiểm tra ngày tháng, tiền tệ và bản dịch đúng như khách truy cập địa phương nhận được.

Clearcote được xây dựng cho quyền riêng tư, kiểm thử, nghiên cứu và tự động hóa hợp pháp. Bạn chịu trách nhiệm về cách mình sử dụng nó và về việc tuân thủ điều khoản của các trang web bạn truy cập.

Gói nào có tính năng này

Hỗ trợ proxy, tự động khớp múi giờ và ngôn ngữ, và WebRTC báo cáo địa chỉ của proxy có ở mọi gói. Việc giữ lưu lượng WebRTC không đi qua kết nối của chính bạn trong lúc đó, và SOCKS5 có xác thực, cần bản build có giấy phép (miễn phí với GitHub).

So sánh các gói

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

Chính xác thì geoip làm gì?

Nó xác định IP đầu ra của proxy, tra cứu IP đó trong cơ sở dữ liệu offline geoip-all-in-one, rồi đặt múi giờ, danh sách ngôn ngữ (Accept-Language, navigator.languages), vị trí địa lý và IP WebRTC phù hợp với khu vực đó. Nếu không xác định được khu vực, quá trình khởi chạy sẽ dừng với lỗi thay vì khởi động với đồng hồ và ngôn ngữ của chính máy bạn.

Clearcote có hỗ trợ proxy SOCKS5 có xác thực không?

Có, trên bản build có giấy phép. Truyền username và password dưới dạng các trường proxy riêng biệt, hoặc ngay trong địa chỉ (socks5://user:pass@host:port) với SDK 0.31.1 trở lên; các SDK cũ hơn làm rơi mất thông tin xác thực viết trong địa chỉ trước khi chúng tới được trình duyệt. Clearcote hiện thực xác thực username và password của SOCKS5 ngay trong engine, điều mà Chromium gốc không có, nên bạn không cần relay local.

WebRTC có làm lộ IP thật của tôi không?

Mặc định thì không. SDK cấu hình WebRTC để nó không thể gửi UDP ra ngoài proxy, nhờ đó địa chỉ của chính bạn được giữ kín. Với geoip (hoặc webrtcIp), WebRTC sẽ báo cáo địa chỉ của proxy, đúng như một trình duyệt đứng sau IP đó. Bản build có giấy phép vẫn không gửi bất kỳ lưu lượng WebRTC nào qua kết nối của chính bạn; bản build mở thì có gửi khi đã bật geoip, nên một relay do trang chọn có thể đọc được địa chỉ thật của bạn. Xem rò rỉ WebRTC là gì.

Những loại proxy nào dùng được?

Proxy HTTP và SOCKS5, có hoặc không có xác thực (xác thực SOCKS5 cần bản build có giấy phép). IP đầu ra dân cư hoặc di động khớp nhất với trình duyệt của người dùng phổ thông; trình duyệt hosted đã kèm sẵn IP đầu ra dân cư.

Có phải tự đặt múi giờ không?

Không, nếu dùng geoip. Nếu bạn muốn tự đặt, hãy truyền timezone và acceptLanguage (Python: accept_language), và Intl cùng toLocaleString cũng sẽ theo ngôn ngữ đó.

Tìm hiểu sâu hơn trong tài liệu

Tính năng liên quan

Dùng thử Clearcote

Thay thế drop-in cho Playwright & Puppeteer, nhất quán đến tận TLS handshake, với một bản build mã nguồn mở để bắt đầu.

Miễn phí cho một trình duyệt với GitHub. Không cần thẻ.