La préparation
Nous allons donc supprimer cloud-init qui introduit le DHCP sur votre serveur. Qui dit DHCP dit que la passerelle nous sera transmise. Si nous supprimons le DHCP, nous perdons l'IP de cette dernière.
Nous allons donc récupérer la passerelle, pous ça vous allez taper sur votre terminal :
ip route
ou
ip r
Cela va afficher plein de ligne dont celles ci :
default via 5.196.95.254 dev enp3s0 onlink
5.196.95.0/24 dev enp3s0 proto kernel scope link src 5.196.95.6
La première des deux lignes indique donc que tout le trafic par défaut passe par 5.196.95.254
en sortant par l'interface nommé enp3s0.
La seconde indique que le réseau 5.196.95.0/24
est accessible au travers de l'interface réseau enp3s0
et que cette dernière a pour IP 5.196.95.6
.
Le /24 est la version racourci d'indiquer que le réseau a pour masque 255.255.255.0
. Cela signifie qu'il y a 253 machines sur cette plage réseau + une passerelle. Cet excellent article de Wikipedia pourra vous aider à mieux comprendre cette notion
Bien sur chez chaque hébergeur cela peut différer. Par exemple chez Hetzner la gateway sur une IP failover est l'interface réseau principal du serveur.
Le nom de la carte réseau enp3s0 peut varier et être enp4s0, eth0, en0...
Maintenant que vous avez ces informations là, vous les notez dans un coin.
Nous allons supprimer cloud-init :
apt remove cloud-init
La mise en place de l'IPv4
Il faut ensuite vider le dossier /etc/network/interfaces.d
Dans ce même dossier, vous allez créer un fichier /etc/network/interfaces.d/lo
qui contiendra :
auto lo
iface lo inet loopback
Puis vous créez un fichier du nom de votre carte réseau à côté du fichier lo. Pour moi il s'agira du fichier /etc/network/interfaces.d/enp3s0
auto enp3s0
allow-hotplug enp3s0
iface enp3s0 inet static
address 5.196.95.6
netmask 255.255.255.0
gateway 5.196.95.254
Vous remplacerez ici 5.196.95.6
et 5.196.95.254
. Le masque de sous réseau ne devrait pas changer, mais au cas ou vérifiez qu'il est s'agit d'un /24, sinon modifiez le en vous basant sur le tableau présent dans cet article wikipedia
Vous pouvez si vous le souhaitez relancer votre serveur. Un up/down du périphérique fera comme indiqué plus haut : votre serveur va s'attendre a une configuration DHCP et vous lui filer du static. Il risque de se perdre et de perdre sa configuration.
Mais vous pouvez aussi relancer plus tard votre serveur.
La mise en place de l'IPv6
Maintenant nous allons récupérer notre IPv6 présente sur le manager Kimsufi dans l'onglet IP. Il s'agit d'un /64.
Sur votre machine, vous allez désactiver l'autoconfiguration de l'IPv6. Pour cela, créez un fichier /etc/sysctl.d/10-ipv6 et ajoutez le contenu suivant :
net.ipv6.conf.all.autoconf=0
net.ipv6.conf.all.accept_ra=0
Puis appliquez le changement en tapant la commande sysctl -p
En se referent à la documentation d'OVHcloud à ce sujet Ensuite nous allons calculer l'IP de notre passerelle. Chez Kimsufi il s'agit d'une racine en /62 puis ensuite pleiiin de 00FF.
En gros vous conserver les 14 premiers caractères de votre adresse IPv6 (en excluant les ":"), sachant qu'une adresse IPv6 en /64 c'est 14 caractères.
Mon pool d'IPv6 est 2001:41d0:a:fe06::/64
, donc ma gateway est 2001:41d0:a:feFF:FF:FF:FF:FF
Heu... Mais lol, tu parle de 14 caractères mais toi t'en a 13. Tu nous prendrais pas pour des cons ?
Alors non 😉 mais pour l'IPv6, comme pour l'IPv4 d'ailleurs un bit nul n'a pas besoin d'être indiqué.
En IPv4, tapez ping 1.1
vous tomberez sur 1.0.0.1
(qui est d'ailleurs un serveur DNS de cloudflare). Donc pour économiser du temps d'ailleurs, au lieu de faire ping 8.8.8.8
, tapez ping 1.1
Et bien en IPv6 c'est pareil, les bits nul n'ont pas besoin d'être marqué.
Donc 2001:41d0:a:fe06::1
est en réalité 2001:41d0:000a:fe06:0000:0000:0000:0001
. (Je vous conseil d'ailleurs cet excellent outil pour pas vous casser le crâne.).
Vous voyez donc mes premiers 14 caractères ? Il s'agit donc de 2001:41d0:000a:fe
. Suite à cela nous allons rajouter FF:FF:FF:FF:FF
. L'IP ressemblera donc à 2001:41d0:000a:feFF:FF:FF:FF:FF
(ou à ça si vous l'avez passez dans "l'expender" : 2001:41d0:000a:feff:00ff:00ff:00ff:00ff
Ou encore à ça si vous l'avez fait compresser : 2001:41d0:a:feff:ff:ff:ff:ff
.
Maintenant que vous avez bien triturer votre pauvre IPv6, il va être temps de la mettre sur votre serveur.
Nous allons ajouter dans le fichier /etc/network/interfaces.d/enp3s0
les informations suivante :
iface enp3s0 inet6 static
address 2001:41d0:a:fe06::1
netmask 128
post-up /sbin/ip -f inet6 route add 2001:41d0:a:feFF:FF:FF:FF:FF dev enp3s0; /sbin/ip -f inet6 route add default via 2001:41d0:a:feFF:FF:FF:FF:FF
pre-down /sbin/ip -f inet6 route del 2001:41d0:a:feFF:FF:FF:FF:FF dev enp3s0; /sbin/ip -f inet6 route del default via 2001:41d0:a:feFF:FF:FF:FF:FF
En modifiant bien sur l'IP 2001:41d0:a:fe06::1
par la votre et l'IP 2001:41d0:a:feFF:FF:FF:FF:FF
avec celle calculé.
Maintenant vous pouvez relancer votre machine.
Une fois relancé, vous pouvez tapez la commande suivante pour tester votre IPv6 chez OVHcloud :
ping6 -c 4 2001:4860:4860::8888
Ou celle ci pour voir votre IP :
curl -6 https://ip.dryusdan.fr
Et voilà pour la configuration de l'IPv6 sur un Kimsufi 🙂
Ho, j'allais oublier : il faut sécuriser votre machine en IPv6 comme en IPv4. Donc définir à minima des règles iptables avec ip6tables
.
J'espère que ce tuto vous a plus.