开始之前
其实个人使用这个项目已经有一段时间了,最开始也在TG频道发了该项目的链接。之所以一直没有写教程是因为:
- 个人觉得原项目作者写的教程已经属于非常详细的图文教程了
- 这种类型的项目滥用多了,肯定会黄或者限制
原项目作者教程当中有好几处踩坑点,但是这也正好提高了纯小白的门槛,可以稍微减少滥用的可能性。但是鉴于既然要写教程了,就把自己使用的已排完所有坑的教程发出来。
因原作者教程已经非常详细了,本人大部分图片直接套用原作者的图片「懒癌警告.jpg」
创建Cloud Foundry Lite App
登录后点击右侧 创建资源,选择Cloud Foundry,创建Public Applications
区域选择Dallas,配置选择 Lite Apps中的任意一个(64MB/128MB/256MB)
Select a runtime选择Go、Python等即可,之后填好App Name,点击创建
注意上面的就是你后面要填的APP容器名称。
1. 坑点一:账户注册不上?自行解决,账户都不会注册的话,没人能帮你了,本人使用Gmail
2. 坑点二:没有免费资源?自己检查是否选择的是达拉斯,是否选择的是Lite
3. 坑点三:App无法启动?不用硬刚原作者的Go环境,随便选个能启动的就行
部署V2ray
创建完成后,找到我们的Lite App点击右上角的IBM Cloud Shell,并依次输入以下命令:
# **一定要注意观察Cloud Shell的右上角Location位置,一定要选择Dallas,否则会报错(有时候Shell会自动跑到其它区域)
git clone https://github.com/badafans/v2ray-cloudfoundry.git
# 进入目录
cd v2ray-cloudfoundry/v2ray
# 更改权限
chmod +x *
# 修改默认UUID (这步可以跳过,但是强烈建议不要使用公共默认UUID,可以使用下面的网址生成)
nano config.json
# 返回上一目录
cd ..
# 修改manifest文件(可以参考以下示例)
nano manifest.yml
# 运行**
ibmcloud target --cf
ibmcloud cf push
# 等待Cloud Foundry重启完成
1. 坑点四:提示Could not get Cloud Foundry instances: Neither a Cloud Foundry public instance nor a Cloud Foundry enterprise environment was found. 自行检查Shell右上角的位置是否处于Dallas,很多时候会被分配到其它区域如Tokyo
2. 坑点五:原项目作者程序搭建的V2程序会默认使用同一个公共的UUID,使用我这里的可以自定义
自动生成UUID
打开下面的网站,之后直接复制随机生成的UUID即可
修改manifest文件
applications:
- path: .
name: GetStartedGo//这里改成你的容器的名称
random-route: true
memory: 128M//这里改成你的容器的内存
利用Github Actions每周重启IBM Cloud Fonudray
由于免费的Lite Apps如果10天没有操作就会自动关机,所以我们需要十天内自动重启一次,防止其自动关机。
我们重新点击IBM Cloud Shell,执行以下命令
ibmcloud login
# 输入邮箱及密码,之后记录下对应区域
#1. au-syd
#2. in-che
#3. jp-tok
#4. kr-seo
#5. eu-de
#6. eu-gb
#7. us-south
#8. us-east
我们这里是us-south,那么我的区域编号是7
之后我们输入 ibmcloud resource groups
获取 RESOURSE_ID
我们回到项目地址:https://github.com/CCChieh/IBMYes
点击Fork之后选择Settings,在左侧栏选择Secrets,分别创建以下四个Secrets
IBM_ACCOUNT // IBM Cloud的登录邮箱和密码(邮箱和密码中间换行 ,其他的不需要换行)
IBM_APP_NAME // 应用的名称
REGION_NUM // 区域编码
RESOURSE_ID // 资源组ID
之后点击上方Tab中的Actions,在这里你就会看到有个IBM Cloud Auto Restart在执行。
如果没有看见Action的话到自己仓库的/.github/workflows/ibm.yml,编辑下,随意增添个空行然后commit下
第一次可能因为secret没添加导致workflow执行失败,只需要点下,找到 Re-run jobs重新执行一次即可,至此自动重启已经ok了
使用Cloudflare高速中转
登录Cloudflare官网:https://www.cloudflare.com/
登陆后右侧点击Workers并创建一个新的Worker,并复制以下代码
# 修改第四行为你的应用的域名
addEventListener(
"fetch",event => {
let url=new URL(event.request.url);
url.hostname="需要反代的 V2Ray ws 服务器地址";
let request=new Request(url,event.request);
event. respondWith(
fetch(request)
)
}
)
点击发送,测试是否出现Bad Request,出现则成功,点击保存并部署。这里会给一个网址," *.workers.dev
",这就是你的cloudflare中转后的域名。
之后我们去对应的客户端中修改服务器地址为中转后的域名
筛选Cloudflare高速节点
下载 https://github.com/CCChieh/IBMYes 项目到自己的电脑
打开项目下的fping-msys2.0目录运行自动查找最优CF节点-懒人专用.bat
这里假设我获取的最优ip是10x.xx.xxx.xx
在客户端把服务器地址换成ip,伪装域名换成我们cloudflare的workers的域名即可
1. 坑点六:如果win10运行脚本闪退,使用任意自己的文本软件打开脚本,复制里面的所有内容,重新新建文本,另存为bat文件,并且选择ANSI编码格式。
Clash配置文件拟写
- name: "IBM"
type: vmess
server: 你的最优ip
port: 8080
uuid: 你的随机UUID
alterId: 64
cipher: auto
network: ws
ws-headers:
host: 你的workers地址(不要带https://)