Add support for provider Feste-IP.Net to ipfire ddns system. Signed-off-by: Martin Krieger makrie@posteo.de --- IPv6 support included based on API description but not tested. Test system is connected by VDSL and internet provider connection is pure IPv4 (No dualstack). --- README | 1 + src/ddns/providers.py | 22 ++++++++++++++++++++++ 2 files changed, 23 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..c8be31622c3a 100644 --- a/src/ddns/providers.py +++ b/src/ddns/providers.py @@ -1178,6 +1178,28 @@ class DDNSProviderEntryDNS(DDNSProvider): # If we got here, some other update error happened. 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 + + url = "https://members.feste-ip.net/nic/update/" + + def update(self): + data = DDNSProtocolDynDNS2.prepare_request_data(self, "ipv4") + + # This one supports IPv6 + myipv6 = self.get_address("ipv6") + + # Add update information if we have an IPv6 address. + if myipv6: + data["myip2"] = myipv6 + + self.send_request(data) +
class DDNSProviderFreeDNSAfraidOrg(DDNSProvider): handle = "freedns.afraid.org"