Projet

Général

Profil

IPV6 » Historique » Révision 41

Révision 40 (pizzacoca, 29/06/2019 23:31) → Révision 41/45 (pizzacoca, 30/06/2019 01:00)

# IPV6 

 > source : Objectif IPv6 sur https://www.fun-mooc.fr 


 ## Références 
 [LISP Locator/Identifier Separation Protocol (**rfc7215**    pour les intimes)](https://tools.ietf.org/html/rfc7215) 

 ## La notation IPv6 

 * Ce qui la décrit [rfc4291](https://tools.ietf.org/html/rfc4291) 
 * Les recommandations d'utilisation [rfc5952](https://tools.ietf.org/html/rfc5952) 
 * Traduction IPv6 > IPv4 [rfc6052](https://tools.ietf.org/html/rfc6052) 
 * Le multicast [rfc7346](https://tools.ietf.org/html/rfc7346) 
 * Des recommandations de numérotation [rfc8064](https://tools.ietf.org/html/rfc8064) 

 Des liens :  
 > https://docs.oracle.com/cd/E19957-01/820-2982/ipv6-overview-10/ 

 ## Ecriture hexadécimale 

 * IPv6 = 128bits répartis en 8 paquets de 16 bits > écriture plus courte en hexadécimal 

 |Ecriture hexadécimal|Ecriture binaire|Base 10| 
 |----|----|----| 
 |0|0000|0| 
 |1|0001|1| 
 |2|0010|2| 
 |3|0011|3| 
 |4|0100|4| 
 |5|0101|5| 
 |6|0110|6| 
 |7|0111|7| 
 |8|1000|8| 
 |9|1001|9| 
 |a|1010|10| 
 |b|1011|11| 
 |c|1100|12| 
 |d|1101|13| 
 |e|1110|14| 
 |f|1111|15| 

 exemple : 

 |Ecriture hexadécimal|Ecriture binaire| 
 |----|----| 
 |1234|0001 0010 0011 0100| 
 |cdef|1100 1101 1110 1111| 
 |5678|0101 0110 0111 1000| 
 |89ab|1000 1001 1010 1011| 
 |1234|0001 0010 0011 0100| 
 |cdef|1100 1101 1110 1111| 
 |5678|0101 0110 0111 1000| 
 |89ab|1000 1001 1010 1011| 

 Pour faire des adresses courtes on n'écrit pas les bits de poids fort égaux à 0 (comme quand on écrit un nombre décimal) 
 2001:**0**db8:5600:**00**b0:**0000**:**0000**:**0000**:**00**10 
 2001:db8:5600:b0:0:0:0:10 
 Puis on enleve les octets nuls (possible une seule fois par adresse !) 
 2001:db8:5600:b0::10 

 ## Identification et Localisation 

 > Le masque, comme en IPv4, s'écrit pareil : on indique le nombre de bits commun aux machines contenues 

 **Exemple :** 
 **2001:db8**:5600:b0::/32 > le masque est composé des 32 premiers bits (les deux premiers paquets de 16 bits) 
 Description 

 |**16bits**|**32bits**|48bits|54bits|70bits|86bits|102bits|128bits| 
 |-----|-----|-----|-----|-----|-----|-----|-----| 
 |**paquet 1**|**paquet 2**|paquet 3|paquet 4|paquet 5|paquet 6|paquet 7|paquet 8| 
 |**2001**|**0db8**|5600|00b0|0000|0000|0000|0000| 




 > Des travaux sont en cours pour la séparation des fonctions d'identification et de localisation.RFC7215 
 > https://www.bortzmeyer.org/separation-identificateur-localisateur.html 

 > **Nota** 
 > Dans le cas d'une fonction de localisation séparée et très représentative de la topologie n'y a-t-il pas un danger de perte d'anonymat et/ou de contrôle ? 

 >> Complètement, puisque la partie réseau est utilisée pour router, on sait potentiellement exactement où ce réseau se situe. 

 ## 3 types d'adresse 

 IPv6 définit trois types d'adresse : 

 * **Unicast** 
 Identifie l'interface d'un nœud individuel. 
 ![](unicast.png) 


 * **Multicast** 
 Une adresse multidiffusion identifie un groupe d'interfaces, en règle générale sur des nœuds différents. Les paquets envoyés à l'adresse multidiffusion vont à tous les membres du groupe multidiffusion. 
 ![](multicast.png) 

 * **Anycast** 
 Identifie un groupe d'interfaces, en règle générale sur des nœuds différents. Les paquets envoyés à l'adresse anycast vont au nœud membre du groupe anycast le plus proche de l'expéditeur. 
 ![](anycast.png) 

 ## Adressages spécifiques  

 **( [rfc3513](https://tools.ietf.org/html/rfc3513) )** 

 |TYPE|binaire|IPv6|rfc|Commentaire| 
 |----------------|-------------|-------------|----------------------------------------------|------------------------------------------------------------| 
 |Non spécifiée     |00...0         |::/128         |                                                || 
 |Loopback          |00...01        |::1/128        |                                                || 
 |Multicast         |1111 1111      |ff00::/8       |                                                |Broadcast optimisé| 
 |Unicast LLA       |1111 1110 10 |fe80::/10      |[rfc3927](https://tools.ietf.org/html/rfc3927)|Link Local Address : destinées à un lien    ou domaine de diffusion type VLAN, non routées sur internet| 
 |Unicast ULA       |1111 1101      |fd00::/8       |[rfc4193](https://tools.ietf.org/html/rfc4193)|Unique Local unicast Address : destinées à un usage local| 
 |Unicast global    |001            |2000::/3       |                                                |2xxx ou 3xxx = adresses publiques actuellement déployées| 
 |Transition IPv4 |               |2002::/16      |                                                |Préfixe réservé pour la transition    IPv6->IPv4| 
 |Documentation     |               |2001:db8::/32|[rfc5737](https://tools.ietf.org/html/rfc5737)|Pour de la doc !| 
 |Adresses locales|               |fc00::/7       |[rfc4193](https://tools.ietf.org/html/rfc4193)|Pour son lan| 

 Quelques préfixes du [rfc3587](https://tools.ietf.org/html/rfc3587) sont réservés. voir [rfc6890](https://tools.ietf.org/html/rfc6890) et [rfc8190](https://tools.ietf.org/html/rfc8190) 

 ---- 

 # Multicast 

 **Deux types de'adresses multicast** 
 * Modele **ASM** Any Source Multicast > un récepteur s'abonne à un group eet reccoit toutes les sources pour ce groupe (Visio conférences ...) 
 * Modèle **SSM** Source-Specific Multicast > les sources sont connues à l'avance et les récepteurs s'abonne à un groupe et un ensemble de sources (TV, radio ...) 

 Adresses multicast : **ff00::/8** 

 | 8 bits | 4 bits     | 4 bits|112 bits| 
 |--------|---|----|----| 
 | f    f    0 0 |0RPT|SCOPE|Identifiant de Groupe| 
 |1111 1111|0000|0000|000000000000000000000000000000000000000000000000000000000000000000000000000000000001 1111 1111 000000000000000000000000| 



 ff00:OPRT-SCOPE::/8 


 |ORTP|fonction| 
 |----|---| 
 |0     |bit de poids fort pas encore assigné| 
 |P     |type adresse | 
 |R     |type adresse | 
 |T     |1=adresse permanente 0= adresse temporaire| 

 |SCOPE|Confinement du datagrame| 
 |-----|---| 
 |0      |Reserved| 
 |1      |Interface-Local scope| 
 |2      |Link-Local scope| 
 |3      |Realm-Local scope| 
 |4      |Admin-Local scope| 
 |5      |Site-Local scope| 
 |8      |Organization-Local scope| 
 |e      |Global scope| 
 |f      |Reserved| 


 TV & radios prendraient préfixe ff00::/12 donnés par l'IANA 

 ## rfc 3307 

 [**rfc3307**](https://tools.ietf.org/html/rfc3307) : Procédure pour l'allocation des adresses 

 ff01::101 Tous les serveurs NTP de la même interface 
 ff02::101 Tous les serveurs NTP sur le même lien 
 ff05::101 Tous les serveurs NTP sur le même site 
 ff0e::101 Tous les serveurs NTP de l'internet 

 

 ## Groupes d'identifiants 

 **0** 
 ff0x::    Réservé (x de 0 à f) 

 **Groupes d'interface noeuds : valeur à 1** 
 ff01::**1** Toutes les interfaces du noeud 
 ff02::**1** Tous les noeuds du lien 

 **Groupe d'interface routeurs : valeur à 2** 
 ff01::**2** Tous les routeurs du noeud 
 ff02::**2** Tous les routeurs du lien 
 ff05::**2** Tous les routeurs    du site 

 **Adresse multicast sollicitée** 

 **Découverte de voisins** 

 **ff02::1:ff00:0/104** adresse réservée qui est concaténée avec le /24 des bits faibles de l'adresse de l'interface 

  

 | 8 bits    |4 bits| | 4 bits|80 bits                    |         |      |      |      |             | 4 bits|80 bits| 8 bits| 24 bits| 
 |---------|------|-------|---------------------|-------|----|----|----|----------| |--------|---|----|----|----|----| 
 |           |0RPT          |0RPT|SCOPE|Identifiant de Groupe||poid faible|  
 |ff00       |    |SCOPE 0 |    |Identifiant de Groupe|         2 |                                                 1                                           |      | ff      |                     | 
 |**ff00** |**0** |**2**    |    **1**                |**f**    |**f**|1    |1     |f111                 | 
 |1111 1111|0000    |0000     |00000000........00001|1111     |1111|0001|0001|1111 0001 0001 0001| 1111|0000|0000|000000000000000000000000000000000000000000000000000000000000000000000000000000000001|1111 1111|| 

 **Correspondance avec adresses multicast niveau 2** 

 Le datagramme multicast IPv6 (niveau 3)est encapsulé dans une trame ethernet (niveau 2) 

 |Dest MAC @    |src MAC @|Eth Type|DONNEES (datagramme multicast IPv6)|CRC| 
 |------------|---------|--------|-----------------------------------|---| 
 |3333????????|           |          |ff0x::**90ab:cdef**                      |     | 

 Des MAC est déduit par concaténation avec les deux derniers octets de l'IPv6 : **3333:90ab:cdef** 

 

 ## Adresses SSM "Source Specific Multicast"