Hier der erste Punkt meiner Serie zu den in der Windows 7 Darker Edition enthaltenen Tweaks.
“Caching von negativen DNS-Anfragen deaktivieren” (Stopped caching negative responses)
Hierbei handelt es sich um eine Optimierung des DNS-Caching von Windows. Einen Einblick in den vorhanden Cache bekommt man, wenn man in der Eingabeaufforderung “ipconfig /displaydns” eingibt. Vorab, die Liste ist extrem lang. Es werden generell alle DNS-Anfragen (z.B. die Eingabe einer URL im Browser) von Windows gecached und bei wiederholter URL-Eingabe erst im Cache nachgesehen wird, ob die IP dazu vorhanden ist.
Das hat einmal den Vorteil, dass nicht immer der DNS-Server bemüht werden muss, sondern die Website schneller erreicht wird. Auch kann es vorkommen (eher sehr selten), dass der DNS-Server ausfällt. Aber zum Glück hat man ja den Eintrag im Cache.
Der Nachteil ist jedoch, dass man, wenn zuerst der Eintrag im Cache verfolgt wird, und dieser aber nicht mehr aktuell ist, auf eine Fehlerseite geleitet wird. Der Cache wird zwar immer mal wieder aktualisiert, aber eben erst nach einer gewissen Zeit. Ein weiterer Nachteil ist, dass auch fehlerhafte Anfragen im Cache landen. Wird eine URL also nicht erreicht, landet diese als “negative response” im Cache und wird standardmäßig die nächsten 300 Sekunden dort gehalten. Ist einem vielleicht schon aufgefallen sein, wenn man versucht, nach einem Neustart des Routers diesen per URL anstatt über die IP zu erreichen.
Der Cache lässt sich allerdings einfach manuell per “ipconfig /flushdns” leeren. Das generelle Caching kann man in der Registry aber auch direkt “optimieren”. Das man in der Registry aber auch einiges dafür tun kann, dass Windows gar nicht mehr funktioniert, muss ich sicherlich nicht weiter erläutern.
Auf einigen Websites findet man folgende Werte:
Man sucht in der Registry den Schlüssel “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Service\Dnscache\Parameters”
Hier legt man, falls noch nicht vorhanden, folgende DWORD-Einträge an und weist ihnen die beigefügten Werte zu:
- CashHashTableBucketSize -> 1
- CashHashTableSize -> 384 (dezimal) -> bestimmt die Zeilenanzahl der Hash-Tabelle für DNS-Einträge
- MaxCacheEntryTtlLimit -> 172800 (dezimal) -> Zeit in Sekunden bis ein Eintrag ungültig wird
- MaxSOACacheEntryTtlLimit -> 300 (dezimal)
- NegativeCacheTime -> 0
- NegativeSOACacheTime -> 0
- NetFailureErrorPopupLimit -> 0
- NetFailureCacheTime -> 0
Der Wert “NegativeCacheTime” hat den Standardwert 300, falls man das Negative-Caching wieder einschalten möchte.
Die restlichen 0-Werte geben an, dass die entsprechende Option deaktiviert ist.