使⽤阿⾥云dnssdk解决电信公⽹ip⾃动变化问题;⾃⼰动⼿实
现ddns
⾸先说下情况,我的树莓派通过电信光猫dmz主机设置全端⼝映射得到了公⽹ip,ssh等连接都很迅速,ping值为60ms。上海电信200M宽
带,上传25mbps。由于是动态公⽹ip,电信隔⼏天就换ip,这个差不多⼗天,不⼀定。我写了简单的脚本,⽤计划任务每分钟访问我的vultr
服务器上的nginx服务(curl命令),nginx可以记录来访的ip,我就知道该树莓派的动态ip了。所以有时候访问不了了,ip变化了,我就看⼀
下nginx⽇志后去阿⾥云⼿动修改dns解析。
以上的操作还是略⿇烦的,后来百度下,得知阿⾥云dns有sdk,直接⽤脚本就能修改dns解析记录了。该⽅法⽐我原来⼿动的省事很多,⽽
且能根据计划每分钟检查,所以可以说就算电信ip⼀天变⼀次也感觉不到。
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
import json
import os
import re
import sys
from datetime import datetime
from t.v20150109 import UpdateDomainRecordRequest, DescribeDomainRecordsRequest,
DescribeDomainRecordInfoRequest
from aliyunsdkcore import client
#请填写你的Access Key ID
access_key_id = "LTAIdR"
#请填写你的Access Key Secret
access_key_cret = "lv535M"
#如果选择yes,则运⾏程序后仅现实域名信息,并不会更新记录,⽤于获取解析记录ID。
#如果选择no,则运⾏程序后不显⽰域名信息,仅更新记录
#i_dont_know_record_id = 'yes'
i_dont_know_record_id = 'no'
#请填写解析记录ID
rc_record_id = '3995858176'
#请填写你的⼀级域名
rc_domain = ''
#请填写你的解析记录,对应的主机记录
rc_rr = 'rver'
#请填写你的记录类型,DDNS请填写A,表⽰A记录
rc_type = 'A'
#请填写解析有效⽣存时间TTL,单位:秒
#rc_ttl = '1'
rc_ttl = '600'
#请填写返还内容格式,json,xml
rc_format = 'json'
def my_ip():
get_ip_method = ('curl -s ')
get_ip_respons = get_ip_nes()[0]
get_ip_pattern = e(r'd+.d+.d+.d+')
get_ip_value = get_ip_l(get_ip_respons)[0]
return get_ip_value
def check_records(dns_domain):
clt = ent(access_key_id, access_key_cret, 'cn-hangzhou')
request = beDomainRecordsRequest()
_DomainName(dns_domain)
_accept_format(rc_format)
#result = _action(request)
result = _action_with_exception(request)
return result
result = _action_with_exception(request)
result = coder().decode(result)
result = result['Value']
return result
def update_dns(dns_rr, dns_type, dns_value, dns_record_id, dns_ttl, dns_format):
clt = ent(access_key_id, access_key_cret, 'cn-hangzhou')
request = DomainRecordRequest()
_RR(dns_rr)
_Type(dns_type)
_Value(dns_value)
_RecordId(dns_record_id)
_TTL(dns_ttl)
_accept_format(dns_format)
#result = _action(request)
result = _action_with_exception(request)
return result
def write_to_file():
本文发布于:2023-11-01 12:28:11,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/zhishi/a/88/26891.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:使用阿里云dnssdk解决电信公网ip自动变化问题;自己动手实现ddns.doc
本文 PDF 下载地址:使用阿里云dnssdk解决电信公网ip自动变化问题;自己动手实现ddns.pdf
留言与评论(共有 0 条评论) |