Knowledge Center Monthly Newsletter - March 2025
Stay up to date with the latest from the Knowledge Center. See all new and updated Knowledge Center articles published in the last month and re:Post’s top contributors.
¿Cómo puedo solucionar problemas con mi política de enrutamiento ponderado en Route 53?
Obtengo resultados inesperados al probar la resolución de DNS para una política de enrutamiento ponderado en Amazon Route 53.
Descripción breve
Supongamos que ha creado un registro de texto (TXT) con el nombre «weighted.awsexampledomain.com». El registro tiene un período de vida (TTL) de 300 segundos y los pesos están configurados de la siguiente manera:
Nombre | Tipo | TTL | Valores | Peso | Estado de la comprobación de estado |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 0» | Peso=0 | Comprobación de estado asociada |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 20» | Peso=20 | Comprobación de estado asociada |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 50» | Peso=50 | Comprobación de estado asociada |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 70» | Peso=70 | Comprobación de estado asociada |
En los siguientes ejemplos se hace referencia a esta configuración.
Resolución
Nota: Si recibe errores al ejecutar los comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), asegúrese de utilizar la versión más reciente de la AWS CLI.
Pruebe su política de enrutamiento ponderado para identificar el problema
Envíe varias consultas (más de 10 000) para probar su política de enrutamiento ponderado. Pruebe la resolución de DNS desde varias ubicaciones o consulte directamente a los servidores de nombres autorizados para comprender la política. Utilice los siguientes scripts para enviar varias consultas DNS para su nombre de dominio.
Envíe consultas de DNS mediante el solucionador recursivo:
#!/bin/bash for i in {1..10000} do domain=$(dig <domain-name> <type> @RecursiveResolver_IP +short) echo -e "$domain" >> RecursiveResolver_results.txt done
Envíe consultas DNS directamente a los servidores de nombres autorizados:
#!/bin/bash for i in {1..10000} do domain=$(dig <domain-name> <type> @AuthoritativeNameserver_IP +short) echo -e "$domain" >> AuthoritativeNameServer_results.txt done
Ejemplo de salida con la herramienta awk de la CLI de AWS:
$ for i in {1..10000}; do domain=$(dig weighted.awsexampledomain.com. TXT @172.16.173.64 +short); echo -e "$domain" >> RecursiveResolver_results.txt; done $ awk ' " " ' RecursiveResolver_results.txt | sort | uniq -c 1344 "Record with Weight 20" 3780 "Record with Weight 50" 4876 "Record with Weight 70"
Use los resultados de las pruebas para solucionar su problema específico
Problema: Los recursos de punto de conexión de los registros ponderados no reciben la proporción de tráfico esperada.
La ruta 53 envía el tráfico a los recursos en función del peso asignado al registro como proporción del peso total de todos los registros. Los solucionadores de DNS intermedios almacenan en caché las respuestas de DNS durante el registro TTL. Los clientes solo se dirigen a puntos de conexión específicos durante el tiempo debido a la respuesta almacenada en caché.
Ejemplo
Realiza una consulta al solucionador de DNS de almacenamiento en caché 192.168.1.2:
$ for i in {1..10000}; do domain=$(dig weighted.awsexampledomain.com. TXT @192.168.1.2 +short); echo -e "$domain" >> CachingResolver_results.txt; done $ awk ' " " ' CachingResolver_results.txt | sort | uniq -c 3561 "Record with Weight 20" 1256 "Record with Weight 50" 5183 "Record with Weight 70"
Tenga en cuenta que los resultados anteriores no son los esperados debido a la caché del solucionador de DNS recursivo.
Problema: Algunos registros ponderados no se devuelven.
- Si asocia las comprobaciones de estado a un conjunto de registros de recursos, Route 53 responde con el registro solo si la comprobación de estado asociada se realiza correctamente. Para obtener más información, consulte Cómo determina Amazon Route 53 si una comprobación de estado es correcta.
- Si un RRSet de una póliza no incluye una comprobación de estado adjunta, siempre se considera que está en buen estado. También se incluye en las posibles respuestas a las consultas de DNS. Los registros que no superen las comprobaciones de estado no se devuelven. Compruebe la configuración de comprobación de estado y asegúrese de que se registre como correcta.
- Si utiliza «Evaluar el estado objetivo» con el registro del recurso establecido, Route 53 se basa en la comprobación de estado indicada por el recurso final. Para obtener más información, consulte ¿Por qué mi registro de alias apunta a un equilibrador de carga de aplicaciones marcado como no en buen estado cuando utilizo «Evaluar el estado del destino»?
Ejemplo
Algunas comprobaciones de estado están fallando:
Nombre | Tipo | TTL | Valores | Peso | Estado de la comprobación de estado |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 0» | Peso=0 | Comprobación de estado exitosa |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 20» | Peso=20 | Comprobación de estado exitosa |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 50» | Peso=50 | Comprobación de estado fallida |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 70» | Peso=70 | Comprobación de estado exitosa |
$ for i in {1..10000}; do domain=$(dig weighted.awsexampledomain.com. TXT @192.168.1.2 +short); echo -e "$domain" >> HealthCheck_results.txt; done $ awk ' " " ' HealthCheck_results.txt | sort | uniq -c 3602 "Record with Weight 20" 6398 "Record with Weight 70"
En este ejemplo, Route 53 no devuelve el «Registro con un peso de 50» porque su comprobación de estado no funciona.
Problema: Todos los registros ponderados no están en buen estado.
Incluso si ninguno de los registros de un grupo de registros está en buen estado, Route 53 debe proporcionar una respuesta a las consultas de DNS. Sin embargo, no hay ninguna base para elegir un registro en lugar de otro. En este caso, Route 53 considera que todos los registros del grupo están en buen estado. Se selecciona un registro en función de la política de enrutamiento y de los valores que especifique para cada registro.
Ejemplo
Nombre | Tipo | TTL | Valores | Peso | Estado de la comprobación de estado |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 0» | Peso=0 | Comprobación de estado fallida |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 20» | Peso=20 | Comprobación de estado fallida |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 50» | Peso=50 | Comprobación de estado fallida |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 70» | Peso=70 | Comprobación de estado fallida |
$ for i in {1..10000}; do domain=$(dig weighted.awsexampledomain.com. TXT @205.251.194.16 +short); echo -e "$domain" >> All_UnHealthy_results.txt; done $ awk ' " " ' All_UnHealthy_results.txt | sort | uniq -c 1446 "Record with Weight 20" 3554 "Record with Weight 50" 5000 "Record with Weight 70"
En este ejemplo, Route 53 consideró que todos los registros estaban en buen estado (no se pudo abrir). Route 53 respondió a las solicitudes de DNS en función de las proporciones configuradas. No se devuelve «Grabar con peso 0» porque su peso es cero.
Nota: Si establece ponderaciones distintas de cero en algunos registros y cero en otros, las comprobaciones de estado funcionan igual que cuando todos los registros tienen ponderaciones distintas de cero. Sin embargo, hay algunas excepciones:
- Inicialmente, la Ruta 53 solo considera los registros con ponderación distinta de cero en buen estado, si los hay.
- Si todos los registros distintos de cero no están en buen estado, Route 53 considera los registros en buen estado con una ponderación cero.
Ejemplo
Nombre | Tipo | TTL | Valores | Peso | Estado de la comprobación de estado |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 0» | Peso=0 | Pase de comprobación de estado |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 20» | Peso=20 | Pase de comprobación de estado |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 50» | Peso=50 | Comprobación de estado fallida |
weighted.awsexampledomain.com. | TXT | 300 | «Grabar con un peso de 70» | Peso=70 | Comprobación de estado fallida |
$ for i in {1..10000}; do domain=$(dig weighted.awsexampledomain.com. TXT @192.168.1.2 +short); echo -e "$domain" >> HealthCheck_results.txt; done $ awk ' " " ' HealthCheck_results.txt | sort | uniq -c 10000 "Record with Weight 20"
En este ejemplo, Route 53 no considera el registro con un peso 0. A menos que todos los registros ponderados no estén en buen estado, Route 53 no devuelve los registros con ponderación cero.
Si establece un peso igual para todos los registros de un grupo, el tráfico se dirige a todos los recursos en buen estado con la misma probabilidad. Si establece «Peso» en cero para todos los registros de un grupo, el tráfico se dirige a todos los recursos en buen estado con la misma probabilidad.
Información relacionada
Elección de una política de enrutamiento
Cómo elige Amazon Route 53 los registros cuando se configura la comprobación de estado

Contenido relevante
- preguntada hace un meslg...
- preguntada hace 2 meseslg...
- Como solucionar el error: Supplied Policy document is breaching Cloudwatch Logs policy length limit.Respuesta aceptadapreguntada hace 2 meseslg...
- preguntada hace 3 meseslg...
- preguntada hace un meslg...
- OFICIAL DE AWSActualizada hace 2 años
- OFICIAL DE AWSActualizada hace 2 años
- OFICIAL DE AWSActualizada hace 2 años
- OFICIAL DE AWSActualizada hace 2 años