终极精品

标题: [Python 转载] DDNS_DNSPOD 亲测可用 [打印本页]

作者: zhoji    时间: 2022-11-18 23:40
标题: [Python 转载] DDNS_DNSPOD 亲测可用
全平台通用,无依赖
  1. # This program establish ddns service
  2. # to modify the public ip address of dns server.
  3. # The dns server is dnspod.
  4. # /etc/crontab # if centos etc.
  5. # */10 * * * * root /usr/local/sbin/dnspod_ddns.sh 1>&2> /dev/null
  6. # /etc/crontabs/root # if openwrt etc.
  7. # */10 * * * * /usr/sbin/dnspod_ddns.sh

  8. TOKEN="1,44e"
  9. DOMAIN="y5.p"
  10. SUB_DOMAIN="test"

  11. # TOKEN=`cat dnspod_ddns.conf|grep TOKEN|awk -F'=' '{print $2}'`
  12. # DOMAIN=`cat dnspod_ddns.conf|grep -e '^DOMAIN'|awk -F'=' '{print $2}'`
  13. # SUB_DOMAIN=`cat dnspod_ddns.conf|grep SUB_DOMAIN|awk -F'=' '{print $2}'`


  14. DATA="login_token=$TOKEN&format=json&domain=$DOMAIN&sub_domain=$SUB_DOMAIN&record_type=A&offset=0&length=3"
  15. JOSN_RECORDS=`curl -4 -s -X POST [url]https://dnsapi.cn/Record.List[/url] -d $DATA`

  16. RECORD_ID=`echo $JOSN_RECORDS|sed '/id/ s/.*id":"\(.*\)","ttl.*/\1/'`
  17. LINE_ID=`echo $JOSN_RECORDS|sed '/line_id/ s/.*line_id":"\(.*\)","type.*/\1/'`
  18. #=================get record ip
  19. IP_RESOLVED=`echo $JOSN_RECORDS|sed '/value/ s/.*value":"\(.*\)","enabled.*/\1/'`

  20. #================get real ip
  21. #REAL_IP=`cat</dev/tcp/ns1.dnspod.net/6666`
  22. REAL_IP=`curl -4 -s  myip.ipip.net|awk -F' |:' '{print $3}'`

  23. #REAL_IP="2.2.3.2"
  24. if [ $REAL_IP != $IP_RESOLVED ]; then
  25.     #================modify record
  26.     DATA="login_token=$TOKEN&format=json&domain=$DOMAIN&record_id=$RECORD_ID&sub_domain=$SUB_DOMAIN&value=$REAL_IP&record_type=A&record_line_id=$LINE_ID"
  27.     # echo $DATA
  28.     JSON_RESULT=`curl -4 -s -X POST [url]https://dnsapi.cn/Record.Modify[/url] -d $DATA`
  29.     echo $JSON_RESULT >> /var/log/dnspod_ddns.log
  30.     IP_RESOLVED=$REAL_IP
  31. fi
复制代码







欢迎光临 终极精品 (http://www.chnspy.com/) Powered by Discuz! X3.2