Fichier hosts qui ne fonctionne pas ? Solutions Windows, Mac, Linux
Le fichier hosts est ignoré ou /etc/hosts ne s’applique pas ? Corrigez-le sous Windows, Mac et Linux : flush DNS, syntaxe, IPv6, fins de ligne, caches de résolveur et permissions.
Équipe Locahl
Sommaire
- Checklist rapide (le plus fréquent d’abord)
- Erreurs de syntaxe qui cassent le fichier en silence
- IPv6 vs IPv4
- Windows : pourquoi les modifications hosts sont ignorées
- macOS : pourquoi /etc/hosts est ignoré
- Linux : caches de résolveur et ordre
- Vérifier en ligne de commande
- Arrêtez de vous battre avec le fichier hosts
- Sources et ressources externes
Si le fichier hosts « ne fonctionne pas », l’entrée est presque toujours correcte mais quelque chose en aval l’ignore — généralement un cache DNS périmé, un cache navigateur, une petite erreur de syntaxe, ou un autre résolveur qui prend le dessus. Suivez la checklist ordonnée ci-dessous ; elle vaut pour /etc/hosts sous macOS et Linux et C:\Windows\System32\drivers\etc\hosts sous Windows.
Checklist rapide (le plus fréquent d’abord)
1. Videz le cache DNS. Les modifications ne s’appliquent qu’après un flush — voir comment vider le cache DNS sur chaque OS. 2. Videz le cache DNS du navigateur et ouvrez un nouvel onglet — chrome://net-internals/#dns. 3. Vérifiez la syntaxe : IP<espace-ou-tab>nom_d_hôte, sans http://, sans port, sans commentaire collé au nom. 4. Confirmez qu’elle n’est pas commentée (pas de # en début de ligne). 5. Ajoutez un saut de ligne final après la dernière entrée et réenregistrez. 6. Confirmez l’enregistrement avec les droits admin/root (pas de « accès refusé » silencieux). 7. Écartez un autre résolveur (VPN, proxy, systemd-resolved, nscd) — détails par OS plus bas.
Erreurs de syntaxe qui cassent le fichier en silence
# Faux
http://127.0.0.1 monapp.test # pas de schéma autorisé
127.0.0.1:3000 monapp.test # pas de port autorisé
127.0.0.1 *.monapp.test # pas de wildcard (voir dnsmasq)
# Correct
127.0.0.1 monapp.test
127.0.0.1 monapp.test www.monapp.testLe fichier hosts ne reconnaît que les noms exacts et ignore ports et schémas. Pour toutes les règles, voir le guide de syntaxe du fichier hosts. Les wildcards nécessitent dnsmasq — voir domaines locaux wildcard avec dnsmasq.
IPv6 vs IPv4
Si un nom résout mais que la connexion échoue, l’appli préfère peut-être l’IPv6. Mappez les deux :
127.0.0.1 monapp.test
::1 monapp.testContexte : 127.0.0.1 vs localhost. Si localhost lui-même refuse la connexion, voir localhost n’autorise pas la connexion.
Windows : pourquoi les modifications hosts sont ignorées
- Pas vidé / pas élevé : enregistrez dans un éditeur ouvert via Exécuter en tant qu’administrateur, puis
ipconfig /flushdns. - « Protection hosts » de l’antivirus : Norton, McAfee, Kaspersky et l’accès contrôlé aux dossiers peuvent bloquer ou annuler les éditions.
- Mauvais fichier : vérifiez avoir édité
C:\Windows\System32\drivers\etc\hosts(sans extension). Voir modifier le fichier hosts sous Windows.
macOS : pourquoi /etc/hosts est ignoré
- Cache système :
sudo dscacheutil -flushcache && sudo killall -HUP mDNSResponder. - Noms .local : ils passent par mDNS/Bonjour, pas par le fichier hosts — utilisez plutôt
.test. - Enregistré sans sudo / mauvaises fins de ligne : utilisez
sudo nano /etc/hostset gardez des fins de ligne Unix (LF). Guide Mac détaillé : le fichier hosts ne fonctionne pas sur Mac.
Linux : caches de résolveur et ordre
- Cache systemd-resolved :
sudo resolvectl flush-caches(ousudo systemd-resolve --flush-caches). - Cache nscd :
sudo systemctl restart nscds’il est installé. - Ordre NSS : vérifiez
/etc/nsswitch.conf— la lignehosts:doit listerfilesavantdns(ex.hosts: files dns), sinon le DNS peut l’emporter. - Flag immuable :
lsattr /etc/hosts; retirez-le avecsudo chattr -i /etc/hostssi présent. Puis videz le DNS sous Linux.
Vérifier en ligne de commande
# macOS / Linux
getent hosts monapp.test
ping monapp.test
# Windows
nslookup monapp.test
ping monapp.testSi ces commandes renvoient l’IP de votre fichier hosts mais pas le navigateur, c’est le navigateur qui est périmé. Si elles renvoient la mauvaise IP, la couche système (cache, syntaxe, résolveur) est encore en cause — pas le navigateur.
Arrêtez de vous battre avec le fichier hosts
La plupart des cas « le fichier hosts ne fonctionne pas » sont un flush oublié ou une ligne malformée. Un gestionnaire de hosts comme Locahl valide chaque entrée, garde le fichier syntaxiquement correct, et vide le DNS automatiquement après chaque changement — pour que les éditions prennent effet du premier coup. Pour éditer à la main sans risque, voir comment modifier le fichier hosts et comment fonctionne la résolution DNS.
_Dernier test : juin 2026 sur Windows 11, macOS 26 Tahoe et Ubuntu 24.04._
Sources et ressources externes
- Page de manuel hosts(5) (man7.org)
- Comment fonctionne le DNS (Cloudflare Learning)
- Le fichier hosts expliqué (Wikipédia)
Prêt à simplifier votre workflow ?
Arrêtez de perdre du temps avec le terminal. Locahl vous permet de gérer votre fichier hosts en quelques clics, avec validation automatique et sans risque d'erreur.
- Interface visuelle intuitive
- Flush DNS automatique
- Gestion multi-environnements
- Sauvegardes automatiques
- Import/Export JSON
Avis des lecteurs
"Ma modification était ignorée car la ligne n’avait pas de saut de ligne final. La section syntaxe l’a repéré tout de suite."
21 juin 2026
"Sous Ubuntu, c’était le cache de systemd-resolved. La section résolveur Linux était exactement ce qu’il me fallait."
20 juin 2026
"Checklist multiplateforme solide. L’astuce sur les fins de ligne CRLF m’a sauvé sur un fichier copié depuis Windows."
19 juin 2026
Questions fréquentes
Pourquoi mon fichier hosts ne fonctionne pas ?
Raisons les plus fréquentes : le cache DNS n’a pas été vidé, le navigateur a son propre cache, la ligne a une erreur de syntaxe (mauvais séparateur, pas de saut de ligne final, ou http://), l’entrée est commentée, ou un autre résolveur (VPN, systemd-resolved, nscd) prend le dessus.
Comment faire prendre effet /etc/hosts immédiatement ?
Enregistrez le fichier avec les droits admin/root, puis videz le cache DNS (ipconfig /flushdns sous Windows, sudo dscacheutil -flushcache && sudo killall -HUP mDNSResponder sous macOS, sudo resolvectl flush-caches sous Linux) et videz le cache DNS du navigateur.
Le fichier hosts a-t-il priorité sur le DNS ?
Généralement oui — le fichier hosts est consulté avant le DNS externe pour la plupart des résolutions. Mais un VPN, un proxy ou un résolveur cache peuvent intercepter les noms, et le fichier hosts ne gère pas les wildcards.
Pourquoi le fichier hosts marche dans le terminal mais pas dans le navigateur ?
Le navigateur garde un cache DNS séparé et peut réutiliser une connexion active. Videz-le (chrome://net-internals/#dns) et ouvrez un nouvel onglet. Si le terminal échoue aussi, corrigez d’abord la couche système.
De mauvaises fins de ligne peuvent-elles casser le fichier hosts ?
Oui. Sous macOS/Linux, un fichier enregistré avec des fins de ligne Windows (CRLF) ou sans saut de ligne final peut faire ignorer la dernière entrée. Utilisez un éditeur de texte brut et des fins de ligne Unix (LF).
Articles similaires
Modifier le fichier hosts (Windows, Mac, Linux)
Guide complet pour éditer le fichier hosts sur Windows, macOS et Linux : emplacements, droits administrateur, syntaxe, flush DNS et dépannage en 2026.
Équipe Locahl
Comment vider le cache DNS (Windows, Mac, Linux, Chrome)
Comment vider le cache DNS sur Windows, Mac, Linux et Chrome. Copiez la commande exacte pour votre système, comprenez à quoi sert le flush DNS et s’il est sans risque.
Équipe Locahl
Outils développeurs
Réinitialiser le fichier hosts par défaut (Windows, Mac, Linux)
Réinitialisez et restaurez le fichier hosts par défaut sur Windows, macOS et Linux. Copiez le contenu par défaut exact, sauvegardez d’abord, puis videz le DNS pour appliquer.
Équipe Locahl
Outils développeurs
Corriger DNS_PROBE_FINISHED_NXDOMAIN (2026)
Corrigez DNS_PROBE_FINISHED_NXDOMAIN dans Chrome et Edge : videz le DNS, vérifiez le fichier hosts, changez de serveurs DNS et videz le cache du navigateur.
Équipe Locahl
Outils développeurs
Vider le cache DNS dans Microsoft Edge (2026)
Videz le cache DNS dans Microsoft Edge avec edge://net-internals/#dns, videz les sockets et le cache DNS de Windows pour que les changements hosts s’appliquent.
Équipe Locahl
Outils développeurs