15%

Économisez 15% sur tous les services d'hébergement

Testez vos compétences et obtenez Réduction sur tout plan d'hébergement

Utilisez le code :

Skills
Commencer
25.10.2024
3 +2

Le fichier Hosts : ce que c’est, où le trouver et comment le modifier sur n’importe quel OS

Votre remplacement DNS local — Sans connexion Internet requise

Chaque fois que vous tapez un nom de domaine dans votre navigateur, votre ordinateur effectue discrètement un processus de recherche pour traduire ce nom en adresse IP. Mais avant de contacter un serveur DNS externe, il consulte un petit fichier texte souvent négligé, qui réside tranquillement sur votre système local : le fichier hosts.

Ce fichier est l’un des outils les plus puissants et sous-estimés disponibles pour les développeurs, les administrateurs système et les utilisateurs avancés. Il vous permet de mapper manuellement des noms de domaine à des adresses IP — instantanément, localement, et sans toucher à votre routeur ou à votre fournisseur DNS. Que vous testiez un nouveau site web avant sa mise en ligne, que vous bloquiez des serveurs publicitaires ou que vous diagnostiquiez des problèmes de propagation DNS, le fichier hosts vous offre un contrôle direct et bas niveau sur la façon dont votre machine résout les noms de domaine.

Dans ce guide, vous apprendrez exactement ce qu’est le fichier hosts, où le trouver sur Windows, macOS et Linux, et comment le modifier de manière sûre et efficace.

Qu’est-ce que le fichier hosts ?

Le fichier hosts est un fichier système en texte brut qui associe des noms d’hôtes (noms de domaine) à des adresses IP. Il est antérieur au système DNS moderne et était à l’origine le seul mécanisme utilisé pour résoudre les noms sur ARPANET. Aujourd’hui, il fonctionne toujours comme une couche de remplacement DNS locale — votre système d’exploitation le consulte en premier avant d’effectuer toute requête DNS externe.

Comment ça fonctionne

Lorsque vous naviguez vers un site web, votre système d’exploitation suit cet ordre de résolution :

  1. Consulter le fichier hosts local pour une entrée correspondante
  2. Interroger le cache DNS local
  3. Contacter le résolveur DNS configuré (par exemple, le DNS de votre FAI ou un résolveur public comme 8.8.8.8)

Si le fichier hosts contient une entrée correspondante, la recherche s’arrête là. Aucune requête DNS externe n’est effectuée. Cela le rend extrêmement rapide et utile pour les remplacements locaux.

Cas d’utilisation courants du fichier hosts

Cas d’utilisationComment ça fonctionne
Test de site web localPointer un domaine vers 127.0.0.1 ou l’IP d’un serveur de staging
Bloquer des sites indésirablesRediriger les domaines publicitaires ou de suivi vers 0.0.0.0
Contourner les délais de propagation DNSDéfinir manuellement l’IP d’un domaine récemment migré
Routage d’environnement de développementMapper des domaines locaux personnalisés vers des conteneurs Docker ou des VMs
Remplacer des entrées DNS incorrectesForcer une IP correcte lorsque le DNS est mal configuré

> Conseil Pro pour les développeurs : Si vous exécutez un environnement de développement local ou testez un site sur un serveur VPS Hosting avant que la propagation DNS soit terminée, modifier le fichier hosts est le moyen le plus rapide de prévisualiser votre site en ligne sans modifier vos paramètres DNS.

Où se trouve le fichier hosts ?

L’emplacement du fichier hosts varie selon le système d’exploitation. Voici une référence rapide :

Windows

C:WindowsSystem32driversetchosts

macOS

/etc/hosts

Linux (Toutes les distributions majeures)

/etc/hosts

Sur macOS et Linux, /etc/hosts est généralement un lien symbolique ou un fichier direct géré par le système. Sur les distributions Linux utilisant systemd-resolved, le fichier conserve toujours la priorité pour les remplacements locaux.

Comment modifier le fichier hosts sur Windows

La modification du fichier hosts sur Windows nécessite des privilèges administrateur. Le fichier est protégé par le système, donc les comptes utilisateurs standard ne peuvent pas le modifier.

