500 likes | 687 Views
Programa para el Impulso a la Implementación del Protocolo IPv6 en Instituciones Vinculadas a RENATA 2012 . Servicio DHCP. 1. ICMPv6 (RFC4443).
E N D
Programa para el Impulso a la Implementación del Protocolo IPv6 en Instituciones Vinculadas a RENATA 2012 Servicio DHCP 1
ICMPv6 (RFC4443) IPv6 emplea el Internet Control MessageProtocol (ICMP) como se define en IPv4 (RFC792), aunque se introducen algunos cambios para IPv6: ICMPv6. ICMPv6 es una parte integral de IPv6 y DEBE ser completamente implementado por cada nodo IPv6 2
ICMPv6 (RFC4443) Se emplea ICMPv6 en los nodos IPv6 para reportar errores, encontrados durante el procesamiento de los paquetes y para realizar otras funciones de la capa de Red, tales como diagnósticos (ICMPv6 "ping"). 3
Mensajes ICMPv6 • Son de 2 Clases – Mensajes de error – Mensajes informativos • Los mensajes de error tienen un cero en el bit de mayor orden del valor del campo Type. Por tanto el valor del campo Type es de 0 a 127. • Los mensajes informativos tienen valores para el campo Type de 128 a 255 4
NeighborDiscovery (ND) Protocolo NeighborDiscovery (ND) (Descubrimiento de Vecinos) en IPv6. Los nodos usan ND para determinar la dirección de la capa de enlace de los nodos que se sabe que están en el mismo segmento de red y para purgar rápidamente los valores almacenados inválidos. 5
NeighborDiscovery (ND) Los hosts también usan ND para encontrar enrutadores vecinos que retransmitirán los paquetes que se les envíen. Los nodos usan el protocolo para tener conocimiento de los vecinos que son alcanzables y los que no y para detectar cambios de sus direcciones en la capa de enlace. 6
Neighbor Discovery (ND) • Habilita el mecanismo de autoconfiguración en IPv6. ND define 5 tipos de paquetes: • "RouterSolicitation" (RS) : 133 • "RouterAdvertisement" (RA) : 134 • "NeighborSolicitation" (NS) : 135 • "NeighborAdvertisement" (NA) : 136 • "Redirect« : 137 7
RouterAdvertisements (RA) • En una red (link) con capacidad broadcast, cada encaminador envía periódicamente paquetes multicast RA. • Un host recibe los RAs de todos los encaminadores, construyendo una lista de encaminadores por defecto. • El algoritmo de NeighborUnreachabilityDetection (NUD) detecta si existen problemas en alcanzar los encaminadores. 8
RouterAdvertisements (RA) • Los RAs contienen una lista de prefijos usados por los hosts para determinar si una dirección destino de un paquete pertenece a dicho link y para la autoconfiguración de direcciones. • Los RAs y los ‘Flags’ asociados a cada prefijo permiten a los encaminadores indicar a los hosts como realizar la autoconfiguración (stateless o DHCPv6). 9
Autoconfiguración El estándar especifica los pasos que un host debe seguir para decidir cómo auto-configurar sus interfaces de red en IPv6. IPv6 define tanto un mecanismo de auto-configuración de direcciones de tipo “stateful” como “stateless” 10
Autoconfiguración El proceso de auto-configuración incluye la creación de una dirección IPv6 de ámbito local (link-local) y la verificación de que no está duplicada en el mismo segmento de red, determinando qué información debería ser auto-configurada y en el caso de direcciones, si estas deberían obtenerse mediante “stateful”, “stateless” o ambos 11
Autoconfiguración Stateless o Serverless (RFC4862) La auto-configuración “stateless” (SAAC) no precisa de configuración manual en el host, mínima (si acaso alguna) configuración de encaminadores y ningún servidor adicional 12
Autoconfiguración Stateless o Serverless (RFC4862) El mecanismo “stateless” permite a un host generar su propia dirección usando una combinación de información localmente disponible y de información proporcionada por los enrutadores. Los enrutadores anuncian los prefijos de red que identifican la subred asociada a un determinado segmento de red. 13
Autoconfiguración Stateless o Serverless (RFC4862) Los hosts generan un identificador de interfaz que lo identifica de manera única en la subred. Dicho identificador se genera localmente, por ejemplo a partir de la dirección MAC. Una dirección IPv6 se forma mediante la combinación de ambas informaciones. 14
Autoconfiguración Stateless o Serverless (RFC4862) En la ausencia de enrutadores, un host puede generar solo las direcciones IPv6 de ámbito local (link-local) Las link-local direcciones link son suficiente para permitir la comunicación IPv6 entre nodos que están conectados en el mismo segmento de red 15
Ventajas/Beneficios de laAutoconfiguración Stateless La configuración manual de cada máquina antes de conectarla a la red no es necesaria. Los sitios pequeños compuesto de pocas máquinas conectadas al mismo segmento no necesitarían de un servidor DHCPv6 ni de un enrutador para comunicarse, usarían direcciones link-local. 16
Ventajas/Beneficios de laAutoconfiguración Stateless Un sitio grande con varias subredes no necesitaría de un servidor DHCPv6 para la configuración de direcciones Facilita el cambio de prefijo de una sitio mediante el uso de varias direcciones por interfaz y tiempo de vida 17
Autoconfiguración Stateful o DHCPv6 (RFC3315) Los hosts obtienen las direcciones de la interfaz de red y/o información de configuración desde un servidor. Los servidores mantienen una base de datos que actualizan con las direcciones que han sido asignadas y con información de a qué hosts se han asignado 18
Autoconfiguración Stateful o DHCPv6 (RFC3315) La auto-configuración “stateless” y la “stateful” se complementan una a la otra Ambos tipos de auto-configuración se pueden usar de forma simultánea 19
Autoconfiguración Stateful o DHCPv6 (RFC3315) El administrador de red especifica qué tipo de autoconfiguración se usa, por medio de la configuración de los campos adecuados de los mensajes RAs 20
Servidores DHCP con soporte Ipv6 Para el servicio DHCPv6 se cuentan algunos proyectos entre ellos. • Dibbler (http://klub.com.pl/dhcpv6/) • Wide-dhcpv6 (http://wide-dhcpv6.sourceforge.net/) • Dhcpdv6 (https://fedorahosted.org/dhcpv6/) • ISC DHCP 4.x (http://www.isc.org/software/dhcp) 21
Servidores DHCP con soporte Ipv6 Por su trayectoria y madurez esta unidad se trabajará con ISC DHCP 4.2. 22
DHCPv6 • Es un protocolo distinto del de IPv4 • RFC 3315 -http://www.rfc-editor.org/rfc/rfc3315.txt • Utiliza MULTICAST en lugar de broadcast para las solicitudes • Su funcionamiento se apoya en el uso de ICMPv6 23
DHCPv6 (2) VENTAJAS • Trabaja como complemento de los RAs (Router Advertisements) • Puede publicar dinámicamente información de DNS, SNTP, nombre del dominio ,etc. • Se puede integrar con el DNS para generar dinámicamente registros PTR. 24
DHCPv6 (3) CONTRAS • No esta disponible en todos los Sistemas Operativos. • No hay garantía de que el cliente vaya a utilizar la dirección asignada al iniciar nuevas conexiones • No se puede asociar una dirección fija IPv6 con una MAC. (En su lugar se usa el DUID). • No asigna el default GATEWAY (Se requiere un RA) 25
DHCPv6 (4)Cambios en DHCPv6 1. Si existe un Router en la red, este envia un Mensaje RA con los bits O (solicitud de Opciones) y/o M (Direccoinamiento Administrado, indica que debe solicitar la IP a un servidor DHCP) 26
DHCPv6 (4)Cambios en DHCPv6 2. Los clientes envían sus solicitudes a la dirección multicast reservada: FF02::1:2 (Todos los servidores DHCP y RelayAgents de la red Local) . • Si el servidor no está en la misma subred, un relay reenvía la solicitud a la dirección IPv6 unicast del servidor, si se conoce. 27
DHCPv6 (5)Cambios en DHCPv6 • Si no es conocida, podría reenviar a la otra dirección multicast reservada: FF05::1:3 (Todos los servidores DHCP de la red Local ) • Servidor: Usa el puerto 547 UDP • Cliente: Usa el puerto 546 UDP 28
DHCPv6 (6)Cambios en DHCPv6 3. Los Agentes DHCPv6 envían a la dirección multicastFF02::1 (Todos los HOST) mensajes DHCPv6 Advertise, anunciándose como Servidor DHCPv6. 4. Los HOST interesados en obtener la configuración envían un mensaje REQUEST a la dirección de uno de estos servidores 5. El servidor ENVIA la configuración al HOST con los parámetros solicitados. 29
DHCPv6 (7)Comparativa de Mensajes DHCPv4 – DHCPv6 CONFIRM (4): El cliente envía un mensaje a cualquier servidor disponible para determinar si las direcciones que tenia asignadas siguen siendo validas para el link al que se conecta. RELAY-FORW (12) : Un agente de retransmisión envía un mensaje de Enlace de avance para retransmitir mensajes a los servidores, ya sea directamente o a través de otro agente de retransmisión. 30
DHCPv6 (8)Comparativa de Mensajes DHCPv4 – DHCPv6 RELAY-REPL (13) Un servidor envía un mensaje de retransmisión de respuesta a un agente de retransmisión que contiene un mensaje que el agente de retransmisión entrega al cliente.. 31
Instalación Para la instalación de la versión 4.2.x ISC DHCP: (http://www.isc.org/software/dhcp) La versión 4.2.x ya tiene el soporte IPv6 # tar -xzvfdhcp-4.2.4.tar.gz # cd dhcp-4.2.4 #./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/lib/dhcp --sbindir=/usr/sbin \ --with-srv6-lease-file=/var/lib/dhcpd/dhcpd6.leases --with-srv-lease-file=/var/lib/dhcpd/dhcpd.leases # make # make install . 32
Instalación Se requiere usar la versión 4.x que tiene soporte para IPv6 33
Linux: dhcp (2)Configuración IPv6 La versión 4.2 de ISC DHCP requiere que para IPv6 se ejecute un proceso diferente al del servidor DHCP para IPv4, con el parámetro -6 especificado en la línea de comandos. • dhcpd -6 INTERFAZ 34
Linux: dhcp (3)Configuración IPv6 Como el servidor se ejecuta de forma independiente para IPv4 e IPv6, se pueden definir 2 scripts de inicio para cada proceso Para IPv4 que escucha en los puertos 67 y 68 UDP Para IPv6 que escucha en el puerto 547 UDP 35
Linux: dhcp (4)Configuración IPv4 Se recomienda usar un archivo /etc/dhcpd.confpara IPv4 y /etc/dhcpd6.conf para IPv6. El archivo /etc/dhcpd.conf para IPv4 se mantendrá igual, el script de inicio invoca el proceso DHCP con los siguientes parámetros para que atienda por la interfaz eth0. dhcpd –q –cf /etc/dhcpd.conf –lf /var/lib/dhcpd.leases eth0 36
Linux: dhcp (5)Configuración IPv6 El archivo /etc/dhcpd6.conf para IPv6 define la configuración para el servidor sobre IPv6, el script de inicio invoca el proceso DHCP con los siguientes parámetros para que atienda por la interfaz eth0. dhcpd -6 –q –cf /etc/dhcpd6.conf –lf /var/lib/dhcpd6.leases eth0 37
Linux: dhcp (6)Configuración IPv6 Las opciones de configuración global: • dhcpv6-lease-file-name <FILE>; Permite indicar el archivo de almacenamiento de las direcciones asignadas • option dhcp6.name-servers <IPv6>; Permite indicar los servidores DNS IPv6 que se asignarán. • option dhcp6.sntp-servers <IPv6>; Permite especificar los servidores de tiempo 38
Linux: dhcp (7)Configuración IPv6 • optiondhcp6.domain-search ”mydomain.com"; • Permite especificar el dominio de búsqueda por defecto • option dhcp6.info-refresh-time <SEGUNDOS>; • Tiempo de refresco de la información proporcionada. • option dhcp6.preference <NUMERO>; Orden de importancia del servidor en la red 39
Linux: dhcp (8)Configuración IPv6 La definición de una subred El rango ahora puede especificar una subred completa. #Toda la subred subnet6 2001:db8:1::/48 { range62001:db8:1::/48; } #Los últimos 32 bits de la subred. subnet6 2001:db8:1::/48 { range62001:db8:1::0 2001:db8:1::ffff:ffff; } 40
Linux: dhcp (9)Configuración IPv6 La definición de un host YA NO SE PUEDE ASOCIAR A LA MAC, SE REQUIERE INDICAR EL DUID. host mipc { #No se usa la MAC, en su lugar se indica el DUID host-identifier option dhcp6.client-id 00:01:00:01:0D:EF:64:ED:00:21:25:5D:5f:18; fixed-address6 2001:db8:f::abab; option host-name "mipc"; } 41
Linux: dhcp (10)Información del log y el lease Ni el log ni el leasemuestran el valor del DUID para un cliente. El lease de una dirección asignada: : 42
Linux: dhcp (11)Información del log y el lease El Log de una asignación de dirección: 43
Linux: dhcp (12)Asignación de IP fijas Windows ¿Entonces como asignar direcciones fijas? TIP: Para Windows7/Windows2008 se puede obtener el DUID de la siguiente forma: • Tomar una dirección ( será aleatoria), con el comando : ipconfig –renew6 • Identificar el DUID de la información mostrada para el adaptador con el comando: ipconfig –all 44
Linux: dhcp (13)Asignación de IP fijas Windows De esta forma podemos obtener el DUID de una tarjeta de red, para que podamos registrarlo en el archivo de configuración del dhcpd6. Recuerde que debe cambiar los «-» por «:». 45
Linux: dhcp (14)Asignación de IP fijas Linux En Linux se requiere del cliente dhcp (dhcpv6-client), este crea el archivo de datos /var/lib/dhcpv6/dhcp6c_duid. Para ver el client-id que se genera para la maquina, se usa el siguiente comando: # hexdump -e '"%07.7_ax " 1/2 "%04x" " " 14/1 "%02x:" "\n"' /var/lib/dhcpv6/dhcp6c_duid 46
Linux: dhcp (15)Asignación de IP fijas Linux Aquí vemos un ejemplo: De acuerdo a esta salida, una definición de host seria: 47