基于dnspod,动态更新ip地址
发布时间:2020-12-15 07:08:00 所属栏目:安全 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 #!/bin/sh# usage: ./dnspod.sh ddns.conf####ACCOUNT=""PASSWORD=""DOMAIN=""SUBDOMAINS=""RECORD_LINE=""DOMAIN_ID=""RECORD_LIST=""#更新记录id的i
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 #!/bin/sh # usage: ./dnspod.sh ddns.conf # # # # ACCOUNT="" PASSWORD="" DOMAIN="" SUBDOMAINS="" RECORD_LINE="" DOMAIN_ID="" RECORD_LIST="" #更新记录id的ip地址 #curl -k https://dnsapi.cn/Record.Ddns -d "login_email=${ACCOUNT}&login_password=${PASSWORD}&domain_id=${DOMAIN_ID}&record_id=${REC_BBS}&sub_domain=${SUB_BBS}&record_line=${RECORD_LINE}" #获得域名id #curl -k https://dnsapi.cn/Domain.List -d "login_email=${ACCOUNT}&login_password=${PASSWORD}" #获得域名id下的记录列表 #curl -k https://dnsapi.cn/Record.List -d "login_email=${ACCOUNT}&login_password=${PASSWORD}&domain_id=${DOMAIN_ID}" dnspod_load_config(){ cfg=$1; content=`cat ${cfg}`; ACCOUNT=`echo "${content}" |grep 'ACCOUNT'| sed 's/^ACCOUNT=["](.*)["]/1/'`; PASSWORD=`echo "${content}" |grep 'PASSWORD'| sed 's/^PASSWORD=["](.*)["]/1/'`; DOMAIN=`echo "${content}" |grep 'DOMAIN'| sed 's/^DOMAIN=["](.*)["]/1/'`; SUBDOMAINS=`echo "${content}" |grep 'SUBDOMAINS'| sed 's/^SUBDOMAINS=["](.*)["]/1/'`; RECORD_LINE=`echo "${content}" |grep 'RECORD_LINE'| sed 's/^RECORD_LINE=["](.*)["]/1/'`; } dnspod_domain_get_id(){ options="login_email=${ACCOUNT}&login_password=${PASSWORD}"; cmd="curl -s -k https://dnsapi.cn/Domain.List -d ${options}"; out=`${cmd}|sed -n '/<id>/,/</name>/p'`; DOMAIN_ID=`echo "${out}"|grep -B1 "${DOMAIN}"|grep '<id>*'|sed 's/<id>(.*)</id>/1/'` RECORD_LIST=`curl -s -k https://dnsapi.cn/Record.List -d "${options}&domain_id=${DOMAIN_ID}"` } dnspod_update_record_ip(){ html=$1; out=`echo "${html}"|sed -n '/<item>/,/</item>/p'` out=`echo "${out}"|grep -B3 '<type>A</type>'`; for sub in ${SUBDOMAINS}; do rec_id=`echo "${out}"|grep -B1 "${sub}"|grep '<id>*'|sed 's/<id>(.*)</id>/1/'` curl -k https://dnsapi.cn/Record.Ddns -d "login_email=${ACCOUNT}&login_password=${PASSWORD}&domain_id=${DOMAIN_ID}&record_id=${rec_id}&sub_domain=${sub}&record_line=${RECORD_LINE}" done } main(){ dnspod_load_config $1 dnspod_domain_get_id dnspod_update_record_ip "${RECORD_LIST}" } main $1 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 为什么sbt构建失败,“MissingRequirementError:对象scala.
- angularjs – 角度表达式等于
- angularjs – Firebase / AngularFire中的数据建模最佳实践
- scala – 在类型别名中使用上下文绑定
- twitter-bootstrap – Twitter Bootstrap 3图标,显示一个正
- bash – 在.txt文件中查找最长行并使用“空格”填充所有行到
- scala – 不支持类型为Any的架构
- 基于axis2的webservice和android简单的本地数据交互(上)
- bash – 是否需要指定EXIT以外的陷阱?
- 在shell脚本中从被调用的函数返回值