Proxy dân dụng có rất nhiều ứng dụng hữu ích, chẳng hạn như quét web, nghiên cứu trực tuyến, bỏ qua các giới hạn địa lý và duyệt web ẩn danh. Tuy nhiên, chúng có thể đắt tiền, với một số tính phí hơn 100 đô la một tháng để truy cập vào hơn 10 GB dữ liệu.
Năm ngoái, khi tôi đi du lịch đến Ấn Độ và các khu vực khác của Đông Nam Á, tôi muốn có một cách đáng tin cậy cho phép tôi truy cập nội dung trên các dịch vụ đăng ký khác nhau như Netflix và Amazon Prime mà không bị giới hạn địa lý. Tôi muốn làm điều này trong khi
Tôi đã khám phá ra giải pháp bằng cách tạo proxy dân cư của riêng mình trên máy tính để bàn tại nhà ở Hoa Kỳ.
Bằng cách thiết lập VPN ngang hàng (P2P) và kết nối máy tính xách tay và máy tính để bàn của tôi với nó, tôi có thể định tuyến lưu lượng truy cập từ máy tính xách tay của mình ở Ấn Độ đến máy tính để bàn của tôi ở Hoa Kỳ, sau đó chuyển tiếp các yêu cầu này tới www/public internet trước khi trả lại phản hồi từ mạng gia đình của tôi.
Tất cả điều này mà không cần phải trải qua những rắc rối khi thiết lập cấu hình chuyển tiếp kết nối trong bộ định tuyến tại nhà của tôi.
Peer-to-peer (P2P) là một mô hình kiến trúc dành cho VPN được sử dụng để tạo môi trường chia sẻ an toàn cho người dùng. VPN dựa trên P2P khác với mô hình trung tâm và nan hoa tiêu chuẩn ở chỗ không định tuyến tất cả lưu lượng truy cập thông qua máy chủ trung tâm, tránh tắc nghẽn. Điều này cải thiện tính bảo mật và cho phép mở rộng quy mô hiệu quả hơn bằng cách thêm các nút mà không làm quá tải mạng. Ngoài ra, các kết nối trong VPN P2P sử dụng đường dẫn nhanh nhất, giảm độ trễ.
Có sẵn nhiều giải pháp P2P VPN nguồn mở, freemium và trả phí. Tinc là một trong những VPN nguồn mở phổ biến.
Ngăn xếp mạng bao gồm các thành phần sau:
Máy tính để bàn tại nhà (Mỹ)
Máy tính xách tay của tôi (Bên ngoài Hoa Kỳ)
P2P vpn daemon chạy trên cả hai máy thông qua cùng một tài khoản
Máy chủ proxy http chạy trên máy tính để bàn
Sơ đồ bên dưới mô tả luồng thông tin để truy xuất một trang web công cộng từ máy tính xách tay của tôi bên ngoài Hoa Kỳ.
Tôi muốn có một VPN P2P dễ thiết lập và yêu cầu cấu hình gần như bằng không. Tôi đã kết thúc việc sử dụng tailscale. Các bước bên dưới hầu hết là chung chung cho bất kỳ VPN nào nhưng bạn có thể thấy bước này phù hợp nhất nếu sử dụng thang đo đuôi.
Thiết lập ứng dụng khách vpn trên máy tính để bàn và máy tính xách tay :
Tải xuống và cài đặt máy khách VPN trên máy tính để bàn và máy tính xách tay.
Nếu sử dụng VPN không cấu hình, hãy đăng ký tài khoản của bạn với vpn và đăng nhập trên cả hai máy bằng cùng một tài khoản
Thiết lập máy chủ proxy http chuyển tiếp trên máy tính để bàn :
Bạn có thể sử dụng bất kỳ máy chủ proxy nguồn mở nào. Tôi đã sử dụng https://github.com/abhinavsingh/proxy.py vì nó dễ cài đặt. Tôi đã chạy nó trong một container docker. Hình ảnh docker cho proxy này có sẵn trên docker hub. Để chạy nó trong vùng chứa docker, bạn có thể thực hiện lệnh này
docker run -it -p 8899:8899 --rm abhinavsingh/proxy.py:latest
Trong lệnh trên, máy chủ proxy đang lắng nghe trên cổng 8899. Điều này sẽ hữu ích khi chúng tôi chỉ định url của máy chủ proxy trong các ứng dụng trong máy tính xách tay
Xác định địa chỉ ip của máy tính để bàn trong mạng VPN : Sau khi cài đặt và đăng nhập vào tài khoản VPN của bạn, hãy tìm ra địa chỉ ip của máy tính để bàn sẽ được máy tính xách tay sử dụng để chuyển tiếp các yêu cầu http của nó.
Đối với điều này, bạn có thể liệt kê các địa chỉ IP cho tất cả các giao diện mạng trên máy tính để bàn. Sau đó, xác định địa chỉ ip cho một giao diện có tên bắt đầu bằng tên của máy khách VPN của bạn, đối với trường hợp của tôi, nó bắt đầu bằng “tailscale”.
Tôi đã sử dụng lệnh ip
trên thiết bị đầu cuối của máy linux để xác định địa chỉ ip
$ ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever …. 4: tailscale0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1280 qdisc fq_codel state UNKNOWN group default qlen 500 link/none inet 100.113.xxx.xx/32 scope global tailscale0 valid_lft forever preferred_lft forever …
Tại đây, tôi có thể tìm thấy địa chỉ IP của máy tính để bàn trong mạng quy mô cục bộ của mình trong giao diện mạng tailscale0
: 100.113.xxx.xx
Sử dụng địa chỉ của máy chủ proxy trên máy tính xách tay để truy cập web công cộng:
Bây giờ chúng ta đã biết địa chỉ IP của máy tính để bàn (hãy gọi nó $ip_desktop
) và số cổng cho máy chủ proxy http trên máy tính để bàn (hãy gọi nó $proxy_port
), chúng ta có thể chuyển tiếp tất cả lưu lượng mạng từ máy tính xách tay qua địa chỉ proxy http://$ip_desktop:$proxy_port
.
Ví dụ: bạn có thể gửi yêu cầu cuộn tròn tới example.com từ máy tính xách tay qua máy tính để bàn như
curl --proxy "http://$ip_desktop:$proxy_port" "https://example.com"
Các hướng dẫn ở trên trình bày cách tạo máy chủ proxy dân dụng miễn phí khi đi du lịch bằng máy tính dự phòng ở nhà. Giờ đây, bạn có thể sử dụng địa chỉ proxy này trên máy tính xách tay cá nhân của mình theo bất kỳ cách nào sau đây:
Tôi đã chọn 2. và chuyển tiếp tất cả các yêu cầu http từ máy tính xách tay của tôi sang máy tính để bàn. Tôi đã sử dụng thiết lập này trong hơn hai tháng mà không có bất kỳ thời gian ngừng hoạt động đáng chú ý nào.
Trong bài viết này, chúng tôi đã giới thiệu cách thiết lập proxy dân cư cá nhân bằng cách sử dụng
Tùy thuộc vào lựa chọn VPN, toàn bộ thiết lập có thể được thực hiện mà không mất thêm bất kỳ chi phí nào, giả sử bạn đã sở hữu nhiều máy tính. Sử dụng proxy dân cư này, sau đó bạn có thể truy cập internet ẩn danh mà không có bất kỳ giới hạn địa lý nào do vị trí thực tế hiện tại của bạn.