Difference between revisions of "Protocolo de Descubrimiento de Vecinos"

From Livre IPv6

(New page: {{eSuivi|Tabla de contenido|Incio del capítulo|DHCPv6|DHCPv6}} __TOC__ El protocolo de descubrimiento de vecinos (NDP, ''Neighbor Discovery Protocol'') permite a un dispositivo integra...)
 
Line 36: Line 36:
 
{{NB-Opciones}}
 
{{NB-Opciones}}
  
 +
== <div id="física">Dirección física de la fuente/destino</div> ==
 +
 +
<tikz title="Formato de la opción dirección física fuente/destino">
 +
\clip (0.2, 5.7) rectangle (11.1,6.7);
 +
% \draw[help lines] (0,0) grid (11,6);
 +
 
 +
\draw (0.5, 6.5) node  [right] {\tiny{\tt{0..................7...................15...................23....................31}}};
 +
 +
\draw (0.5, 6) node (context) [right, shade, top color=blue!15, bottom color=blue!5, draw, minimum height=0.5cm, minimum width=2.4cm]{\tiny{Type=1/2}};
 +
\draw (2.9, 6) node (context) [right, shade, top color=blue!15, bottom color=blue!5, draw, minimum height=0.5cm, minimum width=2.4cm]{\tiny{lenght }};
 +
\draw (5.3, 6) node (addr) [right, shade, top color=blue!15, bottom color=blue!5, draw, minimum height=0.5cm, minimum width=4.8cm] {\tiny{Link Layer Address}};
 +
 +
\draw [draw=white, thick] (addr.north east) -- (addr.south east);
 +
\draw [draw=white, thick] (addr.north east) -- +(-2, 0);
 +
\draw [draw=white, thick] (addr.south east) -- +(-2, 0);
 +
 +
\draw [dashed] (addr.north east) -- (addr.south east);
 +
\draw [dashed] (addr.north east) -- +(-2, 0);
 +
\draw [dashed] (addr.south east) -- +(-2, 0);
 +
</tikz>
 +
 +
La figura Formato de la opción dirección física fuente/destino presenta estas opciones.  El tipo 1 designa la dirección física de la fuente y el tipo 2 la dirección del destino.
 +
 +
El campo ´longitud’’ es el tamaño en palabras de 64 bits de la opción.  Por lo tanto, para el caso de una dirección MAC, con longitud de 6 octetos, contiene el valor 1.
 +
 +
El RFC 2464 define el formato para las direcciones MAC-48 utilizadas en las redes Ethernet y Wi-Fi.  El RFC 4944 define el formato para las direcciones MAC-16 y MAC-64 utilizadas en las redes de sensores bajo la norma IEEE 802.15.4.
  
  
 
{{eSuivi|Tabla de contenido|Incio del capítulo|DHCPv6|DHCPv6}}
 
{{eSuivi|Tabla de contenido|Incio del capítulo|DHCPv6|DHCPv6}}

Revision as of 16:46, 12 June 2012

Incio del capítulo Tabla de contenido DHCPv6

El protocolo de descubrimiento de vecinos (NDP, Neighbor Discovery Protocol) permite a un dispositivo integrarse en el ambiente local, es decir, el enlace sobre el cual se transmiten físicamente los paquetes IPv6. Permite establecer un diálogo con los equipos (estaciones y enrutadores) conectados sobre el mismo medio. No se pretende que un dispositivo conozca con exactitud la lista de todos los demás dispositivos conectados al enlace, sino de proveer un mecanismo para dialogar con quien necesite hacerlo.

El protocolo utiliza cinco tipos de mensajes ICMPv6 (ver Valores de los campos de tipo y código de ICMPv6). El campo número de saltos de la cabecera IPv6 contiene el valor 255. Este valor parece demasiado grande para datagramas que no debieran ser enrutados fuera del enlace físico. En realidad, si un equipo recibe un datagrama con un valor menor, significa que la información proviene de otra red y que ya ha atravesado al menos un enrutador. Por ello, los datagramas que tienen un valor diferente de 255 deben ser ignorados por el receptor.

