Difference between revisions of "Direccionamiento-Fundamentos"
From Livre IPv6
(New page: El formato y la representación de las direcciones son las modificaciones más visibles para el usuario experimentado y el ingeniero de la red en esta nueva versión del protocolo. Aunque ...) |
|||
Line 1: | Line 1: | ||
− | + | = Aspectos fundamentales de direccionamiento IPv6 = | |
− | + | == <div id="representacion">Representación de direcciones == | |
+ | El formato y la representación de las direcciones son las modificaciones más notables para el usuario experimentado y para el ingeniero de red en esta nueva versión del protocolo: las direcciones en IPv6 también son fijas pero pasan de 32 a 128 bits. Aunque los principios son muy similares a los utilizados en IPv4, en una primera instancia el nuevo direccionamiento parece mucho más complejo. Resulta interesante conocer los principios y las reglas de atribución antes de entrar en los detalles del protocolo. | ||
− | + | El presente capítulo muestra los distintos tipos de direcciones. Explica en detalle el plan de direccionamiento agregado que ha sido elegido para construir la Internet IPv6. También describe la forma de constituir una dirección IPv6. | |
− | == <div id="representacion">Representación de direcciones == | + | |
+ | = Aspectos fundamentales del direccionamiento IPv6= | ||
+ | |||
+ | ==<div id="representacion">Representación de direcciones == | ||
+ | |||
+ | La representación textual de una dirección IPv6 se efectúa dividiendo la palabra de 128 bits en 8 palabras de 16 bits en formato hexadecimal, separadas por el caracter ":". Por ejemplo: | ||
+ | |||
+ | <tt>2001:0DB8:0000:0000:0400:A987:6543:210F</tt> | ||
+ | |||
+ | No es necesario escribir los ceros a la izquierda de un campo: | ||
+ | |||
+ | <tt>2001:DB8:0:0:400:A987:6543:210F</tt> | ||
+ | |||
+ | Además, varios campos nulos consecutivos, pueden abreviarse como "::". Así, la dirección anterior puede escribirse como: | ||
+ | |||
+ | <tt>2001:DB8::400:A987:6543:210F</tt> | ||
+ | |||
+ | Naturalmente, para evitar ambigüedades, la abreviación "::" sólo puede usarse una vez en una dirección. Los casos extremos son la dirección indefinida (utilizada para designar las rutas por omisión), que tiene todos los bits en cero y que se escribe de manera compacta como: | ||
+ | |||
+ | <tt>::</tt> | ||
+ | |||
+ | y la dirección de bucle local (''loopback''), equivalente al prefijo <tt>127/8</tt> en IPv4, en la que todos los bits son cero excepto el último. Ésta se escribe de forma compacta como: | ||
+ | |||
+ | <tt>::1</tt> | ||
+ | |||
+ | La representación de prefijos de red IPv6 es similar a la notación CIDR (RFC 1519) para los prefijos IPv4. Así, un prefijo IPv6 sigue el formato representado por la notación: | ||
+ | |||
+ | dirección-ipv6/longitud-del-prefijo-en-bits | ||
+ | |||
+ | Se permite el uso de formatos abreviados con "::" | ||
+ | |||
+ | <tt>2001:0DB8:7654:3210:0000:0000:0000:0000/64 | ||
+ | 2001:DB8:7654:3210:0:0:0:0/64 | ||
+ | 2001:DB8:7654:3210::/64</tt> | ||
+ | |||
+ | Debe tenerse precaución al utilizar esta notación con prefijos que no terminan en un bloque de 16 bits. Por ejemplo, el prefijo <tt>3EDC:BA98:7654:3::/56</tt> equivale en realidad a <tt>3EDC:BA98:7654:0000::/56</tt> pues se escribe <tt>3EDC:BA98:7654:0003::/56</tt>. | ||
+ | |||
+ | Es posible combinar el prefijo de red con y el identificador de la interfaz en una sola notacion. Así, esta dirección IPv6 | ||
+ | <tt>2001:DB8:7654:3210:945:1321:ABA8:F4E2/64</tt> | ||
+ | indica que el prefijo de red está constituido por los primeros 64 bits. | ||
+ | |||
+ | {{HorsTexte|Aprender a derrochar|Dada su longitud, una buena regla de gestión consiste en relajar las restricciones sobre las longitudes del prefijo. Así, al utilizar múltiplos de 4 cuando sea posible, permite tener un prefijo que cabe en el valor desplegado. En el ejemplo siguiente, como 47 no es múltiplo de 4, <tt>2001:DB0:1234::/47</tt>, representa los prefijos que comienzan por <tt>2001:DB0:1234</tt> y por <tt>2001:DB0:1235</tt>}} | ||
+ | |||
+ | Estas representaciones pueden parecer mucho más complejas que con IPv4, pero en realidad, direcciones lógicas o concisas se forman a través de reglas precisas. Estas reglas facilitan fuertemente la manipulación y la memorización de direcciones, como se verá más adelante (''cf'' Direccionamiento global). | ||
+ | |||
+ | --- | ||
+ | |||
+ | su asignación está definida por reglas estrictas, lo que facilita su memorización. Además, por las funcionalidades de auto-configuración resulta extremadamente raro, hasta para un ingeniero en redes, manipularlas directamente. | ||
+ | |||
+ | Dicho lo anterior, en ocasiones es necesario manipular las direcciones IPv6 literalmente. El caracter ":" utilizado para separa los bloques, puede crear ambigüedades. Ese es el caso, por ejemplo, con las URL en las que también se puede utilizar para especificar el número de puerto. Así, la URL: | ||
+ | |||
+ | <tt><nowiki>http://2001:1234:12::1:8000/</nowiki></tt> | ||
+ | |||
+ | podría representar tanto el puerto 8000 en el dispositivo con dirección IPv6 <tt>2001:1234:12::1</tt>, como el dispositivo <tt>2001:1234:12::1:8000</tt> utilizando el puerto por omisión. Para evitar esta ambigüedad, el RFC 2732 propone delimitar la dirección IPv6 entre "[ ]". Dependiendo del caso, la dirección precedente se escribiría: | ||
+ | |||
+ | <tt><nowiki>http://[2001:1234:12::1]:8000/</nowiki></tt> | ||
+ | |||
+ | o | ||
+ | |||
+ | <tt><nowiki>http://[2001:1234:12::1:8000]/</nowiki></tt> | ||
+ | |||
+ | Esta representación puede extenderse a otros dominios, como X-window o al protocolo de señalización para telefonía SIP. | ||
+ | --- | ||
+ | |||
+ | |||
+ | |||
+ | Dans certains cas, une adresse (voire plusieurs adresses) IPv4 peut être contenue dans une adresse IPv6. Pour les faire ressortir, la notation classique d'IPv4, c'est à dire 4 octets en représentation décimale séparés par des points, peut être utilisée au sein d'une adresse IPv6. Ainsi : | ||
+ | |||
+ | <tt>::128.12.13.14</tt> | ||
+ | |||
+ | représente une adresse IPv6 composée de 96 bits à 0 suivis des 32 bits de l'adresse IPv4 <tt>128.12.13.14</tt> | ||
+ | |||
+ | |||
+ | Il est pourtant parfois nécessaire de manipuler littéralement des adresses IPv6. Le caractère ":" utilisé pour séparer les mots peut créer des ambiguïtés. C'est le cas avec les URL où il est aussi utilisé pour indiquer le numéro de port. Ainsi l'URL | ||
+ | |||
+ | <tt><nowiki>http://2001:DB8:12::1:8000/</nowiki></tt> | ||
+ | |||
+ | peut aussi bien indiquer le port 8000 sur la machine ayant l'adresse IPv6 2001:DB8:12::1, que la machine 2001:DB8:12::1:8000 en utilisant le port par défaut. Pour lever cette ambiguïté, le RFC 2732 propose d'inclure l'adresse IPv6 entre "[ ]". L'adresse précédente s'écrirait : | ||
+ | |||
+ | <tt><nowiki>http://[2001:DB8:12::1]:8000/</nowiki></tt> | ||
+ | |||
+ | ou | ||
+ | |||
+ | <tt><nowiki>http://[2001:DB8:12::1:8000]/</nowiki></tt> | ||
+ | |||
+ | suivant les cas. Cette représentation peut être étendue à d'autres domaines comme X-window ou au protocole de signalisation téléphonique SIP. | ||
+ | |||
+ | == Type des adresses == | ||
+ | |||
+ | IPv6 reconnaît trois types d'adresses : unicast, multicast et anycast. Le type d'adresse définit la cardinalité de la communication: à combien de destinataire doit être remis le paquet. | ||
+ | |||
+ | Le premier de ces types désigne de manière unique une interface. Un paquet envoyé à une telle adresse, sera donc remis à l'interface ainsi identifiée. Parmi les adresses unicast, on peut distinguer celles qui auront une portée globale, c'est-à-dire désignant sans ambiguïté une destination sur le réseau Internet et celles qui auront une portée locale (lien ou site). Ces dernières ne pourront pas être routées sur l'Internet c'est à dire qu'un paquet comportant une adresse de destination avec une portée locale sera ignoré et éliminé par un routeur de l'Internet. La portée d'une adresse indique en faite la limite de la propriété d'unicité. | ||
+ | |||
+ | Une adresse de type multicast désigne un groupe d'interfaces qui en général appartiennent à des noeuds différents pouvant être situés n'importe où dans l'Internet. Lorsqu'un paquet a pour destination une adresse de type multicast, il est acheminé par le réseau à toutes les interfaces membres de ce groupe. | ||
+ | |||
+ | Il faut noter qu'il n'y a plus d'adresses de type broadcast comme sous IPv4 ; elles sont remplacées par des adresses de type multicast. En effet, l'adresse de broadcast peut être émulée avec une adresse multicast en constituant un groupe qui comporte tous les noeuds. De plus, l'absence de broadcast évite les problèmes de saturation des réseaux locaux commutés. Ainsi un réseau IPV6 passe mieux en terme de facteur d'échelle sur ce type de réseau. | ||
+ | |||
+ | Le dernier type, anycast, est une officialisation de propositions faites pour IPv4 RFC 1546. Comme dans le cas du multicast, une adresse de type anycast désigne un groupe d'interfaces, la différence étant que lorsqu'un paquet a pour destination une telle adresse, il est acheminé à un des éléments du groupe et non pas à tous. C'est, par exemple, le plus proche au sens de la métrique des protocoles de routage. Cet adressage est principalement expérimental, voir [[Anycast|Adresses anycast]]. | ||
+ | |||
+ | Certains types d'adresses sont caractérisés par leur préfixe RFC 3513. Le tableau suivant (source : http://www.iana.org/assignments/ipv6-address-space) donne la liste de ces préfixes. La plage «réservée» du préfixe <tt>0::/8</tt> est utilisée pour les adresses spéciales (adresse indéterminée, de bouclage, mappée, compatible). On notera que plus de 70% de l'espace disponible n'a pas été alloué, ce qui permet de conserver toute latitude pour l'avenir. | ||
+ | |||
+ | |||
+ | {| | ||
+ | !Préfixe IPv6!!Allouer!!Référence | ||
+ | |-style="background:silver" | ||
+ | |<tt>0000::/8</tt>||[[Autres types d'adresses|Réservé pour la transition et loopback]]||RFC 3513 | ||
+ | |- | ||
+ | |<tt>0100::/8</tt>||Réservé||RFC 3513 | ||
+ | |-style="background:silver" | ||
+ | |<tt>0200::/7</tt>||Réservé (ex [[Autres types d'adresses#Les adresses NSAP|NSAP]])||RFC 4048 | ||
+ | |- | ||
+ | |<tt>0400::/6</tt>||Réservé (ex IPX)||RFC 3513 | ||
+ | |-style="background:silver" | ||
+ | |<tt>0800::/5</tt>||Réservé||RFC 3513 | ||
+ | |- | ||
+ | |<tt>1000::/4</tt>||Réservé||RFC 3513 | ||
+ | |-style="background:silver" | ||
+ | |<tt>2000::/3</tt>||[[Unicast Global]]||RFC 3513 | ||
+ | |- | ||
+ | |<tt>4000::/3</tt>||Réservé||RFC 3513 | ||
+ | |-style="background:silver" | ||
+ | |<tt>6000::/3</tt>||Réservé||RFC 3513 | ||
+ | |- | ||
+ | |<tt>8000::/3</tt>||Réservé||RFC 3513 | ||
+ | |-style="background:silver" | ||
+ | |<tt>A000::/3</tt>||Réservé||RFC 3513 | ||
+ | |- | ||
+ | |<tt>C000::/3</tt>||Réservé||RFC 3513 | ||
+ | |-style="background:silver" | ||
+ | |<tt>E000::/4</tt>||Réservé||RFC 3513 | ||
+ | |- | ||
+ | |<tt>F000::/5</tt>||Réservé||RFC 3513 | ||
+ | |-style="background:silver" | ||
+ | |<tt>F800::/6</tt>||Réservé||RFC 3513 | ||
+ | |- | ||
+ | |<tt>FC00::/7</tt>||[[Site-local#ula|Unique Local Unicast]]||RFC 4193 | ||
+ | |-style="background:silver" | ||
+ | |<tt>FE00::/9</tt> ||Réservé||RFC 3513 | ||
+ | |- | ||
+ | |<tt>FE80::/10</tt>||[[Lien-local]]||RFC 3513 | ||
+ | |-style="background:silver" | ||
+ | |<tt>FEC0::/10</tt>||Réservé||RFC 3879 | ||
+ | |- | ||
+ | |<tt>FF00::/8</tt>||Multicast||RFC 3513 | ||
+ | |} | ||
+ | |||
+ | Une interface possèdera généralement plusieurs adresses IPv6. En IPv4 ce comportement est exceptionnel, il est banalisé en IPv6. | ||
+ | |||
+ | |||
+ | |||
+ | = Adressage global : plan d'adressage agrégé = | ||
+ | |||
+ | Ce plan, proposée dans le RFC 3587, précise la structure d'adressage IPv6 définie dans le RFC 3513 en précisant les tailles de chacun des blocs. Il est géré de la même manière que CIDR en IPv4. Une adresse intègre trois niveaux de hiérarchie : | ||
+ | |||
+ | <tikz title="Adresses Globales"> | ||
+ | \clip (0.0, 0) rectangle (11.5,7); | ||
+ | % \draw[help lines] (0,0) grid (10,6); | ||
+ | |||
+ | % \draw (0, 6.6) node [right] {Global Unicast Address:}; | ||
+ | |||
+ | \draw (0,5) node [right, draw, shade, top color = yellow, minimum width=1cm, minimum height=1cm] {\tt{001}}; | ||
+ | \draw (1,5) node [right, draw, shade, top color = green, minimum width=3cm, minimum height=1cm] {Global Prefix}; | ||
+ | \draw (4,5) node [right, draw, shade, top color = blue, minimum width=1.5cm, minimum height=1cm] {SID}; | ||
+ | \draw (5.5,5) node [right, draw, shade, top color = black!50, minimum width=4.8cm, minimum height=1cm] {Interface ID}; | ||
+ | |||
+ | \draw (0.5, 5.7) node {\tiny{3}}; | ||
+ | \draw (2.5, 5.7) node {\tiny{45}}; | ||
+ | \draw (4.7, 5.7) node {\tiny{16}}; | ||
+ | \draw (8, 5.7) node {\tiny{64}}; | ||
+ | |||
+ | |||
+ | \draw [snake=brace, mirror snake] (0, 4.20) -- (4, 4.20) node [below, midway] {\tiny{ | ||
+ | \ifthenelse{\equal{francais}{true}}{Topologie Publique}{public topology}} | ||
+ | } node [below = 8pt, midway] {\tiny{given by the provider}} ; | ||
+ | \draw [snake=brace, mirror snake] (4, 4.20) -- (5.5, 4.20) node [below, midway] {\tiny{local topology}} node [below = 8pt, midway] {\tiny{assigned by network engineer}} ; | ||
+ | \draw [snake=brace, mirror snake] (5.5, 4.20) -- (10.3, 4.20) node [below, midway] {\tiny{link address}} node [below = 8pt, midway] {\tiny{auto or manual configuration}} ; | ||
+ | </tikz> | ||
+ | |||
+ | * une topologie publique (appelée '''Global Prefix''') codée sur 48 bits, allouée par le fournisseur d'accès; | ||
+ | * une topologie de site codée sur 16 bits (appelée '''Subnet ID'''). Ce champ permet de coder les numéros de sous réseau du site; | ||
+ | * un [[identifiant d'interface]] sur 64 bits (appelé '''Interface ID''') distinguant les différentes machines sur le lien. |
Revision as of 18:04, 1 April 2012
Contents
Aspectos fundamentales de direccionamiento IPv6
Representación de direcciones
El formato y la representación de las direcciones son las modificaciones más notables para el usuario experimentado y para el ingeniero de red en esta nueva versión del protocolo: las direcciones en IPv6 también son fijas pero pasan de 32 a 128 bits. Aunque los principios son muy similares a los utilizados en IPv4, en una primera instancia el nuevo direccionamiento parece mucho más complejo. Resulta interesante conocer los principios y las reglas de atribución antes de entrar en los detalles del protocolo.
El presente capítulo muestra los distintos tipos de direcciones. Explica en detalle el plan de direccionamiento agregado que ha sido elegido para construir la Internet IPv6. También describe la forma de constituir una dirección IPv6.
Aspectos fundamentales del direccionamiento IPv6
Representación de direcciones
La representación textual de una dirección IPv6 se efectúa dividiendo la palabra de 128 bits en 8 palabras de 16 bits en formato hexadecimal, separadas por el caracter ":". Por ejemplo:
2001:0DB8:0000:0000:0400:A987:6543:210F
No es necesario escribir los ceros a la izquierda de un campo:
2001:DB8:0:0:400:A987:6543:210F
Además, varios campos nulos consecutivos, pueden abreviarse como "::". Así, la dirección anterior puede escribirse como:
2001:DB8::400:A987:6543:210F
Naturalmente, para evitar ambigüedades, la abreviación "::" sólo puede usarse una vez en una dirección. Los casos extremos son la dirección indefinida (utilizada para designar las rutas por omisión), que tiene todos los bits en cero y que se escribe de manera compacta como:
::
y la dirección de bucle local (loopback), equivalente al prefijo 127/8 en IPv4, en la que todos los bits son cero excepto el último. Ésta se escribe de forma compacta como:
::1
La representación de prefijos de red IPv6 es similar a la notación CIDR (RFC 1519) para los prefijos IPv4. Así, un prefijo IPv6 sigue el formato representado por la notación:
dirección-ipv6/longitud-del-prefijo-en-bits
Se permite el uso de formatos abreviados con "::"
2001:0DB8:7654:3210:0000:0000:0000:0000/64
2001:DB8:7654:3210:0:0:0:0/64
2001:DB8:7654:3210::/64
Debe tenerse precaución al utilizar esta notación con prefijos que no terminan en un bloque de 16 bits. Por ejemplo, el prefijo 3EDC:BA98:7654:3::/56 equivale en realidad a 3EDC:BA98:7654:0000::/56 pues se escribe 3EDC:BA98:7654:0003::/56.
Es posible combinar el prefijo de red con y el identificador de la interfaz en una sola notacion. Así, esta dirección IPv6
2001:DB8:7654:3210:945:1321:ABA8:F4E2/64
indica que el prefijo de red está constituido por los primeros 64 bits.
Aprender a derrochar
Dada su longitud, una buena regla de gestión consiste en relajar las restricciones sobre las longitudes del prefijo. Así, al utilizar múltiplos de 4 cuando sea posible, permite tener un prefijo que cabe en el valor desplegado. En el ejemplo siguiente, como 47 no es múltiplo de 4, 2001:DB0:1234::/47, representa los prefijos que comienzan por 2001:DB0:1234 y por 2001:DB0:1235
Estas representaciones pueden parecer mucho más complejas que con IPv4, pero en realidad, direcciones lógicas o concisas se forman a través de reglas precisas. Estas reglas facilitan fuertemente la manipulación y la memorización de direcciones, como se verá más adelante (cf Direccionamiento global).
---
su asignación está definida por reglas estrictas, lo que facilita su memorización. Además, por las funcionalidades de auto-configuración resulta extremadamente raro, hasta para un ingeniero en redes, manipularlas directamente.
Dicho lo anterior, en ocasiones es necesario manipular las direcciones IPv6 literalmente. El caracter ":" utilizado para separa los bloques, puede crear ambigüedades. Ese es el caso, por ejemplo, con las URL en las que también se puede utilizar para especificar el número de puerto. Así, la URL:
http://2001:1234:12::1:8000/
podría representar tanto el puerto 8000 en el dispositivo con dirección IPv6 2001:1234:12::1, como el dispositivo 2001:1234:12::1:8000 utilizando el puerto por omisión. Para evitar esta ambigüedad, el RFC 2732 propone delimitar la dirección IPv6 entre "[ ]". Dependiendo del caso, la dirección precedente se escribiría:
http://[2001:1234:12::1]:8000/
o
http://[2001:1234:12::1:8000]/
Esta representación puede extenderse a otros dominios, como X-window o al protocolo de señalización para telefonía SIP.
---
Dans certains cas, une adresse (voire plusieurs adresses) IPv4 peut être contenue dans une adresse IPv6. Pour les faire ressortir, la notation classique d'IPv4, c'est à dire 4 octets en représentation décimale séparés par des points, peut être utilisée au sein d'une adresse IPv6. Ainsi :
::128.12.13.14
représente une adresse IPv6 composée de 96 bits à 0 suivis des 32 bits de l'adresse IPv4 128.12.13.14
Il est pourtant parfois nécessaire de manipuler littéralement des adresses IPv6. Le caractère ":" utilisé pour séparer les mots peut créer des ambiguïtés. C'est le cas avec les URL où il est aussi utilisé pour indiquer le numéro de port. Ainsi l'URL
http://2001:DB8:12::1:8000/
peut aussi bien indiquer le port 8000 sur la machine ayant l'adresse IPv6 2001:DB8:12::1, que la machine 2001:DB8:12::1:8000 en utilisant le port par défaut. Pour lever cette ambiguïté, le RFC 2732 propose d'inclure l'adresse IPv6 entre "[ ]". L'adresse précédente s'écrirait :
http://[2001:DB8:12::1]:8000/
ou
http://[2001:DB8:12::1:8000]/
suivant les cas. Cette représentation peut être étendue à d'autres domaines comme X-window ou au protocole de signalisation téléphonique SIP.
Type des adresses
IPv6 reconnaît trois types d'adresses : unicast, multicast et anycast. Le type d'adresse définit la cardinalité de la communication: à combien de destinataire doit être remis le paquet.
Le premier de ces types désigne de manière unique une interface. Un paquet envoyé à une telle adresse, sera donc remis à l'interface ainsi identifiée. Parmi les adresses unicast, on peut distinguer celles qui auront une portée globale, c'est-à-dire désignant sans ambiguïté une destination sur le réseau Internet et celles qui auront une portée locale (lien ou site). Ces dernières ne pourront pas être routées sur l'Internet c'est à dire qu'un paquet comportant une adresse de destination avec une portée locale sera ignoré et éliminé par un routeur de l'Internet. La portée d'une adresse indique en faite la limite de la propriété d'unicité.
Une adresse de type multicast désigne un groupe d'interfaces qui en général appartiennent à des noeuds différents pouvant être situés n'importe où dans l'Internet. Lorsqu'un paquet a pour destination une adresse de type multicast, il est acheminé par le réseau à toutes les interfaces membres de ce groupe.
Il faut noter qu'il n'y a plus d'adresses de type broadcast comme sous IPv4 ; elles sont remplacées par des adresses de type multicast. En effet, l'adresse de broadcast peut être émulée avec une adresse multicast en constituant un groupe qui comporte tous les noeuds. De plus, l'absence de broadcast évite les problèmes de saturation des réseaux locaux commutés. Ainsi un réseau IPV6 passe mieux en terme de facteur d'échelle sur ce type de réseau.
Le dernier type, anycast, est une officialisation de propositions faites pour IPv4 RFC 1546. Comme dans le cas du multicast, une adresse de type anycast désigne un groupe d'interfaces, la différence étant que lorsqu'un paquet a pour destination une telle adresse, il est acheminé à un des éléments du groupe et non pas à tous. C'est, par exemple, le plus proche au sens de la métrique des protocoles de routage. Cet adressage est principalement expérimental, voir Adresses anycast.
Certains types d'adresses sont caractérisés par leur préfixe RFC 3513. Le tableau suivant (source : http://www.iana.org/assignments/ipv6-address-space) donne la liste de ces préfixes. La plage «réservée» du préfixe 0::/8 est utilisée pour les adresses spéciales (adresse indéterminée, de bouclage, mappée, compatible). On notera que plus de 70% de l'espace disponible n'a pas été alloué, ce qui permet de conserver toute latitude pour l'avenir.
Préfixe IPv6
Allouer
Référence
0000::/8
Réservé pour la transition et loopback
RFC 3513
0100::/8
Réservé
RFC 3513
0200::/7
Réservé (ex NSAP)
RFC 4048
0400::/6
Réservé (ex IPX)
RFC 3513
0800::/5
Réservé
RFC 3513
1000::/4
Réservé
RFC 3513
2000::/3
Unicast Global
RFC 3513
4000::/3
Réservé
RFC 3513
6000::/3
Réservé
RFC 3513
8000::/3
Réservé
RFC 3513
A000::/3
Réservé
RFC 3513
C000::/3
Réservé
RFC 3513
E000::/4
Réservé
RFC 3513
F000::/5
Réservé
RFC 3513
F800::/6
Réservé
RFC 3513
FC00::/7
Unique Local Unicast
RFC 4193
FE00::/9
Réservé
RFC 3513
FE80::/10
Lien-local
RFC 3513
FEC0::/10
Réservé
RFC 3879
FF00::/8
Multicast
RFC 3513
Une interface possèdera généralement plusieurs adresses IPv6. En IPv4 ce comportement est exceptionnel, il est banalisé en IPv6.
Adressage global : plan d'adressage agrégé
Ce plan, proposée dans le RFC 3587, précise la structure d'adressage IPv6 définie dans le RFC 3513 en précisant les tailles de chacun des blocs. Il est géré de la même manière que CIDR en IPv4. Une adresse intègre trois niveaux de hiérarchie :
Figure : Adresses Globales
- une topologie publique (appelée Global Prefix) codée sur 48 bits, allouée par le fournisseur d'accès;
- une topologie de site codée sur 16 bits (appelée Subnet ID). Ce champ permet de coder les numéros de sous réseau du site;
- un identifiant d'interface sur 64 bits (appelé Interface ID) distinguant les différentes machines sur le lien.
El formato y la representación de las direcciones son las modificaciones más notables para el usuario experimentado y para el ingeniero de red en esta nueva versión del protocolo: las direcciones en IPv6 también son fijas pero pasan de 32 a 128 bits. Aunque los principios son muy similares a los utilizados en IPv4, en una primera instancia el nuevo direccionamiento parece mucho más complejo. Resulta interesante conocer los principios y las reglas de atribución antes de entrar en los detalles del protocolo.
El presente capítulo muestra los distintos tipos de direcciones. Explica en detalle el plan de direccionamiento agregado que ha sido elegido para construir la Internet IPv6. También describe la forma de constituir una dirección IPv6.
Aspectos fundamentales del direccionamiento IPv6
Representación de direcciones
La representación textual de una dirección IPv6 se efectúa dividiendo la palabra de 128 bits en 8 palabras de 16 bits en formato hexadecimal, separadas por el caracter ":". Por ejemplo:
2001:0DB8:0000:0000:0400:A987:6543:210F
No es necesario escribir los ceros a la izquierda de un campo:
2001:DB8:0:0:400:A987:6543:210F
Además, varios campos nulos consecutivos, pueden abreviarse como "::". Así, la dirección anterior puede escribirse como:
2001:DB8::400:A987:6543:210F
Naturalmente, para evitar ambigüedades, la abreviación "::" sólo puede usarse una vez en una dirección. Los casos extremos son la dirección indefinida (utilizada para designar las rutas por omisión), que tiene todos los bits en cero y que se escribe de manera compacta como:
::
y la dirección de bucle local (loopback), equivalente al prefijo 127/8 en IPv4, en la que todos los bits son cero excepto el último. Ésta se escribe de forma compacta como:
::1
La representación de prefijos de red IPv6 es similar a la notación CIDR (RFC 1519) para los prefijos IPv4. Así, un prefijo IPv6 sigue el formato representado por la notación:
dirección-ipv6/longitud-del-prefijo-en-bits
Se permite el uso de formatos abreviados con "::"
2001:0DB8:7654:3210:0000:0000:0000:0000/64
2001:DB8:7654:3210:0:0:0:0/64
2001:DB8:7654:3210::/64
Debe tenerse precaución al utilizar esta notación con prefijos que no terminan en un bloque de 16 bits. Por ejemplo, el prefijo 3EDC:BA98:7654:3::/56 equivale en realidad a 3EDC:BA98:7654:0000::/56 pues se escribe 3EDC:BA98:7654:0003::/56.
Es posible combinar el prefijo de red con y el identificador de la interfaz en una sola notacion. Así, esta dirección IPv6
2001:DB8:7654:3210:945:1321:ABA8:F4E2/64
indica que el prefijo de red está constituido por los primeros 64 bits.
Aprender a derrochar
Dada su longitud, una buena regla de gestión consiste en relajar las restricciones sobre las longitudes del prefijo. Así, al utilizar múltiplos de 4 cuando sea posible, permite tener un prefijo que cabe en el valor desplegado. En el ejemplo siguiente, como 47 no es múltiplo de 4, 2001:DB0:1234::/47, representa los prefijos que comienzan por 2001:DB0:1234 y por 2001:DB0:1235
Estas representaciones pueden parecer mucho más complejas que con IPv4, pero en realidad, direcciones lógicas o concisas se forman a través de reglas precisas. Estas reglas facilitan fuertemente la manipulación y la memorización de direcciones, como se verá más adelante (cf Direccionamiento global).
---
su asignación está definida por reglas estrictas, lo que facilita su memorización. Además, por las funcionalidades de auto-configuración resulta extremadamente raro, hasta para un ingeniero en redes, manipularlas directamente.
Dicho lo anterior, en ocasiones es necesario manipular las direcciones IPv6 literalmente. El caracter ":" utilizado para separa los bloques, puede crear ambigüedades. Ese es el caso, por ejemplo, con las URL en las que también se puede utilizar para especificar el número de puerto. Así, la URL:
http://2001:1234:12::1:8000/
podría representar tanto el puerto 8000 en el dispositivo con dirección IPv6 2001:1234:12::1, como el dispositivo 2001:1234:12::1:8000 utilizando el puerto por omisión. Para evitar esta ambigüedad, el RFC 2732 propone delimitar la dirección IPv6 entre "[ ]". Dependiendo del caso, la dirección precedente se escribiría:
http://[2001:1234:12::1]:8000/
o
http://[2001:1234:12::1:8000]/
Esta representación puede extenderse a otros dominios, como X-window o al protocolo de señalización para telefonía SIP.
---
Dans certains cas, une adresse (voire plusieurs adresses) IPv4 peut être contenue dans une adresse IPv6. Pour les faire ressortir, la notation classique d'IPv4, c'est à dire 4 octets en représentation décimale séparés par des points, peut être utilisée au sein d'une adresse IPv6. Ainsi :
::128.12.13.14
représente une adresse IPv6 composée de 96 bits à 0 suivis des 32 bits de l'adresse IPv4 128.12.13.14
Il est pourtant parfois nécessaire de manipuler littéralement des adresses IPv6. Le caractère ":" utilisé pour séparer les mots peut créer des ambiguïtés. C'est le cas avec les URL où il est aussi utilisé pour indiquer le numéro de port. Ainsi l'URL
http://2001:DB8:12::1:8000/
peut aussi bien indiquer le port 8000 sur la machine ayant l'adresse IPv6 2001:DB8:12::1, que la machine 2001:DB8:12::1:8000 en utilisant le port par défaut. Pour lever cette ambiguïté, le RFC 2732 propose d'inclure l'adresse IPv6 entre "[ ]". L'adresse précédente s'écrirait :
http://[2001:DB8:12::1]:8000/
ou
http://[2001:DB8:12::1:8000]/
suivant les cas. Cette représentation peut être étendue à d'autres domaines comme X-window ou au protocole de signalisation téléphonique SIP.
Type des adresses
IPv6 reconnaît trois types d'adresses : unicast, multicast et anycast. Le type d'adresse définit la cardinalité de la communication: à combien de destinataire doit être remis le paquet.
Le premier de ces types désigne de manière unique une interface. Un paquet envoyé à une telle adresse, sera donc remis à l'interface ainsi identifiée. Parmi les adresses unicast, on peut distinguer celles qui auront une portée globale, c'est-à-dire désignant sans ambiguïté une destination sur le réseau Internet et celles qui auront une portée locale (lien ou site). Ces dernières ne pourront pas être routées sur l'Internet c'est à dire qu'un paquet comportant une adresse de destination avec une portée locale sera ignoré et éliminé par un routeur de l'Internet. La portée d'une adresse indique en faite la limite de la propriété d'unicité.
Une adresse de type multicast désigne un groupe d'interfaces qui en général appartiennent à des noeuds différents pouvant être situés n'importe où dans l'Internet. Lorsqu'un paquet a pour destination une adresse de type multicast, il est acheminé par le réseau à toutes les interfaces membres de ce groupe.
Il faut noter qu'il n'y a plus d'adresses de type broadcast comme sous IPv4 ; elles sont remplacées par des adresses de type multicast. En effet, l'adresse de broadcast peut être émulée avec une adresse multicast en constituant un groupe qui comporte tous les noeuds. De plus, l'absence de broadcast évite les problèmes de saturation des réseaux locaux commutés. Ainsi un réseau IPV6 passe mieux en terme de facteur d'échelle sur ce type de réseau.
Le dernier type, anycast, est une officialisation de propositions faites pour IPv4 RFC 1546. Comme dans le cas du multicast, une adresse de type anycast désigne un groupe d'interfaces, la différence étant que lorsqu'un paquet a pour destination une telle adresse, il est acheminé à un des éléments du groupe et non pas à tous. C'est, par exemple, le plus proche au sens de la métrique des protocoles de routage. Cet adressage est principalement expérimental, voir Adresses anycast.
Certains types d'adresses sont caractérisés par leur préfixe RFC 3513. Le tableau suivant (source : http://www.iana.org/assignments/ipv6-address-space) donne la liste de ces préfixes. La plage «réservée» du préfixe 0::/8 est utilisée pour les adresses spéciales (adresse indéterminée, de bouclage, mappée, compatible). On notera que plus de 70% de l'espace disponible n'a pas été alloué, ce qui permet de conserver toute latitude pour l'avenir.
Préfixe IPv6
Allouer
Référence
0000::/8
Réservé pour la transition et loopback
RFC 3513
0100::/8
Réservé
RFC 3513
0200::/7
Réservé (ex NSAP)
RFC 4048
0400::/6
Réservé (ex IPX)
RFC 3513
0800::/5
Réservé
RFC 3513
1000::/4
Réservé
RFC 3513
2000::/3
Unicast Global
RFC 3513
4000::/3
Réservé
RFC 3513
6000::/3
Réservé
RFC 3513
8000::/3
Réservé
RFC 3513
A000::/3
Réservé
RFC 3513
C000::/3
Réservé
RFC 3513
E000::/4
Réservé
RFC 3513
F000::/5
Réservé
RFC 3513
F800::/6
Réservé
RFC 3513
FC00::/7
Unique Local Unicast
RFC 4193
FE00::/9
Réservé
RFC 3513
FE80::/10
Lien-local
RFC 3513
FEC0::/10
Réservé
RFC 3879
FF00::/8
Multicast
RFC 3513
Une interface possèdera généralement plusieurs adresses IPv6. En IPv4 ce comportement est exceptionnel, il est banalisé en IPv6.
Adressage global : plan d'adressage agrégé
Ce plan, proposée dans le RFC 3587, précise la structure d'adressage IPv6 définie dans le RFC 3513 en précisant les tailles de chacun des blocs. Il est géré de la même manière que CIDR en IPv4. Une adresse intègre trois niveaux de hiérarchie :
Figure : Adresses Globales
- une topologie publique (appelée Global Prefix) codée sur 48 bits, allouée par le fournisseur d'accès;
- une topologie de site codée sur 16 bits (appelée Subnet ID). Ce champ permet de coder les numéros de sous réseau du site;
- un identifiant d'interface sur 64 bits (appelé Interface ID) distinguant les différentes machines sur le lien.
La representación textual de una dirección IPv6 se efectúa dividiendo la palabra de 128 bits en 8 palabras de 16 bits en formato hexadecimal, separadas por el caracter ":". Por ejemplo:
2001:0DB8:0000:0000:0400:A987:6543:210F
No es necesario escribir los ceros a la izquierda de un campo:
2001:DB8:0:0:400:A987:6543:210F
Además, varios campos nulos consecutivos, pueden abreviarse como "::". Así, la dirección anterior puede escribirse como:
2001:DB8::400:A987:6543:210F
Naturalmente, para evitar ambigüedades, la abreviación "::" sólo puede usarse una vez en una dirección. Los casos extremos son la dirección indefinida (utilizada para designar las rutas por omisión), que tiene todos los bits en cero y que se escribe de manera compacta como:
::
y la dirección de bucle local (loopback), equivalente al prefijo 127/8 en IPv4, en la que todos los bits son cero excepto el último. Ésta se escribe de forma compacta como:
::1
La representación de prefijos de red IPv6 es similar a la notación CIDR (RFC 1519) para los prefijos IPv4. Así, un prefijo IPv6 sigue el formato representado por la notación:
dirección-ipv6/longitud-del-prefijo-en-bits
Se permite el uso de formatos abreviados con "::"
2001:0DB8:7654:3210:0000:0000:0000:0000/64 2001:DB8:7654:3210:0:0:0:0/64 2001:DB8:7654:3210::/64
Debe tenerse precaución al utilizar esta notación con prefijos que no terminan en un bloque de 16 bits. Por ejemplo, el prefijo 3EDC:BA98:7654:3::/56 equivale en realidad a 3EDC:BA98:7654:0000::/56 pues se escribe 3EDC:BA98:7654:0003::/56.
Es posible combinar el prefijo de red con y el identificador de la interfaz en una sola notacion. Así, esta dirección IPv6 2001:DB8:7654:3210:945:1321:ABA8:F4E2/64 indica que el prefijo de red está constituido por los primeros 64 bits.
Aprender a derrochar
Dada su longitud, una buena regla de gestión consiste en relajar las restricciones sobre las longitudes del prefijo. Así, al utilizar múltiplos de 4 cuando sea posible, permite tener un prefijo que cabe en el valor desplegado. En el ejemplo siguiente, como 47 no es múltiplo de 4, 2001:DB0:1234::/47, representa los prefijos que comienzan por 2001:DB0:1234 y por 2001:DB0:1235
Estas representaciones pueden parecer mucho más complejas que con IPv4, pero en realidad, direcciones lógicas o concisas se forman a través de reglas precisas. Estas reglas facilitan fuertemente la manipulación y la memorización de direcciones, como se verá más adelante (cf Direccionamiento global).
---
su asignación está definida por reglas estrictas, lo que facilita su memorización. Además, por las funcionalidades de auto-configuración resulta extremadamente raro, hasta para un ingeniero en redes, manipularlas directamente.
Dicho lo anterior, en ocasiones es necesario manipular las direcciones IPv6 literalmente. El caracter ":" utilizado para separa los bloques, puede crear ambigüedades. Ese es el caso, por ejemplo, con las URL en las que también se puede utilizar para especificar el número de puerto. Así, la URL:
http://2001:1234:12::1:8000/
podría representar tanto el puerto 8000 en el dispositivo con dirección IPv6 2001:1234:12::1, como el dispositivo 2001:1234:12::1:8000 utilizando el puerto por omisión. Para evitar esta ambigüedad, el RFC 2732 propone delimitar la dirección IPv6 entre "[ ]". Dependiendo del caso, la dirección precedente se escribiría:
http://[2001:1234:12::1]:8000/
o
http://[2001:1234:12::1:8000]/
Esta representación puede extenderse a otros dominios, como X-window o al protocolo de señalización para telefonía SIP. ---
Dans certains cas, une adresse (voire plusieurs adresses) IPv4 peut être contenue dans une adresse IPv6. Pour les faire ressortir, la notation classique d'IPv4, c'est à dire 4 octets en représentation décimale séparés par des points, peut être utilisée au sein d'une adresse IPv6. Ainsi :
::128.12.13.14
représente une adresse IPv6 composée de 96 bits à 0 suivis des 32 bits de l'adresse IPv4 128.12.13.14
Il est pourtant parfois nécessaire de manipuler littéralement des adresses IPv6. Le caractère ":" utilisé pour séparer les mots peut créer des ambiguïtés. C'est le cas avec les URL où il est aussi utilisé pour indiquer le numéro de port. Ainsi l'URL
http://2001:DB8:12::1:8000/
peut aussi bien indiquer le port 8000 sur la machine ayant l'adresse IPv6 2001:DB8:12::1, que la machine 2001:DB8:12::1:8000 en utilisant le port par défaut. Pour lever cette ambiguïté, le RFC 2732 propose d'inclure l'adresse IPv6 entre "[ ]". L'adresse précédente s'écrirait :
http://[2001:DB8:12::1]:8000/
ou
http://[2001:DB8:12::1:8000]/
suivant les cas. Cette représentation peut être étendue à d'autres domaines comme X-window ou au protocole de signalisation téléphonique SIP.
Type des adresses
IPv6 reconnaît trois types d'adresses : unicast, multicast et anycast. Le type d'adresse définit la cardinalité de la communication: à combien de destinataire doit être remis le paquet.
Le premier de ces types désigne de manière unique une interface. Un paquet envoyé à une telle adresse, sera donc remis à l'interface ainsi identifiée. Parmi les adresses unicast, on peut distinguer celles qui auront une portée globale, c'est-à-dire désignant sans ambiguïté une destination sur le réseau Internet et celles qui auront une portée locale (lien ou site). Ces dernières ne pourront pas être routées sur l'Internet c'est à dire qu'un paquet comportant une adresse de destination avec une portée locale sera ignoré et éliminé par un routeur de l'Internet. La portée d'une adresse indique en faite la limite de la propriété d'unicité.
Une adresse de type multicast désigne un groupe d'interfaces qui en général appartiennent à des noeuds différents pouvant être situés n'importe où dans l'Internet. Lorsqu'un paquet a pour destination une adresse de type multicast, il est acheminé par le réseau à toutes les interfaces membres de ce groupe.
Il faut noter qu'il n'y a plus d'adresses de type broadcast comme sous IPv4 ; elles sont remplacées par des adresses de type multicast. En effet, l'adresse de broadcast peut être émulée avec une adresse multicast en constituant un groupe qui comporte tous les noeuds. De plus, l'absence de broadcast évite les problèmes de saturation des réseaux locaux commutés. Ainsi un réseau IPV6 passe mieux en terme de facteur d'échelle sur ce type de réseau.
Le dernier type, anycast, est une officialisation de propositions faites pour IPv4 RFC 1546. Comme dans le cas du multicast, une adresse de type anycast désigne un groupe d'interfaces, la différence étant que lorsqu'un paquet a pour destination une telle adresse, il est acheminé à un des éléments du groupe et non pas à tous. C'est, par exemple, le plus proche au sens de la métrique des protocoles de routage. Cet adressage est principalement expérimental, voir Adresses anycast.
Certains types d'adresses sont caractérisés par leur préfixe RFC 3513. Le tableau suivant (source : http://www.iana.org/assignments/ipv6-address-space) donne la liste de ces préfixes. La plage «réservée» du préfixe 0::/8 est utilisée pour les adresses spéciales (adresse indéterminée, de bouclage, mappée, compatible). On notera que plus de 70% de l'espace disponible n'a pas été alloué, ce qui permet de conserver toute latitude pour l'avenir.
Préfixe IPv6 | Allouer | Référence |
---|---|---|
0000::/8 | Réservé pour la transition et loopback | RFC 3513 |
0100::/8 | Réservé | RFC 3513 |
0200::/7 | Réservé (ex NSAP) | RFC 4048 |
0400::/6 | Réservé (ex IPX) | RFC 3513 |
0800::/5 | Réservé | RFC 3513 |
1000::/4 | Réservé | RFC 3513 |
2000::/3 | Unicast Global | RFC 3513 |
4000::/3 | Réservé | RFC 3513 |
6000::/3 | Réservé | RFC 3513 |
8000::/3 | Réservé | RFC 3513 |
A000::/3 | Réservé | RFC 3513 |
C000::/3 | Réservé | RFC 3513 |
E000::/4 | Réservé | RFC 3513 |
F000::/5 | Réservé | RFC 3513 |
F800::/6 | Réservé | RFC 3513 |
FC00::/7 | Unique Local Unicast | RFC 4193 |
FE00::/9 | Réservé | RFC 3513 |
FE80::/10 | Lien-local | RFC 3513 |
FEC0::/10 | Réservé | RFC 3879 |
FF00::/8 | Multicast | RFC 3513 |
Une interface possèdera généralement plusieurs adresses IPv6. En IPv4 ce comportement est exceptionnel, il est banalisé en IPv6.
Adressage global : plan d'adressage agrégé
Ce plan, proposée dans le RFC 3587, précise la structure d'adressage IPv6 définie dans le RFC 3513 en précisant les tailles de chacun des blocs. Il est géré de la même manière que CIDR en IPv4. Une adresse intègre trois niveaux de hiérarchie :
Figure : Adresses Globales
- une topologie publique (appelée Global Prefix) codée sur 48 bits, allouée par le fournisseur d'accès;
- une topologie de site codée sur 16 bits (appelée Subnet ID). Ce champ permet de coder les numéros de sous réseau du site;
- un identifiant d'interface sur 64 bits (appelé Interface ID) distinguant les différentes machines sur le lien.