AI Frontier

Passerelle OpenClaw : résolution DNS, cache négatif et budgets de retry sur macOS en 2026

MacHTML Lab2026.05.0830 min de lecture

Lorsqu’une passerelle OpenClaw ne joint plus soudain ses hôtes d’outils, les tickets partent presque par réflexe vers TLS ou les clés d’API. Pourtant, en 2026, les post-mortems restent souvent silencieux sur le DNS : cache négatif, résolveurs split-horizon et boucles de retry qui martèlent encore NXDOMAIN des minutes après une faute de frappe. macOS mélange mDNSResponder, caches par processus et DNS injecté par VPN, bien loin des conteneurs Linux de staging. Ce guide sépare NXDOMAIN et timeouts, calibre les budgets de retry, aligne les sondes de santé sur la vraie chaîne de résolveurs et recommande des répétitions sur Apple Silicon avant d’élargir le blast radius.

À lire en parallèle : diagnostic passerelle OpenClaw doctor, surveillance de santé de passerelle et tunnel SSH CLI distant lorsque DNS et routage se croisent.

Signaux : NXDOMAIN, SERVFAIL, timeout

Les journaux structurés doivent inclure dns_rcode, la latence résolveur en millisecondes et le nom de la bibliothèque. Sans ces champs, des heures partent en débogage TLS alors que NXDOMAIN suffisait.

TTL négatif sur macOS

Les minima SOA faisant foi bornent le cache négatif. mDNSResponder respecte ces indications, mais l’espace utilisateur garde souvent ses propres caches. Combinez dscacheutil -flushcache avec un redémarrage de processus et documentez les étapes sudo pour les revues sécurité.

Table de retry avec jitter

ScénarioTentativesPlafondJitter
Timeout transitoire38 s±20 %
NXDOMAIN après typo1n/aArrêt et correction de config
Rafale SERVFAIL532 s±35 %

Sondes de santé vs trafic réel

Des checks synthétiques qui ne voient que le résolveur du datacenter restent verts pendant que les clients split-DNS échouent. Faites suivre aux sondes la même chaîne ou limitez les astuces /etc/hosts au labo.

mDNS .local contre unicast

Des outils LAN annonçant *.local peuvent masquer des noms d’entreprise en unicast, surtout si la passerelle cohabite avec un poste design. Utilisez des FQDN et évitez les raccourcis Bonjour dans les environnements LaunchAgent.

VPN et portails captifs

Un VPN full-tunnel avec DNS d’entreprise peut, à la coupure, basculer vers des résolveurs publics qui répondent NXDOMAIN pour des hôtes internes. Ajoutez un watchdog qui vide les caches lors des transitions d’état VPN.

Matrice de réponse

  • NXDOMAIN + déploiement récent : rollback, flush cache, redémarrage passerelle.
  • Pics SERVFAIL : escalade résolveur, baisse temporaire du parallélisme.
  • Timeouts seuls : perte paquets, MTU trou noir, boîte TLS intermédiaire.

Métriques

Exposez dns_query_total avec label rcode et un histogramme de latence. Alerte si NXDOMAIN dépasse 0,5 % sur 10 minutes—souvent une config cassée. Croisez avec http_client_errors_total{reason="connect"} pour savoir si l’échec précède TLS. Limitez la cardinalité en regroupant les hôtes par familles de service.

LaunchAgent et préchauffe

Les redémarrages ne vident pas toujours le cache système. Documentez c-ares, getaddrinfo ou la pile HTTP utilisée. Avant l’état Ready, résolvez chaque FQDN critique deux fois pour distinguer froid et tiède.

Modèle split-horizon

Tableau avec IP résolveur, domaines de recherche et TTL mesurés pour succès et échec. Joignez des extraits dig +trace masqués au post-mortem pour les auditeurs sans SSH. Les caches négatifs internes durent souvent 300 à 900 secondes.

AAAA et Happy Eyeballs

IPv6 d’abord peut coûter des centaines de millisecondes si la route AAAA est morte. Journalisez le délai de course Happy Eyeballs (souvent ~300 ms) et son interaction avec les retries DNS. Épingler IPv4 est une dette à tracer.

Pools TLS après changement DNS

Les pools HTTP/2 gardent d’anciennes IP si les sockets restent chauds. Placez les timeouts idle sous le TTL DNS pour basculer vite et notez-le dans le runbook partagé avec l’équipe applicative.

