Projet

Général

Profil

IPV6 » Historique » Version 44

pizzacoca, 30/06/2019 01:04

1 1 florian
# IPV6
2
3
> source : Objectif IPv6 sur https://www.fun-mooc.fr
4
5
6 6 pizzacoca
## Références
7 4 pizzacoca
[LISP Locator/Identifier Separation Protocol (**rfc7215**  pour les intimes)](https://tools.ietf.org/html/rfc7215)
8
9 6 pizzacoca
## La notation IPv6
10 4 pizzacoca
11
* Ce qui la décrit [rfc4291](https://tools.ietf.org/html/rfc4291)
12
* Les recommandations d'utilisation [rfc5952](https://tools.ietf.org/html/rfc5952)
13
* Traduction IPv6 > IPv4 [rfc6052](https://tools.ietf.org/html/rfc6052)
14
* Le multicast [rfc7346](https://tools.ietf.org/html/rfc7346)
15 5 pizzacoca
* Des recommandations de numérotation [rfc8064](https://tools.ietf.org/html/rfc8064)
16 4 pizzacoca
17 11 pizzacoca
Des liens : 
18
> https://docs.oracle.com/cd/E19957-01/820-2982/ipv6-overview-10/
19
20 12 pizzacoca
## Ecriture hexadécimale
21 8 pizzacoca
22 33 youpi
* IPv6 = 128bits répartis en 8 paquets de 16 bits > écriture plus courte en hexadécimal
23 1 florian
24 10 pizzacoca
|Ecriture hexadécimal|Ecriture binaire|Base 10|
25
|----|----|----|
26
|0|0000|0|
27
|1|0001|1|
28
|2|0010|2|
29
|3|0011|3|
30
|4|0100|4|
31
|5|0101|5|
32
|6|0110|6|
33
|7|0111|7|
34
|8|1000|8|
35
|9|1001|9|
36
|a|1010|10|
37
|b|1011|11|
38
|c|1100|12|
39
|d|1101|13|
40
|e|1110|14|
41
|f|1111|15|
42 7 pizzacoca
43 8 pizzacoca
exemple :
44 1 florian
45 8 pizzacoca
|Ecriture hexadécimal|Ecriture binaire|
46
|----|----|
47
|1234|0001 0010 0011 0100|
48
|cdef|1100 1101 1110 1111|
49
|5678|0101 0110 0111 1000|
50
|89ab|1000 1001 1010 1011|
51
|1234|0001 0010 0011 0100|
52 1 florian
|cdef|1100 1101 1110 1111|
53
|5678|0101 0110 0111 1000|
54
|89ab|1000 1001 1010 1011|
55 12 pizzacoca
56 33 youpi
Pour faire des adresses courtes on n'écrit pas les bits de poids fort égaux à 0 (comme quand on écrit un nombre décimal)
57 13 pizzacoca
2001:**0**db8:5600:**00**b0:**0000**:**0000**:**0000**:**00**10
58 33 youpi
2001:db8:5600:b0:0:0:0:10
59 13 pizzacoca
Puis on enleve les octets nuls (possible une seule fois par adresse !)
60 33 youpi
2001:db8:5600:b0::10
61 13 pizzacoca
62 25 florian
## Identification et Localisation
63
64
> Le masque, comme en IPv4, s'écrit pareil : on indique le nombre de bits commun aux machines contenues
65
66
**Exemple :**
67 33 youpi
**2001:db8**:5600:b0::/32 > le masque est composé des 32 premiers bits (les deux premiers paquets de 16 bits)
68 25 florian
Description
69
70
|**16bits**|**32bits**|48bits|54bits|70bits|86bits|102bits|128bits|
71
|-----|-----|-----|-----|-----|-----|-----|-----|
72 33 youpi
|**paquet 1**|**paquet 2**|paquet 3|paquet 4|paquet 5|paquet 6|paquet 7|paquet 8|
73 25 florian
|**2001**|**0db8**|5600|00b0|0000|0000|0000|0000|
74
75
76
77
78 1 florian
> Des travaux sont en cours pour la séparation des fonctions d'identification et de localisation.RFC7215
79
> https://www.bortzmeyer.org/separation-identificateur-localisateur.html
80 25 florian
81
> **Nota**
82
> 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 ?
83
84 33 youpi
>> Complètement, puisque la partie réseau est utilisée pour router, on sait potentiellement exactement où ce réseau se situe.
85
86 12 pizzacoca
## 3 types d'adresse
87
88
IPv6 définit trois types d'adresse :
89
90 1 florian
* **Unicast**
91 8 pizzacoca
Identifie l'interface d'un nœud individuel.
92 23 florian
![](unicast.png)
93 1 florian
94
95 6 pizzacoca
* **Multicast**
96
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.
97
![](multicast.png)
98
99
* **Anycast**
100
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.
101
![](anycast.png)
102
103 28 florian
## Adressages spécifiques 
104 1 florian
105 28 florian
**( [rfc3513](https://tools.ietf.org/html/rfc3513) )**
106 1 florian
107 6 pizzacoca
|TYPE|binaire|IPv6|rfc|Commentaire|
108 31 florian
|----------------|-------------|-------------|----------------------------------------------|------------------------------------------------------------|
109
|Non spécifiée   |00...0       |::/128       |                                              ||
110
|Loopback        |00...01      |::1/128      |                                              ||
111
|Multicast       |1111 1111    |ff00::/8     |                                              |Broadcast optimisé|
112
|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|
113 33 youpi
|Unicast ULA     |1111 1101    |fd00::/8     |[rfc4193](https://tools.ietf.org/html/rfc4193)|Unique Local unicast Address : destinées à un usage local|
114 32 florian
|Unicast global  |001          |2000::/3     |                                              |2xxx ou 3xxx = adresses publiques actuellement déployées|
115
|Transition IPv4 |             |2002::/16    |                                              |Préfixe réservé pour la transition  IPv6->IPv4|
116 31 florian
|Documentation   |             |2001:db8::/32|[rfc5737](https://tools.ietf.org/html/rfc5737)|Pour de la doc !|
117
|Adresses locales|             |fc00::/7     |[rfc4193](https://tools.ietf.org/html/rfc4193)|Pour son lan|
118 26 florian
119 29 florian
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)
120 34 pizzacoca
121 40 pizzacoca
----
122
123 34 pizzacoca
# Multicast
124
125
**Deux types de'adresses multicast**
126
* Modele **ASM** Any Source Multicast > un récepteur s'abonne à un group eet reccoit toutes les sources pour ce groupe (Visio conférences ...)
127
* 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 ...)
128
129
Adresses multicast : **ff00::/8**
130
131 35 pizzacoca
| 8 bits | 4 bits   | 4 bits|112 bits|
132
|--------|---|----|----|
133
| f  f  0 0 |0RPT|SCOPE|Identifiant de Groupe|
134 44 pizzacoca
|1111 1111|0000|0000|000000000...00000000000001 1111 1111 000000000000000000000000|
135 1 florian
136 35 pizzacoca
137
138
ff00:OPRT-SCOPE::/8
139
140
141
|ORTP|fonction|
142
|----|---|
143
|0   |bit de poids fort pas encore assigné|
144
|P   |type adresse |
145
|R   |type adresse |
146
|T   |1=adresse permanente 0= adresse temporaire|
147
148
|SCOPE|Confinement du datagrame|
149
|-----|---|
150
|0    |Reserved|
151
|1    |Interface-Local scope|
152
|2    |Link-Local scope|
153
|3    |Realm-Local scope|
154
|4    |Admin-Local scope|
155
|5    |Site-Local scope|
156
|8    |Organization-Local scope|
157
|e    |Global scope|
158
|f    |Reserved|
159
160 1 florian
161 36 pizzacoca
TV & radios prendraient préfixe ff00::/12 donnés par l'IANA
162
163
## rfc 3307
164
165
[**rfc3307**](https://tools.ietf.org/html/rfc3307) : Procédure pour l'allocation des adresses
166
167
ff01::101 Tous les serveurs NTP de la même interface
168
ff02::101 Tous les serveurs NTP sur le même lien
169
ff05::101 Tous les serveurs NTP sur le même site
170
ff0e::101 Tous les serveurs NTP de l'internet
171
172
## Groupes d'identifiants
173
174
**0**
175
ff0x::  Réservé (x de 0 à f)
176
177
**Groupes d'interface noeuds : valeur à 1**
178
ff01::**1** Toutes les interfaces du noeud
179
ff02::**1** Tous les noeuds du lien
180
181
**Groupe d'interface routeurs : valeur à 2**
182
ff01::**2** Tous les routeurs du noeud
183
ff02::**2** Tous les routeurs du lien
184
ff05::**2** Tous les routeurs  du site
185
186 38 pizzacoca
**Adresse multicast sollicitée**
187 36 pizzacoca
188 37 pizzacoca
**Découverte de voisins**
189 36 pizzacoca
190 41 pizzacoca
**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
191 36 pizzacoca
192 42 pizzacoca
| 8 bits  |4 bits| 4 bits|80 bits              | 4 bits| 4 bits|    |    |           |
193
|---------|------|-------|---------------------|-------|-------|----|----|----------|
194
|         |0RPT  |SCOPE  |Identifiant de Groupe|       |       |    |    |                   |
195
|**ff00** |**0** |**2**  |  **1**              |**f**  |**f**  |1  |1   |f111               |
196
|1111 1111|0000  |0000   |00000000........00001|1111   |1111   |0001|0001|1111 0001 0001 0001|
197 37 pizzacoca
198 39 pizzacoca
**Correspondance avec adresses multicast niveau 2**
199 37 pizzacoca
200
Le datagramme multicast IPv6 (niveau 3)est encapsulé dans une trame ethernet (niveau 2)
201
202
|Dest MAC @  |src MAC @|Eth Type|DONNEES (datagramme multicast IPv6)|CRC|
203
|------------|---------|--------|-----------------------------------|---|
204 43 pizzacoca
|**3333**????????|         |        |ff0x::**90ab:cdef**                    |   |
205 37 pizzacoca
206 1 florian
Des MAC est déduit par concaténation avec les deux derniers octets de l'IPv6 : **3333:90ab:cdef**
207 39 pizzacoca
208
## Adresses SSM "Source Specific Multicast"