Every day: The server does not have an IPv6 address / Chaque jour : Le serveur ne dispose pas d'une adresse IPv6

$ ip a
[...]
2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether fa:16:3e:f3:1c:9c brd ff:ff:ff:ff:ff:ff
    inet 37.156.46.63/24 metric 100 brd 37.156.46.255 scope global dynamic enp3s0
       valid_lft 72982sec preferred_lft 72982sec
    inet6 2001:1600:16:10::603/128 scope global dynamic noprefixroute
       valid_lft 29784sec preferred_lft 29784sec
    inet6 fe80::f816:3eff:fef3:1c9c/64 scope link
       valid_lft forever preferred_lft forever

Je me demande si le bug n’interviendrait pas dans 29784sec, au moment de la fin de validitĂ© du bail ?

Est-ce qu’il y a moyen de modifier cette Ă©chĂ©ance lorsqu’on force une adresse IP fixe ? Comme dans la derniĂšre ligne valid_lft forever preferred_lft forever

Autrement peut-ĂȘtre dans les diffĂ©rences entre IPv6 et IPv4 (qui ne bugge pasÂč) :

inet 37.156.46.63/24 metric 100 brd 37.156.46.255 scope global dynamic enp3s0
inet6 2001:1600:16:10::603/128 scope global dynamic noprefixroute

Le fait d’avoir exĂ©cutĂ© les 2 lignes de @jarod5001 au dessus ne semble pas changer le rĂ©sultat :thinking:


Âč Peut-ĂȘtre que l’IPv4 buggerait aussi 43198 secondes plus tard si j’étais patient ? Pour le moment je redĂ©marre le serveur tous les jours :sweat_smile:

Peux-tu essayer ces commandes lorsque le bail de l’ipv6 soit expirĂ©

1 Like

Aucun problÚme, désolé pour le contre-temps :man_bowing:

Coucou @jarod5001,

Alors ça se prĂ©sente super bien, quand je perds l’IPv6, je tape tes 2 commandes et j’obtiens :

2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether fa:16:3e:f3:1c:9c brd ff:ff:ff:ff:ff:ff
    inet 37.156.46.63/24 metric 100 brd 37.156.46.255 scope global dynamic enp3s0
       valid_lft 79945sec preferred_lft 79945sec
    inet6 2001:1600:16:10::603/128 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::f816:3eff:fef3:1c9c/64 scope link
       valid_lft forever preferred_lft forever

Avec un scope global non dynamic et un bail éternel :heart_eyes:

Le seul truc en effet, c’est que lorsque je redĂ©marre mon serveur, je retrouve un bail pour 86400 secondes :sob:

Dùs qu’on arrive à fixer la configuration ce sera parfait :victory_hand: Et dans le doute je ferai pareil pour l’IPv4 :wink:

J’essaie de trouver comment faire pour configurer l’adresse IPv6 statique mais je galùre un peu.

Je n’ai pas de fichier /etc/network/interfaces, est-ce qu’il faut que j’en créé un ? Je mets juste les lignes suivantes dedans ?

auto enp3s0
iface enp3s0 inet static
    address 2001:1600:16:10::603/128
    gateway 2001:1600:16:10::1

Y’a des endroits sur la toile oĂč ils disent qu’il ne faut plus utiliser interfaces mais netplan ou systemd :exploding_head:

Je suis un peu perdu :sweat_smile:

C’est des maso. Interfaces fonctionne parfaitement bien.

Sinon, j’ai trouvĂ© ce tuto. Comme proposĂ© par @rodinux : 1. modifier le fichier config, 2. vĂ©rifier que la config est bonne puis 3. dĂ©sactiver le changement du fichier config au redĂ©marrage en ajoutant un fichier avec la commande sudo bash -c 'echo "network: {config: disabled}" > /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg' . Cet en fait ton fournisseur qui modifie la config.

1 Like

:france: Coucou les ami-es,

AprÚs 1 semaine de bataille acharnée nous y sommes parvenu-es :partying_face: Merci mille fois pour votre aide précieuse, encourageante et réconfortante :man_bowing: :hugs:

Merci particuliÚrement à @lab.8916100448256, @rodinux et @jarod5001 pour leur perspicacité, leur générosité et leur patience :face_blowing_a_kiss:

Alors je m’en suis bien sorti avec netplan mais ça a Ă©tĂ© laborieux :sweat_smile: Je vous fais un rĂ©sumĂ© de la solution qui fonctionne pour dĂ©finir des adresses IPv4 et IPv6 statiques en lignes de commandes :wink:

1. Pour commencer il faut recueillir des informations qui vont nous servir pour la configuration :

  • Obtenir le nom de son interface rĂ©seau, ses adresses IP publiques, ses passerelles et ses DNS avec une seule commande : # networkctl status

2. Puis créer son fichier de configuration :

  • VĂ©rifier si un fichier de configuration existe dĂ©jĂ  # ls /etc/netplan

  • Si un fichier existe il faut le renommer pour le garder en sauvegarde, par exemple # sudo mv /etc/netplan/50-cloud-init.yaml /etc/netplan/50-cloud-init.yaml.old

  • Puis crĂ©er un nouveau fichier de configuration, avec le mĂȘme nom d’origine pas de problĂšme # sudo nano /etc/netplan/50-cloud-init.yaml

  • Dans ce fichier vous mettez Âč :

