La modification de / etc / hosts n'a aucun effet

17

J'essaie de m'empêcher de perdre du temps sur les sites Web, mais je modifie / etc / hosts. Par exemple:

127.0.0.1   localhost
127.0.1.1   ross-laptop

127.0.0.1   bing.com

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

Je peux accéder à bing.com dans un Chrome ou Firefox fraîchement ouvert - pourquoi cela ne fonctionne-t-il pas?

Ross
la source

Réponses:

17

Vous trouverez les navigateurs et le système mettra les choses en cache pour vous. Pour que cela s'applique immédiatement, vous devez vous assurer d'effacer les caches et de redémarrer votre navigateur. Afin de tester cela, essayez d'effectuer une vérification DNS à partir d'un terminal tel que

ping bing.com

Vous devriez le faire répondre à partir de 127.0.0.1. Si cela fonctionne, la modification du fichier hôte est bonne, mais elle est simplement mise en cache dans votre navigateur.

Meule
la source
Mais le cache survit-il vraiment au redémarrage du navigateur? J'ai aussi rencontré ça. Ce serait bien s'il y avait un moyen d'invalider le cache.
loevborg
1
Eh bien, je ne suis pas sûr à 100% si le cache DNS survit à un rechargement du navigateur. Je sais que le cache de fichiers le fait. Le fait est qu'avec les modèles de développement Web ajax / multi-requêtes d'aujourd'hui, vous ne voulez pas effectuer un hit DNS sur chaque requête lors du chargement d'une page. Chaque navigateur fera ses propres astuces pour accélérer cela et vous devrez donc vérifier leurs mécanismes de mise en cache DNS sur une base par version de navigateur / navigateur.
Rick
Je serais surpris si le cache DNS ne persiste pas lors des redémarrages du navigateur, au moins dans la plupart des navigateurs (probablement tous les principaux).
David Z
7

Avez-vous essayé de mettre les 127.0.0.1entrées sur la même ligne?

120.0.0.1 abc bing.com foo

Cela devrait fonctionner.

Craig Maloney
la source
3
Cela a fonctionné, bien que je pense que cela soit dû au fait que les navigateurs le mettent en cache et ne vident pas correctement le cache.
Ross
0

Ouvrez le terminal ( ALT+ F2).

Tapez sudo -idans le champ de saisie. Cochez l' option Exécuter dans le terminal . Enfin, cliquez sur le bouton Exécuter .

Saisissez votre mot de passe si nécessaire et appuyez sur Entrée. Saisissez ensuite les commandes suivantes.

gedit /etc/hosts

Vous obtiendrez la fenêtre Gedit Text Editor.

Par exemple, si nous devons bloquer Facebook, ajoutez les lignes suivantes juste après 127.0.0.1 localhost.

0.0.0.1 facebook.com    
0.0.0.1 www.facebook.com

Ce faisant, il bloquera le site dans tous les navigateurs, y compris Google Chrome, Chromium, Mozilla.

C'est ça. Lorsque vous ouvrez maintenant www.facebook.com ou facebook.com , vous ne pouvez pas y accéder. Pour réactiver Facebook, supprimez les lignes que nous avons ajoutées du fichier /etc/hosts.

Source - Blog de Subin

Subin
la source
-1

Outre la solution de CragM, n'oubliez pas que vous pouvez utiliser toutes les adresses 127.xxx à cette fin, ne répétez pas la même adresse.

127.0.0.1   localhost
127.0.0.2   ross-laptop
127.0.0.3   bing.com
127.0.0.4   foo.com
127.0.0.5   bar.com
......
grokus
la source
1
Pouvez-vous expliquer pourquoi la même adresse ne se répète pas?
8128
@fluteflute, je ne suis pas sûr mais je le faisais et cela a toujours fonctionné pour moi.
grokus
-1

La modification de / etc / hosts ressemble à un hack global. Je suggère plutôt de configurer un proxy http local (squid, privoxy, etc.) et de pointer votre navigateur pour l'utiliser. De cette façon, vous obtiendriez un moyen plus flexible de gérer les listes noires au niveau du proxy.

vh1
la source
2
Il semble que ce serait beaucoup d'efforts par rapport à l'ajout de quelques lignes à /etc/hosts? Pourriez-vous expliquer pourquoi c'est une meilleure solution?
8128
"Ça sonne" parce que vous faites des suppositions sans l'essayer. Émettre l'installation apt-get, éditer un fichier de configuration et / ou une liste noire et pointer le navigateur vers le proxy local n'est pas plus compliqué. C'est mieux parce que vous n'apportez aucune modification globale à votre système, vous configurez uniquement une autre manière de bloquer certains sites. Si vous devez annuler, vous n'aurez plus à modifier / etc / hosts, vous n'aurez qu'à configurer le navigateur pour accéder directement aux sites, pas via le proxy.
vh1