Coder Social home page Coder Social logo

cf2dns's Introduction

功能介绍

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

详细的使用场景请移步我的小站

适用人群

  1. 小站长,网站经常被打或网站放置在国外需要稳定且速度相对快的CDN
  2. 服务器在国外但是想建站的小伙伴
  3. 科学上网加速,拯救移动线路(未测试)

使用方法

必要条件:

★ Cloudflare自选IP并已接入到DNSPod或阿里云DNS,不知道怎么自选IP可以查看这个教程

★ Python3、pip环境

方法一:GitHub Actions 运行(推荐)

  1. 登录腾讯云后台或者阿里云后台,获取 SecretId、SecretKey,如果使用阿里云DNS,注意需要添加DNS控制权限AliyunDNSFullAccess

  2. Fork本项目到自己的仓库fork.png

  3. 进入第二步中Fork的项目,点击Settings->Secrets-New secret,分别是DOMAINS,KEY,SECRETID,SECRETKEY。

    • DOMAINS 需改域名信息,填写时注意不要有换行 例如:{"hostmonit.com": {"@": ["CM","CU","CT"], "shop": ["CM", "CU", "CT"], "stock": ["CM","CU","CT"]},"4096.me": {"@": ["CM","CU","CT"], "vv":["CM","CU","CT"]}}
    • KEY API密钥,从商店购买KEY,也可以使用这个KEY o1zrmHAF ,区别是 o1zrmHAF 是历史优选的Cloudflare IP(也可以从这个网站查到IP的信息),而购买的KEY是15分钟内获取到的对各运营商速度最优的的Cloudflare IP
    • SECRETID 第一部中从腾讯云后台或者阿里云后台,获取到的 SECRETID
    • SECRETKEY 第一部中从腾讯云后台或者阿里云后台,获取到的 SECRETKEY

    secret.png

  4. 修改您项目中的 cf2dns_actions.py文件中的AFFECT_NUMDNS_SERVER参数,继续修改.github/workflows/run.yml 文件,定时执行的时长(建议15分钟执行一次),最后点击 start commit 提交即可在Actions中的build查看到执行情况,如果看到 cf2dns 执行日志中有 CHANGE DNS SUCCESS 详情输出,即表示运行成功。需要注意观察下次定时是否能正确运行,有时候GitHub Actions 挺抽风的

    modify.png

    commit.png

    build.png

方法二:在自己的VPS或电脑中运行

  1. 安装运行脚本所需依赖
pip install -r requirements.txt
  1. 登录腾讯云后台或者阿里云后台,获取 SecretId、SecretKey,如果使用阿里云DNS,注意需要添加DNS控制权限AliyunDNSFullAccess

  2. 将脚本下载到本地修改cf2dns.py中的SecretId、SecretKey

  3. 修改脚本中域名配置信息,可配置多个域名和多个子域名,注意选择DNS服务商

  4. (可选)从商店购买KEY,当然也可以用脚本中自带的,区别是脚本中自带的KEY是历史优选的Cloudflare IP(也可以从这个网站查到IP的信息),而购买的KEY是15分钟内获取到的最新的Cloudflare IP。

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

python cf2dns.py

免责声明

1.网络环境错综复杂,适合我的不一定适合你,所以尽量先尝试免费的KEY或者购买试用版的KEY

2.有什么问题和建议请提issue或者Email我,不接受谩骂、扯皮、吐槽

3.为什么收费? 这个标价我也根本不指望赚钱,甚至不够我国内一台VDS的钱。

★ 如果当前DNSPod有移动、联通、电信线路的解析将会覆盖掉

cf2dns's People

Contributors

ddgth avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.