Étape 1 : Ouvrir le Bloc-notes en tant qu’administrateur

  1. Appuyez sur Touche Windows + S et tapez Notepad dans la barre de recherche
  2. Faites un clic droit sur Bloc-notes dans les résultats
  3. Sélectionnez Exécuter en tant qu’administrateur
  4. Cliquez sur Oui si le Contrôle de compte d’utilisateur (UAC) vous y invite

Étape 2 : Ouvrir le fichier hosts

  1. Dans le Bloc-notes, cliquez sur Fichier → Ouvrir
  2. Naviguez vers : C:WindowsSystem32driversetc
  3. Dans le menu déroulant du type de fichier (à côté du champ de nom de fichier), changez-le de Text Documents (*.txt) à Tous les fichiers (*.*)
  4. Sélectionnez le fichier nommé hosts et cliquez sur Ouvrir

Étape 3 : Ajouter ou modifier des entrées

Le format de chaque entrée est simple :

[IP Address]    [Hostname]

Ajoutez vos entrées au bas du fichier. Par exemple :

# Redirect example.com to local development server
127.0.0.1       example.com

# Point testsite.com to a staging VPS
192.168.1.100   testsite.com

# Block an ad network
0.0.0.0         ads.unwanteddomain.com

Les lignes commençant par # sont des commentaires et sont ignorées par le système.

Étape 4 : Enregistrer le fichier

Cliquez sur Fichier → Enregistrer. Si vous recevez une erreur de permissions, assurez-vous d’avoir ouvert le Bloc-notes en tant qu’administrateur. Ne pas enregistrer le fichier avec une extension .txt.

Étape 5 : Vider le cache DNS

Après l’enregistrement, videz le cache DNS pour que vos modifications prennent effet immédiatement :

  1. Ouvrez l’Invite de commandes en tant qu’administrateur
  2. Exécutez la commande suivante :
ipconfig /flushdns

Vous devriez voir le message : *"Successfully flushed the DNS Resolver Cache."*

Comment modifier le fichier hosts sur macOS

Sur macOS, le fichier hosts est modifié via le Terminal à l’aide d’un éditeur de texte avec des privilèges sudo (superutilisateur).

Étape 1 : Ouvrir le Terminal

Appuyez sur Commande + Espace pour ouvrir la recherche Spotlight, tapez Terminal, et appuyez sur Entrée.

Étape 2 : Ouvrir le fichier hosts avec nano

Exécutez la commande suivante :

sudo nano /etc/hosts

Entrez votre mot de passe administrateur lorsque vous y êtes invité. Le mot de passe ne sera pas visible pendant la saisie — c’est normal.

Étape 3 : Modifier le fichier

L’éditeur de texte nano ouvrira le fichier hosts. Utilisez les touches fléchées pour naviguer jusqu’au bas du fichier et ajoutez vos entrées :

# Development environment
127.0.0.1       myproject.local

# Staging server
203.0.113.45    staging.example.com

# Block tracking domain
0.0.0.0         tracker.example.net

Étape 4 : Enregistrer et quitter

  • Appuyez sur Contrôle + O pour écrire (enregistrer) le fichier
  • Appuyez sur Entrée pour confirmer le nom du fichier
  • Appuyez sur Contrôle + X pour quitter nano

Étape 5 : Vider le cache DNS sur macOS

Exécutez la commande appropriée pour votre version de macOS :

macOS Monterey, Ventura, Sonoma (et la plupart des versions modernes) :

sudo killall -HUP mDNSResponder

macOS Big Sur et versions antérieures (alternative) :

sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

Vos modifications seront désormais actives sur l’ensemble du système.

Comment modifier le fichier hosts sur Linux

Linux suit le même processus général que macOS, car les deux sont des systèmes basés sur Unix. Vous aurez besoin d’un accès root ou sudo.

Étape 1 : Ouvrir le Terminal

Lancez votre application Terminal. Sur la plupart des environnements de bureau, vous pouvez la trouver dans votre menu d’applications ou appuyer sur Ctrl + Alt + T.

Étape 2 : Ouvrir le fichier hosts

