summary refs log tree commit diff
diff options
context:
space:
mode:
authorMel <einebeere@gmail.com>2024-11-28 19:15:24 +0100
committerMel <einebeere@gmail.com>2024-11-28 19:15:24 +0100
commitae381bb102840bbe3016b59165610e51975503f7 (patch)
tree9635f377814797c6f0434dbb5b61b7d733f5b931
parent330f346d0801a8f11db4bc83ba62fcdc14fbcb56 (diff)
downloadnetwork-ae381bb102840bbe3016b59165610e51975503f7.tar.zst
network-ae381bb102840bbe3016b59165610e51975503f7.zip
Use Cloudflare DDNS for AAAA records
Signed-off-by: Mel <einebeere@gmail.com>
-rw-r--r--modules/ddns.nix18
1 files changed, 12 insertions, 6 deletions
diff --git a/modules/ddns.nix b/modules/ddns.nix
index 103f3a9..c9d2abd 100644
--- a/modules/ddns.nix
+++ b/modules/ddns.nix
@@ -7,14 +7,20 @@ in
   services.ddclient = {
     enable = true;
 
-    # NameCheap DDNS parameters
-    use = "web, web=dynamicdns.park-your-domain.com/getip";
-    protocol = "namecheap";
-    server = "dynamicdns.park-your-domain.com";
+    # Cloudflare DNS API parameters
 
-    username = "rnrd.eu";
+    # dyn.com no longer supports HTTPS :(
+    # See: https://github.com/ddclient/ddclient/issues/597
+    # TODO: Update to new usev6 option in 24.11
+    extraConfig = ''
+      usev6=webv6, webv6=ipv6.icanhazip.com/
+    '';
+    protocol = "cloudflare";
+
+    username = "token";
+    zone = domain;
     domains = [ "${me.name}.${domain}" ];
     # TODO: use age
-    passwordFile = "/home/mel/ddclient.pw";
+    passwordFile = "/home/mel/cloudflare-dns-token.pw";
   };
 }