Ich arbeite auf meinem Laptop mit Linux und konnte über die URL nicht auf eine bestimmte Website zugreifen. Ich habe versucht, sudo /etc/init.d/nscd restart
den DNS-Cache zu leeren, aber die URL zeigt in Firefox immer noch „Server nicht gefunden“ an. Ich habe es auch mit Chrome versucht, aber es funktioniert immer noch nicht. Andere Freunde können die Webseite sehen, ich jedoch nicht. Was könnte also die Hauptursache dafür sein? Ich kann problemlos auf anderen Websites surfen.
Seltsamerweise wird mir, wenn ich auch nur die IP-Adresse dieser bestimmten URL eingebe, eine andere Seite angezeigt als die, die andere Leute sehen.
Ich bin für jede Hilfe in dieser Angelegenheit dankbar.
Antwort1
bind
Sofern Sie es nicht versehentlich ausführen, sollten Sie Ihre nscd
Konfigurationsdatei unter überprüfen /etc/nscd.conf
.
Es werden die gespeicherten Caches aufgelistet.
enable-cache hosts yes
positive-time-to-live hosts 3600
.......
# nscd -?
-g, --statistics Print current configuration statistics
-i, --invalidate=TABLE Invalidate the specified cache
nscd -g
hosts cache:
yes cache is enabled
no cache is persistent
yes cache is shared
211 suggested size
216064 total data pool size
384 used data pool size
600 seconds time to live for positive entries
0 seconds time to live for negative entries
0 cache hits on positive entries
0 cache hits on negative entries
128 cache misses on positive entries
0 cache misses on negative entries
0% cache hit rate
3 current number of cached values
7 maximum number of cached values
2 maximum chain length searched
0 number of delays on rdlock
0 number of delays on wrlock
0 memory allocations failed
yes check /etc/{hosts,resolv.conf} for changes
# nscd -i hosts
Dadurch wird der Cache ungültig.
Aber danach gab es keine Änderung an den Host-Einträgen. nscd -g
Nach dem Neustart nscd
wurden sie gelöscht.
service nscd restart
hosts cache:
yes cache is enabled
no cache is persistent
yes cache is shared
211 suggested size
216064 total data pool size
0 used data pool size
600 seconds time to live for positive entries
0 seconds time to live for negative entries
0 cache hits on positive entries
0 cache hits on negative entries
0 cache misses on positive entries
0 cache misses on negative entries
0% cache hit rate
0 current number of cached values
0 maximum number of cached values
0 maximum chain length searched
0 number of delays on rdlock
0 number of delays on wrlock
0 memory allocations failed
yes check /etc/{hosts,resolv.conf} for changes
Sofern Sie nicht „Bind“ ausführen, ist dies die einzige Möglichkeit, den Cache zu leeren, ohne die Datenbank zu finden nscd
und zu löschen, was zu anderen Problemen führen könnte. Ich würde die Fehlerbehebungsverfahren für die IP-Auflösung befolgen. Ich habe einige davon in den Kommentaren zu Ihrer Frage skizziert.
Dies ist ein Link zu einem ziemlich guten Artikel im Linux Journal überBeheben von Netzwerkproblemen.
Antwort2
Ich weiß, dass es eine alte Frage ist, aber ich füge sie hinzu, für den Fall, dass jemand erneut mit diesem Problem konfrontiert wird.
Als ich heute Morgen ein ähnliches Problem mit dem DNS-Client-Cache hatte, habe ich alle üblichen Schritte ausgeführt, um den von gespeicherten Cache zu löschen, nscd
und, wie in der ersten Antwort erwähnt, neu gestartet . Ich habe sogar den OS-Cache gelöscht, aber ein bestimmter Hostname wurde immer noch in die alte IP-Adresse aufgelöst. Die Auflösung begann erst, nachdem ich die Zeile aus resolv.conf nscd
entfernt hatte .nameserver 127.0.0.1