sudo nano /etc/hosts

Entrez votre mot de passe root ou sudo lorsque vous y êtes invité.

Étape 3 : Ajouter vos entrées

Naviguez jusqu’au bas du fichier et ajoutez vos mappages personnalisés :

# Local dev environment
127.0.0.1       devsite.local

# Internal server
10.0.0.5        internal.company.com

# Block unwanted domain
0.0.0.0         malicious-ads.example.com

Étape 4 : Enregistrer et quitter

  • Appuyez sur Contrôle + O, puis sur Entrée pour enregistrer
  • Appuyez sur Contrôle + X pour quitter nano

Étape 5 : Vider le cache DNS sur Linux

La commande pour vider le DNS varie selon la distribution et le résolveur DNS :

Ubuntu / Debian (avec systemd-resolved) :

sudo systemd-resolve --flush-caches

Ou sur les versions plus récentes :

sudo resolvectl flush-caches

CentOS / RHEL / Fedora :

sudo systemctl restart NetworkManager

Arch Linux :

sudo systemd-resolve --flush-caches

Si vous exécutez un démon de mise en cache DNS personnalisé comme nscd ou dnsmasq, redémarrez le service concerné :

sudo systemctl restart nscd
# or
sudo systemctl restart dnsmasq

Comprendre la structure par défaut du fichier hosts

Lorsque vous ouvrez le fichier hosts pour la première fois sur n’importe quel système d’exploitation, vous verrez quelques entrées par défaut. Voici à quoi ressemble un fichier hosts Linux/macOS typique tel quel :

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1       localhost
255.255.255.255 broadcasthost
::1             localhost

Explication des entrées clés :

  • 127.0.0.1 localhost — Associe l’adresse de bouclage à « localhost ». C’est essentiel pour la mise en réseau locale et ne doit jamais être supprimé.
  • ::1 localhost — L’équivalent IPv6 de l’adresse de bouclage.
  • 255.255.255.255 broadcasthost — Utilisé pour la diffusion réseau (spécifique à macOS).

Ne supprimez jamais ces entrées par défaut. Cela peut perturber la mise en réseau des applications locales, les connexions aux bases de données et d’autres services système.

Bonnes pratiques pour modifier le fichier hosts

1. Toujours créer une sauvegarde en premier

Avant d’apporter des modifications, sauvegardez le fichier original :

Linux / macOS :

sudo cp /etc/hosts /etc/hosts.backup

Windows (Invite de commandes en tant qu’administrateur) :

copy C:WindowsSystem32driversetchosts C:WindowsSystem32driversetchosts.backup

En cas de problème, vous pouvez restaurer l’original immédiatement.

2. Utiliser des commentaires pour documenter vos modifications

Annotez toujours vos entrées avec des commentaires en utilisant #. C’est particulièrement important dans les environnements d’équipe ou de serveur :

# Added 2024-01-15 — Staging environment for client project
192.168.1.50    staging.clientproject.com

# Temporary block — remove after campaign ends
0.0.0.0         ads.campaign-tracker.net

3. Utiliser 0.0.0.0 plutôt que 127.0.0.1 pour le blocage

Pour bloquer des domaines, 0.0.0.0 est généralement préféré à 127.0.0.1 car :

  • Il ne tente pas de connexion à votre machine locale
  • Il échoue plus rapidement (pas de délai d’expiration de connexion)
  • Il n’interfère pas avec les serveurs web locaux fonctionnant sur le port 80/443

4. Ne pas bloquer les domaines système critiques

Soyez prudent lorsque vous bloquez des domaines liés à :

  • Windows Update ou les services de mise à jour logicielle macOS
  • Les serveurs de mise à jour des antivirus
  • Les services de synchronisation cloud (Dropbox, OneDrive, iCloud)
  • Les serveurs de validation de licence des logiciels que vous utilisez

5. Garder les entrées organisées

Regroupez les entrées associées et utilisez des en-têtes de commentaires pour plus de clarté :

# ==========================================
# LOCAL DEVELOPMENT ENVIRONMENTS
# ==========================================
127.0.0.1       myapp.local
127.0.0.1       api.myapp.local

