Servicio distribuido DNS mediante anycast
Transcripción
Servicio distribuido DNS mediante anycast
Distribución del servicio DNS con ANYCAST Pablo Varela, Pablo Rodríguez Bocca, ANTEL Octubre, 2010 1 LACNOG-ANYCAST-ANTEL SERVICIO DNS EN ANTEL Registry com.uy Hosting de DNS: Zonas propias Zonas de clientes Zonas reversas Servicio DNS Recursivo para: Servicios de acceso Internet (anycast). Asignación de ips de servicio mediante ppp y pppoe en RAS y BRAS. AGENDA 3 Servicio DNS en ANTEL Historia Motivación Fundamentos Anycast Servicio DNS Recursivo Configuraciones Troubleshooting Conclusiones LACNOG-ANYCAST-ANTEL HISTORIA 2003 - Servidores autoritativos y recursivos en el mismo host. 2004 - Servidores autoritativos separado de los servidores recursivos. 2006 - Migración del servicio recursivo a dos granjas anycast de 3 servidores cada una. 2008 - Se agrega un servidor más por granja. 2010 - Se alcanzan los 5 servidores por granja. 2011 – Se planifica incorporar otra granja. AGENDA 5 Servicio DNS en ANTEL Historia Motivación Fundamentos Anycast Servicio DNS Recursivo Configuraciones Troubleshooting Conclusiones LACNOG-ANYCAST-ANTEL MOTIVACIÓN ANTEL es el principal proveedor de acceso a Internet de Uruguay Los servidores recursivos reciben más de 20.000 consultas por segundo en hora pico Se utiliza una arquitectura Anycast para el servicio recursivo: 6 aumentar la capacidad de respuesta a consultas recursivas disminuyendo el tiempo de respuesta de las consultas. distribuir las consultas equitativamente entre los diferentes servidores recursivos. mejorar la redundancia en el servicio LACNOG-ANYCAST-ANTEL AGENDA 7 Servicio DNS en ANTEL Historia Motivación Fundamentos Anycast Servicio DNS Recursivo Configuraciones Troubleshooting Conclusiones LACNOG-ANYCAST-ANTEL FUNDAMENTOS ANYCAST Definición: “Esquema de direccionamiento y enrutamiento por el cual la información es enrutada al nodo más cercano según la topología de la red.” 8 Ejemplos que combinan servicio dns y anycast: ANTEL (recursivos), root servers A, C, F, I, J, K, L y M. Utilidad: Para servidores de nombres críticos (autoritativos o recursivos), ofrece alta disponibilidad y balanceo. Se puede extender a otros servicios. LACNOG-ANYCAST-ANTEL FUNDAMENTOS ANYCAST (2) Se accede al servicio a través del nodo más cercano según la métrica del protocolo de ruteo. Todos los servidores de la configuración responden a la misma IP. Si las consultas DNS son: 9 Sobre UDP no se necesita mantener persistencia. Sobre TCP se necesita mantener persistencia. En el caso de autoritativos, los servidores deben mantenerse sincronizados en las zonas y en los tiempos. Más: RFC 3258, http://www.net.cmu.edu/pres/anycast/ LACNOG-ANYCAST-ANTEL AGENDA 10 Servicio DNS en ANTEL Historia Motivación Fundamentos Anycast Servicio DNS Recursivo Configuraciones Troubleshooting Conclusiones LACNOG-ANYCAST-ANTEL SERVICIO DNS RECURSIVO 11 Aumento en el BW de los servicios incrementa las consultas DNS. Hoy más de 20.000 qps. Dos granjas de servidores respondiendo a consultas de suscriptores fijos y móviles. LACNOG-ANYCAST-ANTEL SERVICIO DNS RECURSIVO (2) Anycast. Varias granjas publican IPs de los recursivos: Elección de granja según cercanía de ruteo. Hasta 32 granjas (máximo de rutas con igual costo en ISIS). En cada granja se balancea entre varios servers: Cada servidor rutea OSPF y publica IPs del servicio recursivos. Balanceo según ruteo, utilizando CEF en router (consultas UDP y TCP) . Hasta 32 servidores por granja (máximo de rutas en OSPF). 12 LACNOG-ANYCAST-ANTEL SERVICIO DNS RECURSIVO (3) Anycast. Elección de granja. 13 Por ruteo LACNOG-ANYCAST-ANTEL SERVICIO DNS RECURSIVO(4) Anycast. Balanceo dentro de la granja. 14 Por ruteo interno OSPF LACNOG-ANYCAST-ANTEL AGENDA 15 Servicio DNS en ANTEL Historia Motivación Fundamentos Anycast Servicio DNS Recursivo Configuraciones Troubleshooting Conclusiones LACNOG-ANYCAST-ANTEL CONFIGURACIÓN DE BIND – NAMED.CONF options { listen-on { <ip eth0 rns-server> ;200.40.30.245; 200.40.220.245;}; query-source address <ip eth0 rns-server>; ... 16 “ip eth0 rns-server”: ip source con que el servidor origina paquetes para recorrer el árbol de DNS de forma de resolver un nombre. LACNOG-ANYCAST-ANTEL CONFIGURACIÓN DEL ROUTER ... ip cef ... router isis net 49.0003.2000.4001.7019.00 is-type level-1 authentication mode md5 authentication key-chain ANTEL metric-style wide redistribute ospf 53 metric 100 route-map RED_GRANJA_C/LOOPBACKS level-1 passive-interface GigabitEthernet0/0 ! ... router ospf 53 router-id 200.40.220.225 log-adjacency-changes passive-interface FastEthernet0/0 passive-interface FastEthernet0/1 network <> area 53 17 LACNOG-ANYCAST-ANTEL CONFIGURACIÓN DEL QUAGGA Dentro de la misma jaula que el bind. /chroot/quagga/etc/ Archivos de configuración necesarios : ospfd.conf, Quagga.conf, zebra.conf, daemons, vtysh.conf, debian.conf. Quagga.conf (“cisco like”): interface eth0 ip ospf authentication message-digest <eth0_ip> ip ospf message-digest-key 0 md5 <key> <eth0_ip> ! router ospf ospf router-id <eth0_ip> network 200.40.30.245/32 area 0.0.0.0 network <network_eth0> area 0.0.0.0 network 200.40.220.245/32 area 0.0.0.0 18 Utilizar watchdog para named y quagga. Ver http://www.quagga.net/ LACNOG-ANYCAST-ANTEL AGENDA 19 Servicio DNS en ANTEL Historia Motivación Fundamentos Anycast Servicio DNS Recursivo Configuraciones Troubleshooting Conclusiones LACNOG-ANYCAST-ANTEL TROUBLE SHOOTING Colección de datos estadísticos en CACTI Servidores accesibles por ssh por puerto de mgmt. y por puerto de producción. Servidores responden a consultas recursivas por: 20 IPs de anycast; y por las IPs de las interfaces físicas (solamente permitidas desde la red de gestión). LACNOG-ANYCAST-ANTEL TROUBLE SHOOTING (2) ¿Qué servidor responde las consultas de un usuario? Revisando la IP en los logs de cada server: /chroot/named/var/log/losqueries.log.xxx traceroute identifica granja. Revisar protocolos corriendo en router de granja y servers publicados: ins2cen1>show ip route ospf 200.40.220.0/24 is variably subnetted, 6 subnets, 4 masks O 200.40.220.245/32 [110/11] via <ip_eth0_rns1>, 6w5d, FE3/0 [110/11] via <ip_eth0_rns2>, 6w5d, FE3/0 [110/11] via <ip_eth0_rns3>, 6w5d, FE3/0 [110/11] via <ip_eth0_rns4>, 6w5d, FE3/0 [110/11] via <ip_eth0_rns5>, 6w5d, FE3/0 200.40.30.0/24 is variably subnetted, 2 subnets, 2 masks O 200.40.30.245/32 [110/11] via <ip_eth0_rns1>, 6w5d, FE3/0 [110/11] via <ip_eth0_rns2>, 6w5d, FE3/0 [110/11] via <ip_eth0_rns3>, 6w5d, FE3/0 [110/11] via <ip_eth0_rns4>, 6w5d, FE3/0 [110/11] via <ip_eth0_rns5>, 6w5d, FE3/0 21 LACNOG-ANYCAST-ANTEL TROUBLE SHOOTING (3) El servidor no publica la IP del servicio recursivo: 22 Verificar que el servidor responde a la IP de la interfaz. Verificar que demonios zebra y ospfd levantados. Conectarse al CLI vtysh del quagga (comandos estilo Cisco). Recordar de subir y bajar las loopbacks para publicar cuando el recursivo funcione. LACNOG-ANYCAST-ANTEL AGENDA 23 Servicio DNS en ANTEL Historia Motivación Fundamentos Anycast Servicio DNS Recursivo Configuraciones Troubleshooting Conclusiones LACNOG-ANYCAST-ANTEL CONCLUSIONES 24 La arquitectura anycast es escalable y confiable para el servicio recursive. La arquitectura anycast es fácilmente operable y mantenible. Se analiza cambiar balanceo OSPF por rutas estáticas con chequeo de salud, usando librería IP-SLA (Cisco). LACNOG-ANYCAST-ANTEL Preguntas ? 26 LACNOG-ANYCAST-ANTEL Gracias