diff --git a/README b/README
index d8027a4..f45d128 100755
--- a/README
+++ b/README
@@ -62,6 +62,7 @@ SUPPORTED PROVIDERS:
  	dyndns.org
  	dyns.cx|net
  	dynu.com
+	dynup.de
  	easydns.com
  	enom.com
  	entrydns.net



diff --git a/src/ddns/providers.py b/src/ddns/providers.py
index 6b25cb6..75e6c4c 100755
--- a/src/ddns/providers.py
+++ b/src/ddns/providers.py
@@ -868,6 +868,43 @@ class DDNSProviderDynU(DDNSProtocolDynDNS2, 
DDNSProvider):
  		self.send_request(data)


+class DDNSProviderDynUp(DDNSProvider):
+	handle    = "dynup.de"
+	name      = "DynUp.DE"
+	website   = "http://dynup.de/"
+	protocols = ("ipv4",)
+
+	# Information about the format of the HTTPS request is to be found
+	# https://dyndnsfree.de/user/hilfe.php
+
+	url = "https://dynup.de/dyn.php"
+	can_remove_records = False
+
+	def update_protocol(self, proto):
+		data = {
+			"username" : self.username,
+			"password" : self.password,
+			"hostname" : self.hostname,
+			"print" : '1',
+		}
+
+		# Send update to the server.
+		response = self.send_request(self.url, data=data)
+
+		# Get the full response message.
+		output = response.read()
+
+		# Remove all leading and trailing whitespace.
+		output = output.strip()
+
+		# Handle success messages.
+		if output.startswith("I:OK") :
+			return
+
+		# If we got here, some other update error happened.
+		raise DDNSUpdateError
+
+
  class DDNSProviderEasyDNS(DDNSProvider):
  	handle    = "easydns.com"
