当我们做以下业务的时候,可能会需要大量代理IP:
- HTTP CC/DDOS网站
- 爬虫,突破反爬
- 基于IP判断用户的投票系统,刷票
- 玩pixelcanvas类型的像素画网站,用IP判断不同用户的
- ……
互联网上免费代理IP的网站很多,自建代理IP池的方法也很多。比如下面这个项目:
包括国内也有一些类似的项目。
但这些方式都有缺点,比如代理IP稳定性不可靠,需要后期二次手动校验;国外代理国内访问有困难;匿名性没有很好的保证等等。
今天介绍一种我摸索出来的方法,利用v2ray+Tor自建代理IP池。你需要有一台自己的VPS。
1. 在VPS上安装Tor命令行版本
debian/ubuntu可以运行命令:
|
|
安装好后,用nano或其他编辑器编辑/etc/tor/torrc
,进行如下编辑(部分配置项):
|
|
2. 在VPS上配置v2ray桥接到tor端口
请参考v2ray的官方文档,这里outbounds部分配置如下:
|
|
outbounds中配置了一个tag为my-tor的socks出口,其中加入刚才tor开的一堆端口。v2ray会以轮询的方式使用每个端口,这样就可以做到每个连接都用不同的IP。
routing部分配置如下:
|
|
然后自行配置一个inbound(这里不列出),我这里的配置是websocket-over-https
。关于如何配置inbound,可以参考v2ray白话文教程。也可以使用v2-ui。
3. 本地连接v2ray,测试可用性
本地我使用v2rayN连接VPS的v2ray,开启本地端口是10808。
我使用以下脚本进行测试:
|
|
这样就完成了。你可以增加tor开放socks端口的数量,也可以缩小NewCircuitPeriod
的数值,做到尽可能的每次访问都用一个全新的IP。
4. 其他贴士
4.1. VPS连v2ray速度太慢了?
尝试给选用基于HTTPS的v2ray inbound协议,套一层Cloudflare CDN。使用better-cloudflare-ip这个项目自选最快的cf节点。
4.2. 如何进行HTTP CC/DDOS攻击?
由于v2rayN开放的本地端口是socks协议,而很多CC/DDOS软件只支持HTTP代理。那么可以安装一个proxifier,把相应软件的流量强行导向v2rayN开放的本地socks端口。
4.3. 有什么优点?
- IP几乎是无限的、并且是高可用的
- 匿名性非常高
4.4. 有什么缺点?
- 有些网站禁止tor节点的IP访问
- 速度不如国内的代理IP快
- 请仔细查看你VPS提供商的ToS,需要不禁止你在机子上跑tor
本文仅提供技术思路,请勿用于非法业务,我对此不负责任。