# ==========================================
# BLOCKED DOMAINS
# ==========================================
0.0.0.0         ads.example.com
0.0.0.0         tracker.example.net

6. N’oubliez pas que les modifications du fichier hosts sont uniquement locales

Le fichier hosts n’affecte que la machine sur laquelle il se trouve. Si vous gérez plusieurs serveurs ou avez besoin de modifications DNS qui s’appliquent à l’ensemble de votre infrastructure, vous devrez configurer le DNS au niveau du serveur ou du réseau. Pour les équipes gérant plusieurs environnements, un Serveur Dédié correctement configuré avec un résolveur DNS local (comme BIND ou Unbound) est une solution plus évolutive.

Cas d’utilisation avancés

Tester un site web avant la propagation DNS

Lorsque vous migrez un site web vers un nouvel hébergeur ou un nouveau VPS avec cPanel, la propagation DNS peut prendre de quelques minutes à 48 heures. Au lieu d’attendre, vous pouvez ajouter l’IP du nouveau serveur à votre fichier hosts et tester immédiatement le site en ligne tel qu’il apparaîtra sur le nouveau serveur :

# Testing migration to new VPS — remove after DNS propagates
203.0.113.10    yourdomain.com
203.0.113.10    www.yourdomain.com

Ouvrez votre navigateur, naviguez vers yourdomain.com, et vous verrez le site tel qu’il est hébergé sur le nouveau serveur — tandis que tout le monde voit encore l’ancien.

Configurer des domaines de développement local

Les développeurs préfèrent souvent utiliser des noms de domaine réalistes pour les projets locaux plutôt que localhost:3000. Vous pouvez créer des domaines locaux personnalisés :

127.0.0.1       myproject.dev
127.0.0.1       api.myproject.dev
127.0.0.1       admin.myproject.dev

Associez cela à un serveur web local (Apache, Nginx ou Caddy) configuré avec des hôtes virtuels, et vous disposez d’un environnement de développement local propre et professionnel.

Bloquer des réseaux publicitaires entiers

Vous pouvez ajouter plusieurs entrées pour bloquer les domaines connus de diffusion de publicités et de suivi :

0.0.0.0         doubleclick.net
0.0.0.0         googlesyndication.com
0.0.0.0         adservice.google.com

Pour une approche plus complète, des projets comme le fichier hosts de StevenBlack fournissent des fichiers hosts consolidés et régulièrement mis à jour avec des dizaines de milliers de domaines bloqués.

Résolution des problèmes courants liés au fichier hosts

Les modifications ne prennent pas effet

  • Avez-vous vidé le cache DNS ? C’est la cause la plus courante. Exécutez la commande de vidage appropriée pour votre système d’exploitation.
  • Avez-vous enregistré le fichier correctement ? Sur Windows, assurez-vous de ne pas l’avoir enregistré accidentellement sous hosts.txt.
  • Votre navigateur utilise-t-il son propre cache DNS ? Chrome et Firefox maintiennent leurs propres caches DNS. Essayez de les vider ou d’ouvrir une fenêtre privée/incognito.
  • Utilisez-vous un VPN ? Les clients VPN remplacent souvent les paramètres DNS locaux, contournant entièrement le fichier hosts.

Erreurs de permission refusée

  • Windows : Assurez-vous que le Bloc-notes (ou votre éditeur) s’exécute en tant qu’administrateur.
  • Linux/macOS : Assurez-vous d’utiliser sudo avant votre commande.

Le site web résout toujours vers l’ancienne IP

  • Vérifiez que l’entrée est correctement formatée : IP_ADDRESS[TAB or SPACES]hostname — pas de http:// ni de barres obliques finales.
  • Vérifiez les fautes de frappe dans le nom de domaine.
  • Confirmez qu’il n’y a pas d’entrées conflictuelles plus haut dans le fichier.

Vous avez accidentellement cassé quelque chose

Restaurez votre sauvegarde :

# Linux/macOS
sudo cp /etc/hosts.backup /etc/hosts

# Windows (as Administrator)
copy C:WindowsSystem32driversetchosts.backup C:WindowsSystem32driversetchosts

