add wildcard update

This commit is contained in:
David Rodenkirchen 2024-08-15 10:10:30 +02:00
parent f95239215e
commit 1bb843c312

View File

@ -67,6 +67,22 @@ def update_www_dns_record(ip_address: str, dns_record_id: str) -> dict:
response = requests.put(url, headers=headers, json=data) response = requests.put(url, headers=headers, json=data)
return response.json() return response.json()
def update_wildcard_dns_record(ip_address: str, dns_record_id: str) -> dict:
url = f"https://api.cloudflare.com/client/v4/zones/{ZONE_ID}/dns_records/{dns_record_id}"
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
data = {
"type": "A",
"name": "*." + ZONE_NAME,
"content": ip_address,
"ttl": 120, # Time to live, 120 seconds
"proxied": False
}
response = requests.put(url, headers=headers, json=data)
return response.json()
def main(): def main():
logging.basicConfig( logging.basicConfig(
@ -94,6 +110,14 @@ def main():
logger.error("Failed to update DNS record.") logger.error("Failed to update DNS record.")
logger.error(result) logger.error(result)
wildcard_dns_record_id = get_dns_record_id("*.")
result = update_wildcard_dns_record(current_ip, wildcard_dns_record_id)
if result["success"]:
logger.info("Wildcard DNS record updated successfully.")
else:
logger.error("Failed to update DNS record.")
logger.error(result)
if __name__ == "__main__": if __name__ == "__main__":
main() main()