[PATCH] services: networking: Add netmask to loopback address.

DoneSubmitted by Ludovic Courtès.
Details
2 participants
  • Yann Dupont
  • Ludovic Courtès
Owner
unassigned
Severity
normal
L
L
Ludovic Courtès wrote on 6 Jan 10:46 +0100
(address . guix-patches@gnu.org)(name . Ludovic Courtès)(address . ludovic.courtes@inria.fr)
20220106094603.11283-1-ludo@gnu.org
From: Ludovic Courtès <ludovic.courtes@inria.fr>

Previously, we would get a fishy 127.0.0.1/0 interface:

$ ip a show dev lo
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet 127.0.0.1/0 scope global lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever

With this change, we get nothing but the "/8" version:

$ ip a show dev lo
1: lo: <LOOPBACK,MULTICAST,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope global lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever

Reported by Yann Dupont <Yann.Dupont@univ-nantes.fr>.

* gnu/services/base.scm (assert-valid-address): Remove special cases for
127.0.0.1 and ::1.
(%loopback-static-networking): Add "/8".
---
gnu/services/base.scm | 10 +++-------
1 file changed, 3 insertions(+), 7 deletions(-)

Toggle diff (37 lines)
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index 88869e40d2..e46bb591a9 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013-2022 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2015, 2016, 2020 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
@@ -2393,11 +2393,7 @@ (define (ipv6-address? str)
 
 (define-compile-time-procedure (assert-valid-address (address string?))
   "Ensure ADDRESS has a valid netmask."
-  (unless (or (cidr->netmask address)
-              (and=> (false-if-exception (inet-pton AF_INET address))
-                     (cut = INADDR_LOOPBACK <>))
-              (and=> (false-if-exception (inet-pton AF_INET6 address))
-                     (cut = 1 <>)))
+  (unless (cidr->netmask address)
     (raise
      (make-compound-condition
       (formatted-message (G_ "address '~a' lacks a network mask")
@@ -2741,7 +2737,7 @@ (define %loopback-static-networking
   (static-networking
    (addresses (list (network-address
                      (device "lo")
-                     (value "127.0.0.1"))))
+                     (value "127.0.0.1/8"))))
    (requirement '())
    (provision '(loopback))))
 

base-commit: 97657689507a0681aa9699407d292383ff22c330
-- 
2.33.0
Y
Y
Yann Dupont wrote on 7 Jan 12:09 +0100
(address . 53045@debbugs.gnu.org)
c9563062-1666-7aa3-6cd3-c311eb05b824@univ-nantes.fr
Just tested here and it works as expected.

--
Yann Dupont - Centre Calcul Intensif Pays de la Loire & Datacenter Tel :
02.53.48.49.39 - Mail/Jabber : Yann.Dupont@univ-nantes.fr
L
L
Ludovic Courtès wrote on 8 Jan 23:28 +0100
(name . Yann Dupont)(address . Yann.Dupont@univ-nantes.fr)(address . 53045-done@debbugs.gnu.org)
87mtk5276j.fsf_-_@gnu.org
Hello,

Yann Dupont <Yann.Dupont@univ-nantes.fr> skribis:

Toggle quote (2 lines)
> Just tested here and it works as expected.

Perfect, pushed as 5c354c204d288439ae5783aae34addaf2004c7a0.

Thanks again!

Ludo’.
Closed
?
Your comment

This issue is archived.

To comment on this conversation send email to 53045@debbugs.gnu.org