Fichier hosts vs. DNS : Quand utiliser lequel

ScénarioFichier hostsConfiguration DNS
Test local rapide sur une seule machine✅ Idéal❌ Excessif
Environnement de développement pour toute l’équipe❌ Ne s’adapte pas✅ Utiliser un DNS interne
Bloquer des sites sur un seul appareil✅ Fonctionne bien❌ Inutile
Gestion de domaine en production❌ Inapproprié✅ Requis
Test de site avant lancement✅ Parfait❌ Affecterait tous les utilisateurs
Infrastructure multi-serveurs❌ Trop manuel✅ Essentiel

Pour les environnements de production, gérez toujours le DNS via votre bureau d’enregistrement de domaine ou le panneau de contrôle d’hébergement. Si vous avez besoin d’enregistrer ou de gérer des domaines de manière professionnelle, l’Enregistrement de domaine auprès d’un fournisseur fiable garantit que vos enregistrements DNS sont propagés correctement et en toute sécurité sur Internet.

De même, si vous exploitez un serveur de messagerie et devez assurer une bonne délivrabilité des e-mails, la modification du fichier hosts ne remplace pas des enregistrements MX correctement configurés. Explorez des solutions d’Hébergement de messagerie dédiées pour une infrastructure de messagerie fiable et correctement configurée.

Référence rapide : Aide-mémoire du fichier hosts

Emplacements des fichiers

Système d’exploitationChemin
WindowsC:WindowsSystem32driversetchosts
macOS/etc/hosts
Linux/etc/hosts

Ouvrir pour modification

Système d’exploitationCommande / Méthode
WindowsBloc-notes → Exécuter en tant qu’administrateur → Fichier → Ouvrir
macOSsudo nano /etc/hosts
Linuxsudo nano /etc/hosts

Vider le cache DNS

Système d’exploitationCommande
Windowsipconfig /flushdns
macOSsudo killall -HUP mDNSResponder
Ubuntu/Debiansudo systemd-resolve --flush-caches
CentOS/RHELsudo systemctl restart NetworkManager

Format des entrées

[IP Address]    [hostname]    [optional alias]

# Examples:
127.0.0.1       localhost
127.0.0.1       myapp.local
0.0.0.0         blocked-site.com
192.168.1.10    staging.example.com

Conclusion : Maîtrisez votre DNS local avec le fichier hosts

Le fichier hosts est un outil d’une simplicité trompeuse avec une utilité étonnamment large. En quelques lignes de texte brut, vous pouvez rediriger des domaines, bloquer du contenu indésirable, tester de nouvelles configurations de serveur et diagnostiquer des problèmes DNS — le tout sans toucher à votre routeur, à votre fournisseur DNS ou à votre infrastructure réseau.

Les points clés à retenir :

  • Toujours sauvegarder le fichier hosts avant de le modifier
  • Utiliser des commentaires pour documenter chaque modification apportée
  • Vider votre cache DNS après chaque modification pour s’assurer que les changements s’appliquent immédiatement
  • Utiliser 0.0.0.0 plutôt que 127.0.0.1 pour bloquer des domaines
  • N’oubliez pas que c’est local — les modifications du fichier hosts n’affectent que la machine sur laquelle elles sont effectuées

Pour les développeurs et les administrateurs système travaillant avec des environnements hébergés, le fichier hosts se marie parfaitement avec un serveur bien configuré. Que vous testiez une nouvelle application sur un plan VPS Hosting, que vous prévisualisiez un site sur un compte Hébergement Web Partagé avant sa mise en ligne, ou que vous validiez la configuration SSL après l’installation d’un Certificat SSL, le fichier hosts vous offre le contrôle local dont vous avez besoin pour travailler avec confiance et efficacité.

Maintenant, ouvrez ce fichier, apportez vos modifications avec soin, videz votre cache et prenez le contrôle total de la façon dont votre machine voit Internet.

15%

Économisez 15% sur tous les services d'hébergement

Testez vos compétences et obtenez Réduction sur tout plan d'hébergement

Utilisez le code :

Skills
Commencer