Valores de los campos tipo y código de ICMPv6
Tipo Código Significado
Gestión de los errores
1 Destino inaccesible :
0 * ninguna ruta hacia el destino
1 * la comunicación con el destino está prohibida administrativamente
2 * fuera del alcance de la dirección fuente
3 * la dirección es inaccessible
4 * el número de puerto es inaccessible
5 * la dirección fuente está filtrada por un firewall
6 * la dirección destino es rechazada
2
3 Temporizador agotado :
0 * se alcanzó el límite en el número de saltos
1 * temporizador para reensamblado agotado
4 Error de parámetro :
0 * campo de cabecera erróneo
1 * campo de cabecera siguiente no reconocido
2 * opción no reconocida
Información
128 Solicitud de eco
129 Respuesta de eco
Gestión de grupos multicast (MLD, RFC 2710)
130 Soicitud de registro
131 Reporte de registro
132 Fin de registro
Descubrimiento de vecinos (RFC 2461)
133 Solicitud de enrutador
134 Anuncio de enrutador
135 Solicitud de un vecino
136 Anuncio de un vecino
137 Redirección
Renumeración de los enrutadores (experimental, RFC 2894)
138
Renumeración de los enrutadores :
0 * Comando
1 * Resultado
255 * Reinicio del número de secuencia
Solicitud de información sobre un nodo (experimental)
139 Solicitud de información
140 Respuesta
Descubrimiento de vecinos inverso (RFC 3122)
141 Solicitud
142 Anuncio
Gestión de grupos multicast (MLDv2, RFC 3810)
143 Reporte registro MLDv2
Movilidad (RFC 3775)
144 Descubrimiento del agente base (solicitud)
145 Descubrimiento del agente base (respuesta)
146 Solicitud del prefijo móvil
147 Anuncio del prefijo móvil
Descubrimiento de vecinos asegurado (SEND, RFC 3971)
148 Solicitudo de trayectoria de certificación
149 Anuncio de trayectoria de certificación
Movilidad (experimental)
150 Protocolos experimentales de movilidad, como Seamoby

El protocolo realiza varias funciones:

  • Resolución de direcciones. El principio es muy similar al del protocolo ARP de IPv4. La principal diferencia consiste en el uso de mensajes ICMPv6 estándar en lugar de definir otro protocolo de capa 3. Con esto se consigue una mayor flexibilidad de uso, especialmente en las redes que no soportan la difusión de mensajes. Al igual que en IPv4, el protocolo se encarga de construir tablas de correspondencia entre las direcciones IPv6 y las físicas.
  • Detección de inaccesibilidad de vecinos (NUD, Neighbor Unreachability Detection). Esta función, que no existe en IPv4, permite eliminar de las tablas de configuración de un equipo, los vecinos que se han vuelto inaccesibles (por fallas, cambio de domicilio, ...). Si un enrutador deja de estar disponible, la tabla de enrutamiento puede ser modificada para considerar otra ruta.
  • Configuración. La configuración automática de los dispositivos es uno de los principales atractivos de IPv6. Se implementan varias funcionalidades del protocolo de descubrimiento de vecinos:
    • Descubrimiento de enrutadores. Este protocolo permite que los dispositivos identifiquen a los enrutadores que se encuentran en su enlace físico. En IPv4, esta función la proporciona el protocolo ICMP Router Discovery.
    • Descubrimiento de prefijos. El dispositivo conoce el o los prefijos de red de acuerdo a los anuncios realizados por los enrutadores. Agregando su identificador de interfaz, el dispositivo construye su o sus direcciones IPv6. No hay un mecanismo equivalente para las direcciones IPv4 ya que son demasiado cortas para realizar la auto-configuración.
    • Detección de direcciones duplicadas. Dado que las direcciones se configuran de forma automática, existen riesgos de error en caso de tener equipos con identificadores repetidos. Este protocolo verifica que ningún otro equipo en el enlace tiene la misma dirección IPv6. Esta función es una evolución del ARP gratuito en IPv4 emitido durante la inicialización de la interfaz.
    • Descubrimiento de parámetros. Este protocolo permite que los dispositivos conozcan los distintos parámetros del enlace físico, por ejemplo, el tamaño de MTU, el número máximo de saltos permitido (valor original del campo número de saltos), si la configuración automática con estado (como DHCPv6) está activa, etc. No existe un equivalente de esta funcionalidad en IPv4.
  • Indicación de redirección. Este mensaje se utiliza cuando un enrutador conoce una trayectoria mejor (medida en número de saltos) para alcanzar un destino.
