ionos_ddns_ssl/scripts/ip_update.py
2025-03-11 19:26:36 +08:00

28 lines
1 KiB
Python
Executable file

#!/usr/bin/env python3
import socket
import public_ip as ip
import time
import subprocess
import sys
from configparser import ConfigParser
parser = ConfigParser()
with open('/secret/' + sys.argv[1] + '.ini') as stream:
parser.read_string("[top]\n" + stream.read())
dns_ionos_prefix=parser.get('top','dns_ionos_prefix')
dns_ionos_secret=parser.get('top','dns_ionos_secret')
wildcard='*.'+ sys.argv[1]
#print(dns_ionos_prefix ,dns_ionos_secret, wildcard)
#print("eseguo ./ionos_dyndns.py -4 -H "+wildcard+" --api-prefix "+dns_ionos_prefix+" --api-secret "+dns_ionos_secret)
#subprocess.call(["./ionos_dyndns.py", "-4","-H",wildcard,"--api-prefix",dns_ionos_prefix,"--api-secret",dns_ionos_secret])
while True:
a=ip.get()
b=socket.gethostbyname('cicco.' + sys.argv[1])
#print(a, b)
if a != b:
print()
print("IP cambio indirizzo in", a )
subprocess.call(["./ionos_dyndns.py", "-4","-H",wildcard,"--api-prefix",dns_ionos_prefix,"--api-secret",dns_ionos_secret])
else:
print("X",end="",flush=True)
time.sleep(5*60)