Outils pour utilisateurs

Outils du site


admin:procedures:ajouter-ipv6

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Dernière révisionLes deux révisions suivantes
admin:procedures:ajouter-ipv6 [2017/07/12 15:25] – [Configuration réseau sur les hotes] fpoulainadmin:procedures:ajouter-ipv6 [2020/06/08 23:06] – [Configuration réseau sur la VM] cpm
Ligne 1: Ligne 1:
 ====== Ajouter IPv6 à une VM ====== ====== Ajouter IPv6 à une VM ======
- 
 ===== Ajout de l'interface réseau ===== ===== Ajout de l'interface réseau =====
  
Ligne 9: Ligne 8:
 {{ :admin:procedures:capture_d_ecran_de_2017-07-12_16_53_35.png?direct&400 |}} {{ :admin:procedures:capture_d_ecran_de_2017-07-12_16_53_35.png?direct&400 |}}
  
-On fait « ajouter un matériel ». On sélectionne « network » et en source on sélection « default-ipv6 ».+On fait « ajouter un matériel ». On sélectionne « network » et en source on sélectionne « default NAT ».
  
-{{ :admin:procedures:capture_d_ecran_de_2017-07-12_16_54_05.png?direct&400 |}}+{{ admin:procedures:add-ipv6.png?direct&400 |}}
  
 Ensuite on valide et on redémarre la machine. Ensuite on valide et on redémarre la machine.
Ligne 17: Ligne 16:
 ===== Configuration réseau sur la VM ===== ===== Configuration réseau sur la VM =====
  
-Pour découvrir l'IP de l'interfaceon ajoute +Se connecter sur l'host, faire virsh edit "le-nom-de-la-vm"chercher les deux sections "<interface type='network'>" puis éditer la seconde section comme suit : 
-<code conf /etc/network/interfaces+ 
-# The ipv6 network interface +<code> 
-allow-hotplug ens8 +remplacer <interface type='network'> en <interface type='ethernet'> 
-iface ens8 inet6 auto+supprimmer la balise <source …> 
 +ajouter une balise <target dev='vm-ipv6-nomVM'/>
 </code> </code>
-et on redémarre l'interface : 
-  ifdown ens8; ifup ens8 
  
-Alors via ''ip a'' on a une adresse locale +Cela devrait donner une section similaire : 
-    inet6 fe80::5054:ff:fe4c:783f/64 scope link+<code> 
 +    <interface type='ethernet'> 
 +      <mac address='52:54:00:c3:b9:c7'/> 
 +      <target dev='vm-ipv6-mail'/> 
 +      <model type='rtl8139'/> 
 +      <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/> 
 +    </interface> 
 +</code>
  
-On retient le suffixe : ''5054:ff:fe4c:783f''.+Sauvegarder et quitter, virsh shutdown le-nom-de-la-vm, virsh start le-nom-de-la-vm.
  
-Le préfixe dérive de l'hote ''2a01:4f8:10b:c41'' pour maine et ''2a01:4f8:10b:c42'' pour coon.+Récupérer l'adresse link-local côté host : 
 +<code> 
 +=(^-^)=root@coon:~# ip a show vm-ipv6-mail | grep inet6 
 +    inet6 fe80::fc54:ff:fec3:b9c7/64 scope link  
 +</code>
  
-Dans notre cas on est sur coon donc l'ip sera ''2a01:4f8:10b:c42:5054:ff:fe4c:783f''.+Se connecter à la VM : 
 + 
 +Récupérer le suffix ipv4 (ici 57): 
 +<code> 
 +=(^-^)=root@mail:~# ip a | grep 192 
 +    inet 192.168.1.57/24 brd 192.168.1.255 scope global ens3 
 +</code> 
 + 
 +Configurer l'interface ens8 comme suit (ajouter une ipv6 :c42::suffix_ipv4 et une seconde en post-up :c41::suffix_ipv4 (dans ce cas de coon la principale est en c42 et la secondaire en c41, pour maine c'est l'inverse) et mettre en gateway l'adresse link-local notée précédement) : 
 + 
 +<code> 
 +vim /etc/network/interfaces
  
-On défini alors ainsi l'interface : 
-<code conf /etc/network/interfaces> 
-# The ipv6 network interface 
 allow-hotplug ens8 allow-hotplug ens8
 iface ens8 inet6 static iface ens8 inet6 static
-    address 2a01:4f8:10b:c42:5054:ff:fe4c:783f/64 +    address 2a01:4f8:10b:c42::57/128 
-    gateway 2a01:4f8:10b:c42::1+    gateway fe80::fc54:ff:fec3:b9c7 
 +    post-up ip -6 address add 2a01:4f8:10b:c41::57/128 dev ens8 
 + 
 +</code> 
 +puis : 
 +<code> 
 +ifdown ens8; ifup ens8
 </code> </code>
  
-Et on redémarre l'interface. +Copier le dernier paquet firewall-chapril sur la vm et l'installer.
-  ifdown ens8; ifup ens8 +
-===== Configuration réseau sur les hotes et le DNS =====+
  
