└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # v2ray-cf 2 | # v2ray套CF无域名加速的小白教程 3 | ### 参考资料: 4 | #### llmwxt的[小白教程]CF Workers实现直接套CF加速。https://www.hostloc.com/thread-781847-1-1.html 5 | #### CCChieh的IBMYes教程。https://github.com/CCChieh/IBMYes 6 | 7 | ### 第一步:v2ray脚本,端口80的websocket,不要TLS。不能用随机端口。 8 | ### 第二步:在Cloudflare中找到Workers(登录后首页右边),取名.workers.dev之后就创建Worker,左边脚本全选改为Josephus的不要证书,没域名代码。 9 | ``` 10 | addEventListener( 11 | 'fetch',event => { 12 | let url=new URL(event.request.url); 13 | url.hostname='111.111.111.111.nip.io'; 14 | if(url.protocol == 'https:') { 15 | url.protocol='http:' 16 | } 17 | let request=new Request(url,event.request); 18 | if(request.headers.has("Origin")) { 19 | request.headers.delete("Origin"); 20 | } 21 | event.respondWith( 22 | fetch(request) 23 | ) 24 | } 25 | ) 26 | ``` 27 | 修改url.hostname后面的ip为服务器的地址,.nip.io要留着,那个是一个公共项目,可以把ip转成域名。 28 | .xip.io不能访问,修改为.nip.io,备用sslip.io 29 | 30 | #### 点击中间HTTP下面GET右边按钮send发送,测试几次是否出现400 Bad Request,出现则成功,点击保存并部署(不能是502 Bad Gateway或是其它)(用原先不用.nip.io的会出现502) 31 | ![image1](https://github.com/ccchieh/IBMYes/raw/master/img/README/image-20200615214543839.png) 32 | 代码不同,右边相同 33 | 34 | ### 第三步:客户端地址换为改名.取名.workers.dev,用工具找CF自选ip,看IBMYes教程的设置,客户端把地址换成自选ip,伪装域名换成cloudflare的workers的域名。 35 | ![去v2的客户端中修改地址](https://github.com/ccchieh/IBMYes/blob/master/img/README/image-20200615215120033.png) 36 | 现在已经使用了cloudflare的代理 37 | 在客户端把地址换成ip,伪装域名换成我们cloudflare的workers的域名即可 38 | ![image](https://github.com/ccchieh/IBMYes/blob/master/img/README/image-20200615215820188.png) 39 | 40 | ### 来自suixin from suixin 41 | ### 2021-5-1 xip.io失效,重写 修改为.nip.io,备用sslip.io 42 | #### 疑问:没有域名可以开TLS吗?(有TLS的用随机端口,可以443) 43 | 44 | #### 2022-5-15 更新 45 | ## Cloudflare无域名加速失效 46 | ### workers.dev被全面dns污染,被sni阻断,无法直连*.workers.dev 47 | 48 | #### 需要改用Workers自定义域名 49 | 进入DNS选项,解析CNAME你的域名到Workers,打开小云朵 50 | 配置Workers路由 51 | 添加路由,域名要填:你的域名/* 52 | 53 | 想要自选 IP,那么只需要在添加子域名记录的时候,不开启代理(橙色 ☁),直接指向自选 IP 即可。 54 | 55 | 原IBMYes的Workers代码 56 | ``` 57 | addEventListener( 58 | "fetch",event => { 59 | let url=new URL(event.request.url); 60 | url.hostname="cf.cloud"; 61 | let request=new Request(url,event.request); 62 | event. respondWith( 63 | fetch(request) 64 | ) 65 | } 66 | ) 67 | ``` 68 | 修改第四行为你的域名 69 | 70 | --------------------------------------------------------------------------------