Messages d’erreur

« curl: (6) Could not resolve host » sur Mac

Le code de sortie 6 de curl signifie que curl n’a pas pu obtenir d’adresse pour le nom d’hôte. La documentation de curl dit : « The given remote host was not resolved. » (l’hôte distant indiqué n’a pas été résolu).

S’applique à : le curl fourni avec macOS et le curl de Homebrew, sur toutes les versions actuelles de macOS.Vérifié le 29 octobre 2026

Symptômes

  • Terminal affiche curl: (6) Could not resolve host: example.com.
  • Les scripts et installateurs qui utilisent curl s’arrêtent avec le code de sortie 6.
  • La même adresse s’ouvre dans un navigateur, ou y échoue aussi.

Causes probables

  • Une faute de frappe ou un hôte vide. Une variable dans un script peut être vide, et curl reçoit alors un mauvais nom.
  • Pas de connexion ou pas de DNS. Le Mac ne peut joindre aucun serveur DNS.
  • Un VPN avec son propre DNS. Les noms internes de l’entreprise ne se résolvent que lorsque le VPN est activé.
  • Un proxy que curl n’utilise pas. Sur les réseaux qui n’autorisent qu’un proxy, curl a besoin des réglages du proxy. Il laisse alors le proxy résoudre le nom.

Comment vérifier

  1. Affichez la commande exacte. Vérifiez que le nom d’hôte est correct.

  2. Résolvez le nom avec le résolveur de macOS.

    dscacheutil -q host -a name example.com
  3. Interrogez directement un serveur DNS public. Une réponse ici, mais pas à l’étape précédente, désigne vos réglages DNS.

    dig +short example.com @1.1.1.1
  4. Affichez les variables de proxy que curl lit.

    env | grep -i proxy
  5. Lancez curl en mode détaillé. Les premières lignes montrent la résolution du nom.

    curl -v https://example.com

Comment corriger

  1. Si la résolution échoue aussi dans macOS, réparez le DNS. Consultez Le DNS ne résout pas les noms sur un Mac.

  2. Si le réseau exige un proxy, définissez-le pour curl.

    export https_proxy=http://proxy.example.com:8080
  3. Pour un nom interne à l’entreprise, connectez d’abord le VPN.

  4. Videz le cache DNS, puis réessayez. Consultez Vider le cache DNS sur un Mac.

Avec Kilobat

  1. Le diagnostic de connexion de Kilobat teste le nom couche par couche : réseau, proxy, DNS, règles, IPv4, IPv6, TLS et serveur. Il nomme la couche qui a échoué.

    kilobat why example.com
  2. Pour utiliser les variables de proxy d’un processus en cours, ajoutez --app avec son nom.

    kilobat why https://example.com --app process:curl
  3. Ces vérifications Kilobat sont gratuites. Les agents IA les lancent via MCP avec diagnose_connection et diagnose_network. Consultez Trouver pourquoi un site ou une API ne se connecte pas.

Questions

Pourquoi le navigateur fonctionne-t-il mais pas curl ?

Le navigateur peut utiliser le proxy du système ou son propre DNS. curl lit des variables de proxy comme https_proxy. Consultez Des réglages de proxy empêchent les apps de se connecter sur un Mac.

Sources

Sources vérifiées le 29 octobre 2026. Les pages man sont celles installées avec macOS ; ouvrez-en une avec man <name> dans Terminal.