La semana pasada empezamos a hablar de IPv6 y hoy vamos a terminar, al menos lo esencial, si queréis más puedo ir añadiendo más contenido relacionado en el futuro, como queráis.
La semana pasada comentamos que había 3 modos de asignar una IPv6 a un interfaz.
La asignación Stateless Address Autoconfiguration (SLAAC) es una técnica para obtener una dirección IPv6 que utiliza NDP.
Los pasos para asignar una dirección IPv6 con SLAAC son los siguientes:
* Se genera la Link-Local
* Se envía un RS a todos los routers
* Se recibe un RA que incluye el prefijo de la red
* Se genera la dirección con EUI-64 (números aleatórios de las extensiones de privavidad)
* Se comprueba le DAD
* La IPv6 queda activa
Otra opción es DHCPv6, esta opción es statefull, es decir, se puede seguir el estado en tablas y demás.
DHCPv6 puede ser utilizado como complemento a SLAAC, para asignar información no gestionada por SLAAC como por ejemplo servidores de DNS.
Otra de sus características es que soporta delegación de prefijo, es decir, podemos asignar además de la IP un rango para ser usado, por ejemplo si es un router al que le damos DHCPv6 le podemos asignar un rango para su LAN.
Una diferencia que tiene con DHCPv4 es la reserva de direccionamiento, al igual que en IPv4 se puede asignar una ip fija a un nodo, pero en este caso no se reserva con la mac sino con el DHCP Unique Identifier (DUID).
El funcionamiento es el siguiente:
* El cliente de DHCP envía la solicitud a la IPv6 de Multicast All DHCP Servers que es la ff02::1:2.. La solicitud se hace desde la link local
* El servidor de DHCP envía el advertise a la link local del cliente desde la link local del servdior.
* El cliente de DHCP reponde con un request desde la link local a la multicast de todos los servidores DHCP (ff02::1:2)
* El servidor de DHCP hace un assigment de la dirección respondiendo al request a la link local del cliente
Hay un tema muy interesante y es la selección de la ip de origen ya que en IPv6 es muy normal tener varias direcciones en el host o incluso en el interfaz.
Para seleccionar la IP con la que se va a contestar tenemos que elegir una de las que haya haciendo un desempate.
* Dirección del mismo ámbito (link local o global)
* Aquí elegiremos las que tengan el ámbito más estricto o las direcciones que no han sido obsoletas (deprecated), pero este punto casi que podemos empezar a olvidarlo.
* Se prefieren Ipv6 nativas antes de las tansicionales (túneles y cosas así)
* Se prefiere la que tenga la máscara más larga, como en routing.
* Se prefiere la del interfaz saliente.
Ahora voy a hablar de cómo pasar de IPv4 a IPv6, la transición, la forma buena es usar un dual stack, es decir, tener IPv4 e IPv6 a la vez en nuestros equipos, porque el tema de túneles NATs y demás al final no son soluciones tan buenas como esta, aunque va a haber situaciones en las que los túneles pueden ser la única solución, así que tampoco hay que cerrarse en banda.
Dual stack nos va a permitir comunicarnos con los demás nodos de Internet usen el protocolo que usen.
Pensad que hoy en día, Mayo de 2017, cualquier sistema operativo medianamente moderno va a soportar dual stack, así que esta opción no debería de ser un problema.
Si hablamos de DNS, desde la parte del usuario, veremos que en la zona DNS configuraremos en vez de una entrada de tipo A con un IP v4 una entrada de tipo AAAA con una IPv6 y luego en la resolución inversa será igual que en IPv4, muchísimo más larga, esa es la única diferencia.
Hasta ahora hemos visto un poco qué es IPv6, pero no hemos entrado en temas de red y ahí es donde hay gran parte de la chicha de este tema.
Voy a empezar con algo que es probable que para muchos sea nueva, con los protocolos de redundancia NHRP (Next Hop Redundancy Protocol),