25 votes

Comment puis-je faire en sorte que OSX Mavericks remarque un changement de DNS dans `/etc/hosts` ?

Un moyen courant de "bloquer" un site web (par exemple, pour l'éliminer en tant que distraction) consiste à modifier les paramètres suivants /etc/hosts et faire pointer le domaine vers l'adresse de bouclage. Par exemple :

# Stop goofing off
127.0.0.1 youtube.com

Sur Mavericks, je constate que les modifications de ce type sont apparemment ignorées par le système d'exploitation ; après avoir modifié le fichier (avec sudo) et l'avoir enregistré, le site qui devrait être bloqué se charge toujours.

J'ai essayé de réinitialiser mon cache DNS comme suit :

dscacheutil -flushcache
sudo killall -HUP mDNSResponder

Mais le site se charge toujours.

Comment puis-je faire en sorte qu'OSX Mavericks remarque une modification de /etc/hosts ?

1 votes

Se pourrait-il que ce soit le cache DNS du navigateur qui ne soit pas vidé ? Quelle est l'adresse IP ping youtube.com utiliser ?

0 votes

Remarque : si vous utilisez le DNS pour bloquer temporairement des sites, selfcontrolapp.com pour OSX fonctionne très bien. Il modifie le fichier hosts et semble vider automatiquement le cache du navigateur. Ils mentionnent également des applications similaires pour d'autres plateformes : github.com/SelfControlApp/selfcontrol/wiki/FAQ

20voto

Graham Miln Points 39606

Selon le page de manuel hosts(5) le /etc/hosts est utilisé par mDNSResponder . Vous tentez correctement de vider le cache général de l'ordinateur, mais vous devez également vider le cache privé du navigateur.

Après chaque édition de /etc/hosts réinitialiser le mDNSResponder cache en utilisant cette note technique d'Apple, OS X : Comment réinitialiser le cache DNS :

sudo dscacheutil -flushcache

Après avoir fait ça, réinitialiser les caches de votre navigateur :

  • Safari : utilisez l'élément de menu Safari > Réinitialiser Safari .
  • Chrome : utilisez l'élément de menu Chrome > Effacer les données de navigation .

1 votes

Ceci a réglé le problème. Sous la rubrique "Effacer les données de navigation" de Chrome, il y a des cases à cocher pour les types de données. "Vider le cache" est la case correspondante.

5voto

napcae Points 2031

Supprimez le cache de votre navigateur et ajoutez 127.0.0.1 www.youtube.com dans votre fichier d'hôte.

youtube.com se résout à www.youtube.com . Votre navigateur met en mémoire cette information et vous redirige vers la page www.

0voto

Scott Dudley Points 1314

Dans OS X 10.9 Mavericks, il y a problèmes en essayant de lister plusieurs noms d'hôtes sur la même ligne de /etc/hosts. J'ai essayé tous les autres conseils relatifs au DNS dans ce billet et le guide de l'utilisateur. poste connexe en vain, jusqu'à ce que je tombe sur le lien "problèmes" ci-dessus.

J'avais quelque chose comme ça :

127.0.0.1 localhost host1 host2 host3 ...

mais j'ai constaté que la résolution de ces hôtes prenait une éternité ou ne fonctionnait pas du tout. En essayant d'accéder aux sites via les navigateurs, tout se passait généralement bien (bien que la résolution soit parfois très lente), mais en essayant de faire un ping à partir de la ligne de commande, cela ne fonctionnait pas.

En le remplaçant par le format suivant, tout a bien fonctionné pour moi, et tout fonctionne maintenant parfaitement avec ping, dans le navigateur et partout ailleurs :

127.0.0.1 localhost
127.0.0.1 host1
127.0.0.1 host2
127.0.0.1 host3

Plus de détails .

0voto

Eli Points 1997

En plus de la réponse de Graham, essayez chrome://net-internals/#dns (pour Google Chrome) pour voir ce qui est mis en cache. Cliquez ensuite sur Clear Host Cache pour tout effacer.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X