使用cloudflare API 让域名定时自动更换IP脚本
使用cloudflare API 让域名定时自动更换IP脚本
<?php
/**
这个是php版的代码
要先准备一台一个站群服务器,建议一整个c段253IP以上的服务器
原理是,假墙封ip几个小时,每1分钟换一次解析,轮流使用250多个ip使其超过他封禁时间
用linux定时任务,每一分钟运行此一次:如新建网站,保存此文件名为q.php,网站端口4521,宝塔提交定时url任务 : http://127.0.0.1:4521/q.php
**/
$file = './tqdata.txt'; // 同目录下新建tqdata.txt文件,里面填个数字 比如 1,用来记录当前使用的
$txt = file_get_contents($file);
$ips = [];
for($i=1; $i <=254; $i++){
$ips[$i] = '45.45.45.' . $i; // 自己的ip
}
$ip = $ips[$txt];
// 进cf解析页f12,找到那条记录,提交,得到下面的提交地址 xxxx是需要替换成自己的
$www='https://api.cloudflare.com/client/v4/zones/xxxx/dns_records/xxxx';
$datawww = array(
"type"=>"A",
"name"=>"www.domain.com",
"content"=>$ip,
"ttl"=>120,
"proxied"=>false
);
curl_get($www,$datawww);
function curl_get($url,$data)
{
$ch = curl_init();
$headers = array(
'X-Auth-Email:自己cf的账号',
'X-Auth-Key:自己cf的key',
'Content-Type:application/json'
);
$data = json_encode($data);
$ch = curl_init(); //初始化CURL句柄
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_URL, $url); //设置请求的URL
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); //设为TRUE把curl_exec()结果转化为字串,而不是直接输出
curl_setopt($ch, CURLOPT_CUSTOMREQUEST,"PUT"); //设置请求方式
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);//设置提交的字符串
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 信任任何证书
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); // 检查证书中是否设置域名
$output = curl_exec($ch);
curl_close($ch);
return json_decode($output,true);
}
本文来自:https://www.caogao.net/cloudflare-api-ip,感谢大神的分享
版权声明
本站部分原创文章,部分文章整理自网络。如有转载的文章侵犯了您的版权,请联系站长删除处理。如果您有优质文章,欢迎发稿给我们!联系站长:
愿本站的内容能为您的学习、工作带来绵薄之力。
评论