SERVIDOR DHCPV6 IMPLEMENTACIÓN CON EL SOFTWARE ISC DHCP EN LINUX RED DE INVESTIGACIÓN DE TECNOLOGÍA AVANZADA [email protected] SERVIDOR DHCPv6 1. DHCPv6 El servicio DHCPv6 es un protocolo de configuración dinámica de host para IPv6, está definido en la RFC 3315. Trabaja sobre UDP y utiliza la arquitectura cliente servidor, utiliza multicast en lugar de broadcast para los mensajes1. En IPv6 existe la autoconfiguración automática sin estado2 que es un proceso que asigna direcciones automáticamente cuando un host se conecta a la red. Cuando se utiliza auto-configuración, los nodos toman información que provienen de los gateways específicamente mediante los mensajes Router Adverstiment3 (RA), es en estos que el router suelta los prefijos de 64 bits que los nodos deben de utilizar para formar su dirección. Con DHCPv6 podemos asignar otros parámetros que no se pueden con los mensajes RA como, dominio por defecto, servidores DNS, NTP etc. Este protocolo no proporciona el parámetro puerta de enlace predeterminada o default Gateway. Entre el servidor DHCPv6 y las maquinas cliente, se realiza un intercambio de cuatro tipos de mensajes: Solicit: Son los mensajes que envían los clientes a la direccion multicast reservada FF02::1:2 (Muticast Agent DHCP). Estos mensajes se envían con la intención de encontrar un servidor DHCP. Todos los servidor DHCPv6 y agentes de retransmisión pertenecen a este grupo multicast. Advertise: Estos mensajes los envían los servidores DHCP a la dirección de enlace local de los clientes, lo que les indica que el servidor está disponible para asignarles los parámetros necesarios. Request: Es un mensaje que pueden enviar los cliente directamente a un servidor para solicitarle parámetros de configuración. Reply: Es un mensaje que envía el servidor a la dirección de enlace local del cliente como respuesta al mensaje request. 1 R. Droms, J. Bound, B. Volz, T. Lemon, C. Perkins, M. Carney "Dynamic Host Configuration Protocol for IPv6 (DHCPv6)", RFC 3315, July 20038. 2 Thomson, S. and T. Narten, "IPv6 Stateless Address Autoconfiguration", RFC 2462, December 1998 3 Narten, T., Nordmark, E. and W. Simpson, "Neighbor Discovery for IP Version 6 (IPv6)", RFC 2461, December 1998. 2. Implementación en Linux 2.1 Instalación del software ISC DHCP Para la instalación del software ISC DHCP en Linux (Debian/Ubuntu) se utiliza el siguiente comando: sudo apt-get install isc-dhcp-server 2.2 Asignación de la Interface de red En el script que se encuentra en la ruta /etc/default/isc-dhcp-server se debe especificar la interface por la cual el servidor va a escuchar las peticiones. Por defecto se encuentra configurado para que escuche las peticiones por la interface “eth0”. 2.3 Crear el archivo de configuración La configuración del servidor DHCP para IPv4 se realiza en el archivo etc/dhcp/dhcpd.conf, para que cohabiten los dos servicios se crea un archivo de configuración para DHCPv6 en la misma ruta llamado dhcpd6.conf. 2.4 Configuración El archivo dhcpd6.conf se configura con los siguientes parámetros4: default-lease-time 600; max-lease-time 7200; subnet6 2001:db8:0:1234::/64 { range6 2001:db8:0:1234::1000 2001:db8:0:1234::AFFF; option dhcp6.name-servers 2001:db8:0:abcd::ac53; option dhcp6.domain-search "midominio.co"; } 4 ISC Dynamic Host Configuration Server (dhcpd), Linux IPv6 HOWTO, Chapter 22. Hints for IPv6enabled daemons, 2014, http://mirrors.bieringer.de/Linux+IPv6-HOWTO/hints-daemons-isc-dhcp.html Las opciones default-lease-time y max-lease-time especifican el tiempo de arrendamiento por defecto y el tiempo máximo de arrendamiento en segundos. “subnet6” especifica el prefijo de red IPv6 del cual se van a delegar direcciones. “range6” especifica el rango de direcciones que se pueden arrendar option dhcp6.name-servers es el parámetro para especificar el servidor DNS option dhcp6.domain-search es la opción para indicar dominio por defecto 2.5 Crear el archivo de registros Después de hacer la configuración en el archivo dhcpd6.conf, se debe crear el archivo llamado dhcpd6.leases en la ruta var/run/, en este archivo se guardan los registros arrendamiento de direcciones. Nota: A este archivo se le deben asignar permisos para que pueda ser modificado por el usuario dhcpd del sistema. 2.6 Iniciar el servidor Para iniciar el servidor se ejecuta el siguiente comando: /usr/sbin/dhcpd -6 -cf /etc/dhcp/dhcpd6.conf eth0 Donde el -6 indica que va se habilita el servicio para IPv6, –cf indica el archivo de configuración y eth0 la interface por donde escucha las peticiones el servidor.