# This file is generated from information provided by the datasource.  Changes
# to it will not persist across an instance reboot.  To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0:           # Nom de l'interface réseau (via networkctl status)
      accept-ra: no   # Désactiver DHCP pour IPv6 (dhcp6 ci-dessous ne suffit pas)
      dhcp4: false    # Désactiver DHCP pour IPv4
      dhcp6: false    # Désactiver DHCP pour IPv6
      addresses:
      - 37.156.46.63/24            # Votre adresse IPv4 CIDR (via networkctl status)
      - 2001:1600:16:10::603/128   # Votre adresse IPv6 CIDR (via networkctl status)
      routes:
      - to: default                       # Route par défaut pour IPv4
        via: 37.156.46.11                 # Passerelle IPv4 (via networkctl status)
      - to: "::/0"                        # Route par défaut pour IPv6 
        via: fe80::f816:3eff:fe2a:dd391   # Passerelle IPv6 (via networkctl status)
      nameservers:
        addresses:
        - 9.9.9.9           # Serveur DNS primaire IPv4 (dans cet exemple quad9)
        - 149.112.112.112   # Serveur DNS secondaire IPv4 (dans cet exemple quad9)
        - 2620:fe::fe       # Serveur DNS primaire IPv6 (dans cet exemple quad9)
        - 2620:fe::9        # Serveur DNS secondaire IPv6 (dans cet exemple quad9)

CTRL + O pour enregistrer puis CTRL + X pour quitter

  • ProtĂ©ger le fichier créé # sudo chmod 600 /etc/netplan/50-cloud-init.yaml

  • Tester le fonctionnement du fichier # sudo netplan try -timeout 30

  • Appliquer le fichier en production, il sera mis en place Ă  chaque (re-)dĂ©marrage du systĂšme # sudo netplan --debug apply

Je pense n’avoir rien oubliĂ©, dites-moi si vous voyez quelque chose qui ne va pas ou si vous avez un soucis, je suis maintenant un peu plus compĂ©tent pour vous aider :smiling_face:

Vive Yunohost et sa communauté :victory_hand:

Âč Assurez-vous que le fichier YAML est correctement indentĂ© car l’indentation est importante dans les fichiers YAML.


:united_kingdom: Hello friends,

After a week of fierce battle, we made it :partying_face: Thank you so much for your invaluable, encouraging, and comforting help :man_bowing: :hugs:

Special thanks to @lab.8916100448256, @rodinux, and @jarod5001 for their insight, generosity, and patience :face_blowing_a_kiss:

So I did well with netplan, but it was laborious :sweat_smile: Here’s a summary of the solution that works for setting static IPv4 and IPv6 addresses from the command line :wink:

1. To begin, we need to gather some information that will be useful for the configuration:

  • Obtain the name of your network interface, your public IP addresses, your gateways, and your DNS with a single command: # networkctl status

**2. Then create your configuration file:

  • Check if a configuration file already exists: # ls /etc/netplan

  • If a file exists, rename it to keep it as a backup, for example: # sudo mv /etc/netplan/50-cloud-init.yaml /etc/netplan/50-cloud-init.yaml.old

  • Then create a new configuration file, with the same original name (no problem): # sudo nano /etc/netplan/50-cloud-init.yaml

  • In this file, put:

# This file is generated from information provided by the datasource.  Changes
# to it will not persist across an instance reboot.  To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0:           # Network interface name (via networkctl status)
      accept-ra: no   # Disable DHCP for IPv6 (dhcp6 below is not sufficient)
      dhcp4: false    # Disable DHCP for IPv4
      dhcp6: false    # Disable DHCP for IPv6
      addresses:
      - 37.156.46.63/24            # Your IPv4 CIDR address (via networkctl status)
      - 2001:1600:16:10::603/128   # Your IPv6 CIDR address (via networkctl status)
      routes:
      - to: default                       # Default route for IPv4
        via: 37.156.46.11                 # IPv4 gateway (via networkctl status)
      - to: "::/0"                        # Default route for IPv6
        via: fe80::f816:3eff:fe2a:dd391   # IPv6 gateway (via networkctl status)
      nameservers:
        addresses:
        - 9.9.9.9           # Primary IPv4 DNS server (in this example quad9)
        - 149.112.112.112   # Secondary IPv4 DNS server (in this example quad9)
        - 2620:fe::fe       # Primary IPv6 DNS server (in this example quad9)
        - 2620:fe::9        # Secondary IPv6 DNS server (in this example quad9)

CTRL + O to save then CTRL + X to exit

  • Protect the created file: # sudo chmod 600 /etc/netplan/50-cloud-init.yaml

  • Test the file’s functionality: # sudo netplan try -timeout 30

  • Apply the file in production, it will be installed each time the system is (re-)started: # sudo netplan --debug apply

I don’t think I’ve missed anything. Let me know if you see anything wrong or if you have a problem. I’m now a little more qualified to help you :smiling_face:

Long live Yunohost and its community :victory_hand:

Âč Make sure the YAML file is correctly indented as indentation is important in YAML files.

2 Likes

Je n’ai pas eu besoin de crĂ©er ce fichier Ă  priori (je l’ai créé puis supprimĂ© parce que ça ne fonctionnait pas).

Le problĂšme Ă©tait de rajouter accept-ra: no autrement ça reprenait l’IPv6 par DHCP Ă  chaque fois :exploding_head:

Mais Ă  garder de cĂŽtĂ© au cas oĂč :wink:

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.