summary refs log tree commit diff
path: root/gnu/services/networking.scm
diff options
context:
space:
mode:
authorLilah Tascheter <lilah@lunabee.space>2023-07-04 19:10:21 -0500
committerLudovic Courtès <ludo@gnu.org>2023-10-14 22:41:43 +0200
commit489abccd5fb029be7277602058c81487d4ca07ec (patch)
treee40edd622e0515ae80f0cf3b77473f07f068a385 /gnu/services/networking.scm
parentd17c403115463f02546d9ee241ab6482e5979042 (diff)
downloadguix-489abccd5fb029be7277602058c81487d4ca07ec.tar.gz
services: dhcp-client-service-type: Support DDNS.
* gnu/services/networking.scm (dhcp-client-shepherd-service): Enable -I
  flag on dhclient.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/services/networking.scm')
-rw-r--r--gnu/services/networking.scm7
1 files changed, 6 insertions, 1 deletions
diff --git a/gnu/services/networking.scm b/gnu/services/networking.scm
index f4aff2d979..99889e3072 100644
--- a/gnu/services/networking.scm
+++ b/gnu/services/networking.scm
@@ -353,7 +353,12 @@
 
                          (false-if-exception (delete-file #$pid-file))
                          (let ((pid (fork+exec-command
-                                     (cons* dhclient "-nw"
+                                     ;; By default dhclient uses a
+                                     ;; pre-standardization implementation of
+                                     ;; DDNS, which is incompatable with
+                                     ;; non-ISC DHCP servers; thus, pass '-I'.
+                                     ;; <https://kb.isc.org/docs/aa-01091>.
+                                     (cons* dhclient "-nw" "-I"
                                             "-pf" #$pid-file ifaces))))
                            (and (zero? (cdr (waitpid pid)))
                                 (read-pid-file #$pid-file)))))