En IPv4 una indicación de redireccionamiento sólo puede servir para corregir la dirección del enrutador utilizado para acceder a una máquina fuera de la red local. Los dispositivos deben conocer todas las direcciones correspondientes a equipos conectados en su propia red local.
EnIPv6, la correspondencia entre prefijo y red local es menos rígida. Es de esperar que un dispositivo no conozca todos los prefijos de su red local (si ésta es compartida por varios prefijos), o que un prefijo se comparta entre varios enlaces (lo que corresponde a una generalización del modelo de redes lógicas IP sobre ATM). Bajo algunas configuraciones, la máquina emitirá sus paquetes al enrutador aún si el destinatario se encuentra en el mismo segmento que el emisor. En este caso, el enrutador emitirá un mensaje de redirección para que la continuación del diálogo entre ellos haga de manera directa (véanse los ejemplos Indicación redirección).
En el caso más extremo, podría imaginarse en IPv6 que un dispositivo puede ser configurado para comunicarse únicamente con su enrutador por omisión. ICMPv6 redirect puede utilizarse entonces, para informar al dispositivo de destinatarios ubicados en el mismo enlace.

En IPv6 se especifican dos métodos de autoconfiguración para las direcciones unicast global:

  • Autoconfiguración sin estado (stateless autoconfiguration, RFC 2462). Se utiliza cuando no es necesaria una gestión administrativa de las direcciones asignadas dentro de un sitio. Estos mecanismos se describen más adelante en este capítulo.
  • Autoconfiguración con estado (statefull autoconfiguration). Se utiliza cuando un sitio requiere de un control estricto de la asignación de direcciones (cf. DHCPv6).

Sin embargo, el uso de DHCPv6 para obtener la dirección se controla mediante el protocolo de descubrimiento de vecinos.

Datos transmitidos por los mensajes

La principal motivación detrás del Protocolo de Descubrimiento de Vecinos es unificar varios protocolos existentes en IPv4. En particular, la mayor parte de los datos utiliza un formato de opciones común, lo que simplifica la implementación del protocolo. El formato contiene los campos: tipo, longitud (en palabras de 64 bits), y datos. La baja precisión de campo longitud, presentará un desperdicio de espacio, pero permite una alineación de las opciones en palabras de 64 bits, lo que permite un procesamiento optimizado.

Valores de opciones de descubrimiento de vecinos
Tipo Descripción Mensaje
Opciones básicas de descubrimiento de vecinos [RFC 4861]
1 Source Link-layer Address (SLLAO) RS/RA/NS
2 Target Link-layer Address NA/Redirect
3 Prefix Information (PIO) RA
4 Redirected Header Redirect
5 MTU RA
NBMA (no usado) [RFC 2491]
6 NBMA Shortcut Limit Option NS
Mobile IP [RFC 3775]
7 Advertisement Interval Option RA
8 Home Agent Information Option RA
X Authoritative Border Router (ABRO) 6LoWPAN
X 6LoWPAN Context (6CO) 6LoWPAN
X Address Registration (ARO) 6LoWPAN
Inverse Neighbor Discovery [RFC 3122]
9 Source Address List
10 Target Address List
SEND [RFC 3971]
11 CGA option
12 RSA Signature option
13 Timestamp option
14 Nonce option
15 Trust Anchor option
16 Certificate option
Mobility options
17 IP Address/Prefix Option [RFC 5568]
18 New Router Prefix Information Option [RFC 4068]
19 Link-layer Address Option [RFC 5568]
20 Neighbor Advertisement Acknowledgment Option [RFC 5568]
23 MAP Option [RFC 4140]
SLAAC optimization
24 Route Information Option [RFC 4191]
25 Recursive DNS Server Option [RFC 5006] RA
26 RA Flags Extension Option [RFC 5175]
Fast Mobility options
27 Handover Key Request Option [RFC 5269]
28 Handover Key Reply Option [RFC 5269]
29 Handover Assist Information Option [RFC 5271]
30 Mobile Node Identifier Option [RFC 5271]
138 CARD Request option [RFC 4065]
139 CARD Reply option [RFC 4065]

Dirección física de la fuente/destino

Formato de la opción dirección física fuente/destino
Figure : Formato de la opción dirección física fuente/destino

La figura Formato de la opción dirección física fuente/destino presenta estas opciones. El tipo 1 designa la dirección física de la fuente y el tipo 2 la dirección del destino.

El campo ´longitud’’ es el tamaño en palabras de 64 bits de la opción. Por lo tanto, para el caso de una dirección MAC, con longitud de 6 octetos, contiene el valor 1.

El RFC 2464 define el formato para las direcciones MAC-48 utilizadas en las redes Ethernet y Wi-Fi. El RFC 4944 define el formato para las direcciones MAC-16 y MAC-64 utilizadas en las redes de sensores bajo la norma IEEE 802.15.4.


Incio del capítulo Tabla de contenido DHCPv6
Personal tools