Auteur Sujet: Ubuntu 22.04 Server, IPV6 SLAAC, obtenir une ip statique ?  (Lu 682 fois)

0 Membres et 1 Invité sur ce sujet

noks

  • Abonné Free fibre
  • *
  • Messages: 401
  • Limoges 87
Bonjour,

J'essaye de me mettre à ipv6 pour héberger mes services, probablement 2000 ans après tout le monde.

Contexte :

Je suis derrière une Freebox, j'ai un TrueNAS avec plusieurs conteneurs et une VM. J'héberge 2 conneries ( Nextcloud et Jellyfin ) derrière un reverse proxy ( NGINX ). Tout ce petit monde en ipv4. Je voudrais passer tout ce petit monde aussi en ipv6 et je me heurte à une première interrogation :

Sur ma VM Ubuntu, il semble que via SLAAC je n'obtienne qu'une ipv6 "temporaire" :
    inet6 2a01:xxx:xx:xxx:xxx:xxxx:xxxx:xxx/64 scope global dynamic mngtmpaddr noprefixroute
       valid_lft 86358sec preferred_lft 86358sec
    inet6 fe80::xxx:xxxx:xxxx:xxx/64 scope link
       valid_lft forever preferred_lft forever

Comment en utilisant SLAAC je peux dire à Ubuntu de s'autoconfigurer une ipv6 aléatoire mais permanente ?

Désolé si ma question semble débile, et si j'emploi les mauvais termes, je fais parti de ses vieux qui partent quasiment de 0 avec ipv6 et ont tous les biais de l'ipv4 en tête, donc je suis un peu perdu.

Ce que je trouve sur le net c'est des tuto pour fixer une ipv6 en dur avec netplan, ce que je ne souhaite pas, si j'ai bien compris la bonne methode c'est d'utiliser l'autoconfiguration stateless pour avoir une ipv6 aléatoire et ne pas retomber dans le biais de la jolie ip qui fini par xxx::1.

darkmoon

  • Abonné Free fibre
  • *
  • Messages: 749
  • ↓ 8 Gbps | ↑ 8 Gbps (SGL 69)
Ubuntu 22.04 Server, IPV6 SLAAC, obtenir une ip statique ?
« Réponse #1 le: 03 mars 2024 à 16:08:09 »
Tu peux utiliser "ip token set" qui te permet de choisir un suffixe et donc d'avoir toujours le même.

https://serverfault.com/questions/1109805/configuring-ubuntu-22-04-to-generate-the-interfacepart-of-an-ipv6-staticly

noks

  • Abonné Free fibre
  • *
  • Messages: 401
  • Limoges 87
Ubuntu 22.04 Server, IPV6 SLAAC, obtenir une ip statique ?
« Réponse #2 le: 03 mars 2024 à 16:23:40 »
Si je comprends bien, avec ça c'est à moi de choisir le suffix de l'adresse ?
Y'a pas moyen qu'il en choisisse un aléatoire et qu'il le garde ?

Par exemple sous windows, dans sa config par défaut il semble qu'il est une adresse générée aléatoirement mais qui ne change plus, et une temporaire, toujours générée aléatoirement et qui change toutes les 24h.

Du moins c'est ce que j'ai compris, c'est complètement possible que je sois à coté de la plaque, n'hésitez pas à me corriger si c'est le cas !

buddy

  • Expert
  • Abonné Free fibre
  • *
  • Messages: 15 174
  • Alpes Maritimes (06)
Ubuntu 22.04 Server, IPV6 SLAAC, obtenir une ip statique ?
« Réponse #3 le: 03 mars 2024 à 16:37:48 »
sous Windows, il me semble que celle générée aléatoirement est quand même très très fortement basée sur l'adresse mac de ta carte réseau ;)

Après tu peux en "générer" une aléatoire toi même, il suffit de ne choisir que des caractères parmi les suivants [0-9a-f]

basilix

  • Abonné Orange Fibre
  • *
  • Messages: 166
Ubuntu 22.04 Server, IPV6 SLAAC, obtenir une ip statique ?
« Réponse #4 le: 03 mars 2024 à 16:38:19 »
Cela dépend de la configuration du système. On peut définir une adresse statique ou stable.

Normalement, avec une adresse stable opaque, l'IID (identifiant d'interface) est regénéré lors d'un changement de préfixe.

Dans OpenWrt, un préfixe ULA est généré de façon aléatoire. En adaptant leur code, on obtient ce qui suit.

r1=$(dd if=/dev/urandom bs=2 count=1 | hexdump -e '2/1 "%02x"')
r2=$(dd if=/dev/urandom bs=2 count=1 | hexdump -e '2/1 "%02x"')
r3=$(dd if=/dev/urandom bs=2 count=1 | hexdump -e '2/1 "%02x"')
r4=$(dd if=/dev/urandom bs=2 count=1 | hexdump -e '2/1 "%02x"')

iid=$r1:$r2:$r3:$r4

La ligne de commande, c'est tortueux.

hexdump -e '3/2 "%04x:" "%04x" "\n"' -n8 /dev/urandom
« Modifié: 04 mars 2024 à 15:00:40 par basilix »