-On doit ajouter les routes IPv6 dans les hooks libvirt, sur les deux hotes +Par exemplecela donne cette conf firehol sur mail 
-<code bash /etc/libvirt/hooks/network> +<code
-[...+=(^-^)=root@mail:~# cat /etc/firehol/firehol.conf | grep -v '#' | grep -v '^$' 
-                #lamp +ipv6 interface any v6interop proto icmpv6 
-                /sbin/ip -6 route add 2a01:4f8:10b:c42:5054:ff:fe4c:783f dev virbr1 +    client ipv6neigh accept 
-[...] +    server ipv6neigh accept 
-                #lamp +    policy return 
-                /sbin/ip -6 route del 2a01:4f8:10b:c42:5054:ff:fe4c:783f dev virbr1+interface ens3 dhcp 
 +    policy return 
 +    client dhcp accept 
 +interface "ens3 ens8" internal_trafic src4 "192.168.1.0/24 " dst4 192.168.1.57 src6 "2a01:4f8:10b:c41::/64 2a01:4f8:10b:c42::/64" dst6 "2a01:4f8:10b:c42::57 2a01:4f8:10b:c41::57" 
 +    policy reject 
 +    client dhcp accept 
 +    server ICMP accept 
 +    server ICMPV6 accept 
 +    server smtp accept 
 +    server ssh accept 
 +    server icinga accept 
 +    source /etc/firehol/firehol-lan2me.conf 
 +    client all accept 
 +interface "ens3 ens8" external_trafic src4 not "${UNROUTABLE_IPV4} 192.168.1.0/24 " dst4 192.168.1.57 src6 not "${UNROUTABLE_IPV6} 2a01:4f8:10b:c41::/64 2a01:4f8:10b:c42::/64" dst6 "2a01:4f8:10b:c42::57 2a01:4f8:10b:c41::57" 
 +    policy drop 
 +    server ICMPV6 accept 
 +    source /etc/firehol/firehol-ext2me.conf 
 +    client all accept
 </code> </code>
  
-Et dans la zone DNS:+Noter l'adresse link-local de la vm : 
 +<code> 
 +=(^-^)=root@mail:~# ip -6 a | grep fe80 
 +    inet6 fe80::5054:ff:fec3:b9c7/64 scope link 
 +</code> 
 + 
 +Retourner sur le host, éditer /etc/libvirt/hooks/qemu et ajouter une section comme suit (avec les deux adresses IP précédement choisie et l'adresse link-local de la vm et l'interface tap de la vm) : 
 + 
 +<code> 
 +        "mail"
 +                case "$action" in 
 +                        "started"
 +                /sbin/ip route add 2a01:4f8:10b:c42::57/128 via fe80::5054:ff:fec3:b9c7 dev vm-ipv6-mail 
 +                /sbin/ip route add 2a01:4f8:10b:c41::57/128 via fe80::5054:ff:fec3:b9c7 dev vm-ipv6-mail 
 +                        ;; 
 +            "stopped"
 +                /sbin/ip route del 2a01:4f8:10b:c42::57/128 via fe80::5054:ff:fec3:b9c7 dev vm-ipv6-mail 
 +                /sbin/ip route del 2a01:4f8:10b:c41::57/128 via fe80::5054:ff:fec3:b9c7 dev vm-ipv6-mail 
 +            ;; 
 +                                *) 
 +                            echo action $action not supported 
 +                            exit 0 
 +                    ;; 
 +            esac 
 + 
 +</code> 
 + 
 +Aller sur l'hôte opposé, éditer /etc/libvirt/hooks/network et ajouter les lignes suivantes dans les section started et stopped : 
 + 
 +<code> 
 +started : 
 +                # mail 
 +                /sbin/ip route add 2a01:4f8:10b:c42::57/128 via fe80::5054:ff:fe3c:686 dev virbr0 
 +                /sbin/ip route add 2a01:4f8:10b:c41::57/128 via fe80::5054:ff:fe3c:686 dev virbr0 
 + 
 +stopped : 
 +                # mail 
 +                /sbin/ip route del 2a01:4f8:10b:c42::57/128 via fe80::5054:ff:fe3c:686 dev virbr0 
 +                /sbin/ip route del 2a01:4f8:10b:c41::57/128 via fe80::5054:ff:fe3c:686 dev virbr0 
 + 
 +</code> 
 + 
 +<note important>L'adresse fe80 en via correspond à l'adresse fe80 associée à l'interface virbr0 de l'hôte hebergeant la vm (à lire avec ip -6 r).</note> 
 + 
 +Puis exécuter les deux lignes ip route add ajoutée sur l'hôte opposé. 
 + 
 +Ensuite sur la machine [[admin:machines_virtuelles:dns|dns]], on ajoute dans la zone DNS:
 <code  conf/etc/bind/zones/masters/vm.include> <code  conf/etc/bind/zones/masters/vm.include>
-lamp.cluster        AAAA    2a01:4f8:10b:c42:5054:ff:fe4c:783f+mail.cluster        AAAA    2a01:4f8:10b:c42::57
 </code> </code>
  
 Puis un reload: Puis un reload:
   rndc reload chapril.org in internal   rndc reload chapril.org in internal
 +  
 +Sur les deux hosts, modifier la configuration firehol dans /etc/firehol/firehol.conf pour ajouter vm-ipv6-mail dans la variable //vmIp6Ifaces//.
 +Puis recharger le firewall avec un firehol start.
admin/procedures/ajouter-ipv6.txt · Dernière modification : 2021/05/15 20:26 de cpm