Wi-Fi d’hôtel

Les passerelles sur portable voient des portails captifs qui détournent le DNS jusqu’aux pages d’acceptation. Des hôtes canaris détectent les signatures ; suspendez le fan-out d’outils et loggez captive_portal_suspected.

Les sites de formation ou congrès exigent souvent des listes blanches d’URL captives ; sans elles, de fausses alertes DNS consomment des heures.

Gouvernance et audits

Chaque changement DNS doit avoir un ticket avec IP de résolveur, plan de rollback et communication. Sans gouvernance, les équipes répètent les mêmes flush chaque semaine. Liez les rotations de certificats : les deux équipes doivent savoir quand vider les pools.

Les audits externes demandent souvent la preuve qu’aucun résolveur public fixe n’est en production si la conformité l’interdit. Archivez captures d’écran de config à côté des métriques.

Pour les équipes internationales, traduisez les runbooks aussi bien culturellement que techniquement : un FAI allemand peut mettre en cache des TTL négatifs différents d’un câblo-opérateur américain.

Runbooks SRE

Deux chemins : « résolveur down » contre « appli down ». Séparez les alertes TCP immédiates des HTTP 502 après connect réussi. Formez l’astreinte à vérifier NXDOMAIN avant de regénérer des certificats.

Game days : simulez un cache négatif avec un CNAME volontairement faux en staging, mesurez le temps de récupération avec et sans flush documenté.

EDNS client subnet et bascules CDN

Si la passerelle relaie l’option client subnet, les réponses géo diffèrent des simples dig depuis un portable. Documentez si les outils derrière un GTM renvoient des IP par région, sinon un test vert à Francfort ressemble à une panne à Sydney.

Pour le diagnostic, forcez la même IP source et les mêmes drapeaux ECS, ou désactivez-les explicitement pour comparer équitablement macOS et Linux.

DoT/DoH et conformité

DNS sur TLS/HTTPS améliore la confidentialité mais déplace l’observabilité : la middleware ne voit plus les requêtes en clair. Si la conformité impose DoH, prévoyez des résolveurs internes journalisés avec quotas plutôt que des endpoints publics par processus.

Vérifiez que les clients HTTP OpenClaw documentent la même utilisation de session DoH que vos preuves curl, sinon les reproductibilités divergent.

mTLS, SNI et cycles DNS décalés

Les passerelles mTLS avec listes SAN figées échouent « en TLS » après rotation DNS alors que le handshake bloque déjà sur un mauvais hôte. Corrélez TTL DNS et fenêtres de certificat ; planifiez le drain des pools avant rotation.

Multi-locataires et rate limits

Partager une sortie résolveur expose tout le monde à la tempête de retries d’un client. Ajoutez des sémaphores par locataire pour les lookups DNS et exportez dns_inflight pour voir si le goulot est le fan-out ou le résolveur.

Les téléphones d’astreinte peuvent recevoir des push lorsque dns_inflight dépasse un seuil pendant plus de 90 secondes—souvent plus tôt que les taux d’erreur HTTP.

FAQ

Pourquoi NXDOMAIN est-il pire qu’un DNS lent ?

Les réponses négatives se mettent en cache agressivement.

Contourner le DNS système ?

Seulement avec validation d’architecture.

Combien de tentatives ?

Par défaut trois avec jitter.

Pourquoi un Mac mini ?

Le résolveur se comporte comme en production pour beaucoup de passerelles.

Le DNS dépend de l’environnement : il faut la même pile résolveur, le même client VPN et les mêmes politiques d’énergie que vos opérateurs. Louer un Mac mini Apple Silicon via MacHTML (environ 16,9 USD/jour) reproduit des traces dscacheutil et des tests LaunchAgent sans nouveau CapEx. Après mise à jour des runbooks, éteignez l’instance : plus souple qu’un résolveur cassé laissé dans un staging partagé.

Une thermique silencieuse aide lors de longues captures : les mesures restent crédibles.

En bref : investissez dans des preuves DNS reproductibles, pas dans des rotations TLS répétées sans données.

Répéter les correctifs DNS OpenClaw sur macOS réel

Louez un Mac mini cloud pour valider les chemins résolveur, les procédures de flush et l’alignement des sondes de santé avant mise en production.

Déboguer le DNS passerelle
Dès 16,9 $/jour