noks

  • Abonné Free fibre
  • *
  • Messages: 401
  • Limoges 87
Ubuntu 22.04 Server, IPV6 SLAAC, obtenir une ip statique ?
« Réponse #5 le: 03 mars 2024 à 17:50:54 »
Citer
sous Windows, il me semble que celle générée aléatoirement est quand même très très fortement basée sur l'adresse mac de ta carte réseau ;)

Ok donc tu confirme, sur Linux, la mngtmpaddr que j'ai par défaut est bien aléatoire et pas basée sur la MAC ?

Citer
Après tu peux en "générer" une aléatoire toi même, il suffit de ne choisir que des caractères parmi les suivants [0-9a-f]

Ca va finir comme ça effectivement ;)

decalage

  • Abonné Orange adsl
  • *
  • Messages: 189
  • 92
Ubuntu 22.04 Server, IPV6 SLAAC, obtenir une ip statique ?
« Réponse #6 le: 03 mars 2024 à 23:31:35 »

Paul

  • Abonné Orange Fibre
  • *
  • Messages: 4 270
  • Vannes (56)
    • Twitter
Ubuntu 22.04 Server, IPV6 SLAAC, obtenir une ip statique ?
« Réponse #7 le: 03 mars 2024 à 23:51:24 »
Sur Ubuntu Desktop, la RFC 7217 est par défaut depuis sans doute 10 ans, mais j'imagine que c'est Ubuntu Server et ce n'est pas le cas. Je ne suis pas entièrement sur que ça fonctionne pour Ubuntu comme ça utilise Netplan, mais sur Debian, pour que l'adresse stable soit hachée, il faut modifier /etc/sysctl.conf et ajouter ceci :

net.ipv6.conf.all.addr_gen_mode=3
net.ipv6.conf.default.addr_gen_mode=3

À adapter, à la place de all tu peux mettre le nom de ton interface pour n'agir que sur celle que tu veux.

Dans /etc/systemd/networkd.conf, il faut rajouter sous [Network] :

IPv6PrivacyExtensions=kernel
Encore une fois, Ubuntu utilises Netplan, mais comme ici c'est une modification au niveau de l'init, sachant que les 2 utilisent systemd, ça devrait fonctionner.

noks

  • Abonné Free fibre
  • *
  • Messages: 401
  • Limoges 87
Ubuntu 22.04 Server, IPV6 SLAAC, obtenir une ip statique ?
« Réponse #8 le: 04 mars 2024 à 01:09:23 »
Merci pour ses réponses très précises, je comprends mieux maintenant.

Je vais creuser pour Ubuntu et Netplan ( c'est un effet comme ça que j'ai configuré mon interface ). Je confirme c'est bien une VM Ubuntu server.

Je vais devoir aussi chercher du côté de FreeBSD, j'ai déjà trouvé comment activer les privacy extensions, dans le sysctl.conf d'ailleurs, je vais tester ces paramètres pour voir ce que ça donne.

Fyr

  • Abonné Free fibre
  • *
  • Messages: 870
  • Talissieu 01
Ubuntu 22.04 Server, IPV6 SLAAC, obtenir une ip statique ?
« Réponse #9 le: 04 mars 2024 à 02:12:38 »
Les privacy extension ça génère une IPv6 temporaire à chaque nouvelle connexion TCP ou toutes les 10 minutes
Sur ton FreeBSD dans ton /etc/rc.conf

ipv6_privacy="YES"
Les écritures directes dans le /etc/sysctl.conf sont pour le réglage fin :

net.inet6.ip6.use_tempaddr=1
net.inet6.ip6.prefer_tempaddr=1

mais ça ne marchera plus avec une IP statique. Ca ne marche qu'avec SLAAC. Dès que tu mets en statique ça déslaaquifie. En statique ça te permet aussi dans ton FW de savoir qu'elle sera l'IP source de ton serveur.

Sur FreeBSD (ou Linux) tu mets l'IP statique que tu choisis y a aucun soucis.

L'IP généré depuis la MAC va simplement ne plus être utilisée.

sur FreeBSD dans ton /etc/rc.conf

ifconfig_igc0_ipv6="inet6  PREFIXE::IP prefixlen 64"
en remplaçant igc0 par le driver+interface que tu as. (là c'est une intel 2.5Gbs, re0 si tu as une realtek etc. Tu vois les interface avec la commande ifconfig, sans rien derriere. Si tu en as 2 bah igc0 et igc1.)

et pour la route par defaut, toujours dans ton /etc/rc.conf :
ipv6_default_interface="igc0"
et/ou
ipv6_defaultrouter="fe80::%igc0"
ça balance dans le link local et le routeur saura quoi faire.

ou en dur

ipv6_defaultrouter="fe:80:xx::xx". (dans le link local ou  PREFIXE::IP-GATEWAY)

Goodies : le FreeBSD Journal de ce mois parle des piles TCP alternatives et comment les utiliser, dont celle de Netflix, et les extensions SR-IOV pour avoir de multiples interfaces avec leur propre énumération PCI pour la virtualization à partir de la même carte physique qui supporte cette extension.

https://freebsdfoundation.org/past-issues/networking-10th-anniversary/