Qu'est-ce que TTL ?
TTL (Time To Live - Temps de Vie) est un paramètre DNS qui spécifie, en secondes, combien de temps un enregistrement DNS doit être mis en cache par les résolveurs, navigateurs et autres systèmes avant qu'ils doivent demander une copie fraîche aux serveurs de noms faisant autorité. Les valeurs TTL équilibrent la propagation rapide des modifications DNS (TTL bas) et la charge réduite du serveur avec une meilleure performance (TTL haut).Comment Fonctionne TTL
DNS Query Flow with TTL:
1. Client queries resolver for example.com
2. Resolver checks cache - not found
3. Resolver queries authoritative server
4. Server returns: A record 192.0.2.1, TTL 3600
5. Resolver caches for 3600 seconds (1 hour)
6. Subsequent queries served from cache
7. After 3600s, cache expires, cycle repeats
Valeurs TTL Courantes
| TTL (secondes) | Durée | Cas d'Usage |
|---|---|---|
| 60-300 | 1-5 minutes | Pendant les modifications DNS, basculement |
| 300-900 | 5-15 minutes | Services dynamiques |
| 3600 | 1 heure | Sites web standards |
| 14400 | 4 heures | Enregistrements stables |
| 86400 | 24 heures | Enregistrements rarement modifiés |
TTL dans les Enregistrements DNS
Format d'Enregistrement
example.com. 3600 IN A 192.0.2.1
│
└── TTL in seconds
TTL Différents par Enregistrement
; Stable nameservers - high TTL
example.com. 86400 IN NS ns1.example.com.
; Web server - moderate TTL
www.example.com. 3600 IN A 192.0.2.1
; Dynamic content - low TTL
api.example.com. 300 IN A 192.0.2.50
Stratégie TTL
Avant les Modifications DNS
Réduire le TTL avant les modifications planifiées :
Timeline:
Day -2: Lower TTL from 86400 to 300
Day 0: Make DNS change
Day 0+: Change propagates within 5 minutes
Day +1: Raise TTL back to 86400
Compromis
| TTL Bas (60-300) | TTL Élevé (3600+) |
|---|---|
| Propagation rapide | Propagation lente |
| Plus de requêtes DNS | Moins de requêtes DNS |
| Charge serveur plus élevée | Charge serveur inférieure |
| Meilleur pour le basculement | Meilleur pour la stabilité |
| Latence plus élevée | Latence inférieure |
TTL et Propagation DNS
TTL affecte directement le temps de propagation :
Max propagation time ≈ Highest cached TTL
If TTL = 86400 (24 hours):
- Some users see old IP for up to 24 hours
- Global propagation: up to 24-48 hours
If TTL = 300 (5 minutes):
- Most users see new IP within 5-10 minutes
- Global propagation: under 1 hour
Vérification du TTL Actuel
Utilisation de dig
dig example.com A
;; ANSWER SECTION:
example.com. 3542 IN A 192.0.2.1
│
└── Remaining TTL (seconds until cache expires)
Utilisation de nslookup
nslookup -debug example.com
Meilleures Pratiques
1. Utiliser des valeurs appropriées : Faire correspondre le TTL à la volatilité de l'enregistrement
2. Réduire avant les modifications : Réduire le TTL 24-48 heures avant
3. Considérer les couches de mise en cache : Les CDN et navigateurs ajoutent des délais
4. Équilibrer la charge vs la vitesse : Ne pas définir inutilement bas
5. Surveiller après les modifications : Vérifier que la propagation est complète
6. Documenter les normes : Établir les politiques TTL
TTL est un concept DNS fondamental qui impacte directement la vitesse à laquelle les modifications DNS prennent effet sur Internet et la charge que vos serveurs de noms gèrent.