宝塔面板设置cloudflare自选IP,并配置dns,设置15分钟自动更换新IP

因为github actions的不确定性,如果有条件的话话是自己准备一台vps来部署自选IP的脚本。

这篇文章还是利用cf2dns筛选出优质的Cloudflare IP(以接口方式提供15分钟更新一次),并使用域名服务商提供的API解析到不同线路以达到网站加速的效果(目前只完成DNSPod和阿里云DNS,后续如果有需求将会加入其他运营商的)

当然我们还是利用宝塔面板来实现这个功能,宝塔服务器面板,一键全能部署及管理,送你3188元礼包,点我领取https://www.bt.cn/?invite_code=MV9ub2NxdmI=

宝塔面板设置cloudflare自选IP,并配置dns,设置15分钟自动更换新IP

1、简介

1)项目:https://github.com/tmmtoo/cf2dns

2)之前讲过如何利用github actions来优选IP的教程:https://www.daniao.org/13406.html

2、准备

1)为了降低教程的难度,这里我们利用centos8来安装宝塔

2)宝塔面板实验版本,代码如下:

curl -sSO http://download.bt.cn/install/install_panel.sh && bash install_panel.sh

3、宝塔的环境设置

1)安装宝塔就不多讲了。

2)与其他Linux发行版不同,CentOS 8默认不安装Python,所以这里我们自己安装一个py3版本即可,如下:

dnf install python3

3)安装好后,设置软连接,如下:

ln -s /usr/bin/python3 /usr/bin/python

4)使用python -V检查,发现py3.6.8已经搞定

[root@daniao ~]# python -V
Python 3.6.8

5)安装pip,具体命令如下:

wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
pip -V

4、部署

1)宝塔的环境设置好后,现在开始部署,下载程序

git clone https://github.com/tmmtoo/cf2dns.git

2)这里默认是下载在root目录,进入到cf2dns目录后修改cf2dns.py中的SecretId、SecretKey、key,以及域名修改。修改好后是这样的。

#可以从https://shop.hostmonit.com获取
KEY = "McOoaeeeeeE"  #这里修改为自己的,需要买一个

#CM:移动 CU:联通 CT:电信
#修改需要更改的dnspod域名核子域名
DOMAINS = {
    "vps.com": {"@": ["CM","CU","CT"]}
}

#解析生效条数 免费的DNSPod相同线路最多支持2条解析
AFFECT_NUM = 2

#DNS服务商 如果使用DNSPod改为1 如果使用阿里云解析改成2
DNS_SERVER = 1

#解析生效时间,默认为600秒 如果不是DNS付费版用户 不要修改!!!
TTL = 600

#API 密钥
#腾讯云后台获取 https://console.cloud.tencent.com/cam/capi
#阿里云后台获取 https://help.aliyun.com/document_detail/53045.html?spm=a2c4g.11186623.2.11.2c6a2fbdh13O53  注意需要添加DNS控制权限 AliyunDNSFullAccess
SECRETID = 'AKID1te5JP444444444444444444444444444X'  #注意,这需要修改为自己的
SECRETKEY = 'zvfrrrrrrbIB55555555555555555555555I'    #注意,这需要修改为自己的

注意,

  • 需要登录腾讯云后台或者阿里云后台,获取 SecretId、SecretKey,如果使用阿里云DNS,注意需要添加DNS控制权限AliyunDNSFullAccess
  • 修改脚本中域名配置信息,可配置多个域名和多个子域名,注意选择DNS服务商
  • (可选)从商店购买KEY,当然也可以用脚本中自带的,区别是脚本中自带的KEY是历史优选的Cloudflare IP(也可以从这个网站查到IP的信息),而购买的KEY是15分钟内获取到的最新的Cloudflare IP。

3)安装运行脚本所需依赖

pip install -r requirements.txt

4)运行程序,如果能够正常运行可以选择cron定时执行(建议15分钟执行一次)

python cf2dns.py

5、宝塔计划任务执行程序

1)因为用宝塔来部署,所以还需要利用宝塔的计划任务来按时执行程序,推荐15分钟执行一次。打开宝塔的计划任务开始执行任务,具体执行脚本如下:

文章加密,密码获取,可加tg获取。

tg群:https://t.me/joinchat/SKct5jFnL_PUvCFr

进入tg群后,输入:宝塔cf2dns来了,会自动跳出密码。

输入密码查看隐藏内容


2)测试效果,看图:

宝塔面板设置cloudflare自选IP,并配置dns,设置15分钟自动更换新IP

dnspod看效果,看红框的时间即可,15分钟轮换一次。

宝塔面板设置cloudflare自选IP,并配置dns,设置15分钟自动更换新IP

6、最后

因为github actions的不确定性,建议有条件的童鞋还是用vps来部署,更为稳妥。以上教程,为了简化难度,用了centos8安装的宝塔来折腾,这里要注意下。

最后提醒下,15分钟更新一次IP,太奢侈了,建议2小时更新一次,用起来也很丝滑。


【AD】DMIT美国洛杉矶三网CN2 GIA/CMIN2补货,年付36.9美元起

【AD】美国洛杉矶CN2 VPS/香港CN2 VPS/日本CN2 VPS推荐,延迟低、稳定性高、免费备份_搬瓦工vps