From 37fb0237932fb12bdd635e9cb5e01b0bf9f03dda Mon Sep 17 00:00:00 2001 From: Martin Krieger makrie@posteo.de Date: Tue, 18 May 2021 19:42:44 +0200 Subject: [PATCH v6 1/1] ddns: Add provider Feste-IP.Net
Comments: Provider supports IPv4, IPv6 & DS (Dual-Stack)
Changelog:
18.05.2021 Improved failure handling. IPv6 & DS still not checked, because my network connection is pure IPv4.
17.05.2021 5th attempt ([PATCH v5 1/1])
16.05.2021 4th attempt ([PATCH v4 1/1])
08.05.2021 3rd attempt ([PATCH v3 1/1])
06.05.2021 2nd attempt ([PATCH v2 1/1])
05.05.2021 1st attempt ([PATCH v1 1/1])
Signed-off-by: Martin Krieger makrie@posteo.de.. --- README | 1 + src/ddns/providers.py | 31 +++++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+)
diff --git a/README b/README index b6decb35c338..fa6ce5e598b8 100644 --- a/README +++ b/README @@ -68,6 +68,7 @@ SUPPORTED PROVIDERS: easydns.com enom.com entrydns.net + feste-ip.net freedns.afraid.org inwx.com|de|at|ch|es itsdns.de diff --git a/src/ddns/providers.py b/src/ddns/providers.py index 56e6620c78ab..b7e14482a0b1 100644 --- a/src/ddns/providers.py +++ b/src/ddns/providers.py @@ -1179,6 +1179,37 @@ class DDNSProviderEntryDNS(DDNSProvider): raise DDNSUpdateError
+class DDNSProviderFesteIPNet(DDNSProtocolDynDNS2, DDNSProvider): + handle = "feste-ip.net" + name = "Feste-IP.Net" + website = "https://www.feste-ip.net/" + + # Information about the format of the request is to be found + # https://forum.feste-ip.net/viewtopic.php?f=13&t=469 + + myips = ("myip","myip2") + + url = "https://members.feste-ip.net/nic/update/" + + def update(self): + data = { + "hostname" : self.hostname + } + + for proto in DDNSProvider.protocols: + idx = 0 + tmpip = self.get_address(proto) + if tmpip: + data[self.myips[idx]] = tmpip + idx += 1 + + if self.myips[0] in data: + self.send_request(data) + return + + raise DDNSUpdateError + + class DDNSProviderFreeDNSAfraidOrg(DDNSProvider): handle = "freedns.afraid.org" name = "freedns.afraid.org"