web-dev-qa-db-fra.com

Firefox invalide le cache DNS

J'ai été trop rapide pour visiter un site que j'ai créé sur un serveur client, et Firefox se souvient maintenant que le site par défaut pour (exemple)

testsite.mycompanyname.com (non existing subdomain, same as *.mycompanyname.com)

est

www.mycompanyname.dk - or rather the IP of the default server

J'ai ensuite configuré le DNS public (un enregistrement) pour rediriger vers un autre serveur, mais Firefox se souvient de l'adresse IP par défaut.

Chrome/IE/Safari - pas de problème, car ils n'ont pas visité ce site avant le démarrage de DNS ...

Je les ai définis dans about: config:

network.dns.disablePrefetch = true
network.dnsCacheExpiration = 0

Rien d'autre?

J'ai vraiment besoin de Firebug pour déboguer le frontend sur ce site ....

À votre santé

40
Steen

La mise en cache DNS se produit à plusieurs niveaux: l'application demande au système local, qui demande un serveur DNS de résolution configuré localement, qui demande des serveurs DNS faisant autorité.

La mise en cache par application varie.

  • J'ai trouvé pour Firefox que quitter et redémarrer fonctionne. Les paramètres appropriés dans about:config sont network.dnsCacheEntries et network.dnsCacheExpiration, qui peut être défini sur 0 afin de désactiver la mise en cache.

La mise en cache par le système local dure généralement 1 heure.

  • Diagnostic: le ping, comme d'autres applications, utilise le cache DNS du système local
  • Vider MacOsX 10.8: Sudo killall -HUP mDNSResponder(référence)
    (Peut varier pour d'autres versions)
  • Vider les fenêtres: ipconfig /flushdns (uniquement si le service de mise en cache DNS, HKLM\SYSTEM\CurrentControlSet\Services\Dnscache, est autorisé; vérifier avec net start|findstr /i dns ou compmgmt.msc)
  • Linux/Unix peut utiliser nscd (démon de mise en cache des services de noms), ou dnsmasq, ou les deux ...

La mise en cache par le serveur DNS de résolution locale peut durer plusieurs jours, en fonction de TTL associé à l'enregistrement DNS.

  • Diagnostic: nslookup rapporte d'abord l'adresse du serveur de résolution, puis l'adresse demandée.
  • Flush BIND: rndc flush ourndc flushname DOMAIN.NAME

[~ # ~] ttl [~ # ~] signifie "time to live" un terme utilisé pour décrire combien de temps un enregistrement DNS doit être considéré valide par le client ou le serveur demandeur. Un court TTL signifie que le demandeur est invité à ne pas mettre en cache une recherche DNS trop longtemps. Le TTL peut aller de quelques secondes (par exemple pour DynDNS et similaire) ) en jours ou semaines.

58
DL-van

J'utilise la solution "Effacer l'historique récent\cache" depuis un moment maintenant, mais j'ai remarqué qu'elle ne fonctionnait plus après l'une des mises à jour de Firefox (probablement 20.0.1). Pour cette raison, je suis passé à https://addons.mozilla.org/en-US/firefox/addon/dns-cache/ module complémentaire pour effectuer la suppression DNS. J'espère que cela aidera quelqu'un avec le même problème.

Edit: changé l'url comme suggéré par Haozhun.

Edit2: Malheureusement à partir de FireFox 32, ce plugin n'est plus compatible et ne peut pas être utilisé. Peut-être https://addons.mozilla.org/en-US/firefox/addon/dns-flusher/ pourrait être en mesure de le remplacer.

24
jahu

Installez l'addon DNS Flusher, qui fonctionne pour moi.

6
user3477065

Les méthodes suivantes, qui ont fonctionné à un moment donné, ne fonctionnent pas actuellement (l'exécution de all d'entre elles ne fonctionne pas):

  • Redémarrer le navigateur
  • Vider le cache du navigateur
  • Réglage network.dnsCacheExpiration=0
  • ipconfig /flushdns

Cependant, vous pouvez ouvrir une nouvelle fenêtre privée, les fenêtres privées n'utilisent évidemment pas le même cache DNS que les fenêtres normales (ce qui est réconfortant).

4
Vladimir Kornea

Je l'ai trouvé network.dnsCacheExpiration = 0 seul n'a pas tout à fait fait l'affaire, mais si vous définissez également network.dnsCacheEntries = 0 puis le cache DNS est définitivement désactivé. Alors:

network.dnsCacheEntries = 0
network.dnsCacheExpiration = 0
2
Roman Starkov