LACNOG-ANYCAST-ANTEL1
Distribución del servicio
DNS con ANYCAST
Pablo Varela, Pablo Rodríguez Bocca,
ANTEL
Octubre, 2010
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
Servicio DNS en ANTEL
Historia
Motivación
Fundamentos Anycast
Servicio DNS Recursivo
Configuraciones
Troubleshooting
ConclusionesLACNOG-ANYCAST-ANTEL
3
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
Servicio DNS en ANTEL
Historia
Motivación
Fundamentos Anycast
Servicio DNS Recursivo
Configuraciones
Troubleshooting
ConclusionesLACNOG-ANYCAST-ANTEL
5
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:
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-ANTEL6
AGENDA
Servicio DNS en ANTEL
Historia
Motivación
Fundamentos Anycast
Servicio DNS Recursivo
Configuraciones
Troubleshooting
ConclusionesLACNOG-ANYCAST-ANTEL
7
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.”
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-ANTEL8
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:
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-ANTEL9
AGENDA
Servicio DNS en ANTEL
Historia
Motivación
Fundamentos Anycast
Servicio DNS Recursivo
Configuraciones
Troubleshooting
ConclusionesLACNOG-ANYCAST-ANTEL
10
SERVICIO DNS RECURSIVO
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-ANTEL11
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).
LACNOG-ANYCAST-ANTEL12
SERVICIO DNS RECURSIVO (3)
Anycast. Elección de granja.
Por ruteo
LACNOG-ANYCAST-ANTEL13
SERVICIO DNS RECURSIVO(4)
Anycast. Balanceo dentro de la granja.
Por ruteo interno OSPF
LACNOG-ANYCAST-ANTEL14
AGENDA
Servicio DNS en ANTEL
Historia
Motivación
Fundamentos Anycast
Servicio DNS Recursivo
Configuraciones
Troubleshooting
ConclusionesLACNOG-ANYCAST-ANTEL
15
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>;
...
“ip eth0 rns-server”: ip source con que el servidor originapaquetes para recorrer el árbol de DNS de forma de resolver un nombre.
LACNOG-ANYCAST-ANTEL16
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
LACNOG-ANYCAST-ANTEL17
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
Utilizar watchdog para named y quagga.
Ver http://www.quagga.net/LACNOG-ANYCAST-ANTEL
18
AGENDA
Servicio DNS en ANTEL
Historia
Motivación
Fundamentos Anycast
Servicio DNS Recursivo
Configuraciones
Troubleshooting
ConclusionesLACNOG-ANYCAST-ANTEL
19
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:
IPs de anycast; y
por las IPs de las interfaces físicas (solamente
permitidas desde la red de gestión).
LACNOG-ANYCAST-ANTEL20
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
LACNOG-ANYCAST-ANTEL21
TROUBLE SHOOTING (3)
El servidor no publica la IP del servicio recursivo: 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-ANTEL22
AGENDA
Servicio DNS en ANTEL
Historia
Motivación
Fundamentos Anycast
Servicio DNS Recursivo
Configuraciones
Troubleshooting
ConclusionesLACNOG-ANYCAST-ANTEL
23
CONCLUSIONES
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-ANTEL24
Preguntas ?
Gracias
LACNOG-ANYCAST-ANTEL26