4 de enero de 2015

Traducción de direcciones IPv6 a IPv4

La comunicación entre nodos conectados a redes IPv6 con nodos conectados a redes IPv4 es posible implementando un proceso de traducción mejor conocido como AFT (Address Family Translation).
Esta es considerada una estrategia de corto plazo pero que permite la coexistencia de ambas redes para facilitar una transición hacia la red IPv6. Aplicaciones que utilizan protocolos que incluyen información IP en la porción de datos (como FTP o SIP) requieren la implementación de gateways de capa de aplicación para soportar la traducción.
Hay 2 tecnologías disponibles para realizar estas traducciones:
  • NAT-PT
    Network Address Translation – Protocol Translation
  • NAT64
    Network Address Translation IPv6 to IPv4
El uso de NAT-PT no es recomendado por la IETF merced a su débil interacción con DNS y sus limitaciones para la traducción. Estos problemas están documentados en el RFC 4966.
La sugerencia es trabajar con NAT 64.

La traducción de IPv6 a IPv4 o viceversa es mucho más compleja que el NAT de IPv4 que todos conocemos ya que requiere la conversión de 3 elementos en cada paquete:
  • El encabezado IPv6 debe ser reemplazado por un encabezado IPv4 o a la inversa.
  • La dirección IPv6 de origen debe ser traducida a una dirección IPv4 de origen o a la inversa.
  • La dirección IPv6 de destino debe ser traducida a una dirección IPv4 de destino o a la inversa.
Cuando la sesión se inicia desde un host IPv6, el destino será un nodo IPv4, para representar la dirección de destino IPv4 en formato IPv6 se genera un ID compuesto por el prefijo 64:FF9B::/96 que se completa con los 32 bits de la dirección IPv4 de destino.
Del mismo modo, cuando la sesión se inicia en un host IPv4, la dirección IPv4 de origen será traducida por una dirección IPv6 compuesta por el prefijo 64::BB9F::/96 y los 32 bits de la dirección IPv4 del host.
Para la traducción de las direcciones de host IPv6 se utiliza un rango de direcciones IPv4 destinado por el Administrador para este propósito.
Veamos algunos elementos de NAT64.

NAT  64
Es una solución apta tanto para entornos corporativos como de service provider.
  • Implementa funciones de NAT64 a la vez que DNS64, lo que es la base de su superioridad respecto de NAT-PT.
  • Soporta múltiples y muy variados escenarios de traducción.
  • Se puede implementar en 2 maneras:
    - Stateless NAT64.
    - Stateful NAT64.
Stateless NAT64
  • Definido en el RFC 6145.
  • No realiza ningún control o seguimiento de las sesiones.
  • La traducción puede iniciarse tanto del lado IPv6 como del IPv4.
  • Realiza traducciones 1 a 1.
  • No permite ahorrar direcciones IPv4.
  • Posibilita y facilita el seguimiento end-to-end de las sesiones.
  • Requiere que los hosts IPv6 obtengan su dirección por configuración manual o por asignación utilizando DHCPv6.
Stateful NAT64
  • Definido en el RFC 6146.
  • Realiza un seguimiento stateful de las sesiones.
  • La traducción puede iniciarse tanto del lado IPv6 como del IPv4.
  • Soporta mapeo manual de la traducción.
  • Realiza traducciones 1:N ya que implementa overloading de direcciones.
  • Permite reducir el número de direcciones IPv4 necesarias.
  • No es posible hacer un seguimiento transparente de las sesiones end-to-end.
  • Opera independientemente del modo de asignación de las direcciones IPv6, con lo que soporta asignación estática, stateless o por DHCPv6.

Bibliografía recomendada:

No hay comentarios.:

Publicar un comentario

Gracias por tu comentario.
En este blog los comentarios están moderados, por lo que su publicación está pendiente hasta la revisión del mismo.