Difference between revisions of "Protocolo de Descubrimiento de vecinos"
From Livre IPv6
Line 2: | Line 2: | ||
__TOC__ | __TOC__ | ||
+ | |||
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 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. | ||
Line 22: | Line 23: | ||
: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 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. [[Configuración con estado: DHCPv6 | 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. | ||
+ | |||
+ | {{Nota: Opciones}} | ||
{{eSuivi|Tabla de contenido|Incio del capítulo|DHCPv6|DHCPv6}} | {{eSuivi|Tabla de contenido|Incio del capítulo|DHCPv6|DHCPv6}} |
Revision as of 16:14, 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.
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.
Incio del capítulo | Tabla de contenido | DHCPv6 |