내 노트북에서 Linux를 사용하고 있으며 해당 URL을 사용하여 특정 웹 사이트에 액세스할 수 없기 때문에 해당 sudo /etc/init.d/nscd restart
URL을 사용하여 DNS 캐시를 지우고 있지만 URL은 여전히 Firefox에서 "서버를 찾을 수 없음"을 발생시킵니다. Chrome도 사용해 보았지만 여전히 작동하지 않습니다. 다른 친구들은 페이지를 볼 수 있지만 나는 볼 수 없습니다. 그렇다면 이 상황의 주된 이유는 무엇입니까? 다른 웹사이트도 잘 찾아볼 수 있어요.
이상한 점은 특정 URL에 대한 IP 주소를 시도하면 다른 사람들이 보는 것과는 다른 페이지가 표시된다는 것입니다.
이 문제에 대한 도움을 주시면 감사하겠습니다.
답변1
bind
실수로 실행하지 않는 한, nscd
에 있는 구성 파일을 확인해야 합니다 /etc/nscd.conf
.
보유된 캐시가 나열됩니다.
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
이렇게 하면 캐시가 무효화됩니다.
nscd -g
그러나 이 작업을 수행한 후에도 nscd
재부팅 후 새로 고침 시 호스트 항목은 변경되지 않았습니다.
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
nscd
캐시를 비우는 유일한 방법인 바인드를 실행하지 않는 이상, 데이터베이스를 찾아서 삭제할 수 있는 방법이 없으므로 다른 문제가 발생할 수 있습니다. IP 확인을 위한 문제 해결 프로세스를 따르겠습니다. 귀하의 질문에 대한 의견에 이 중 일부를 설명했습니다.
다음은 아주 좋은 Linux Journal 기사에 대한 링크입니다.네트워크 문제 해결.
답변2
나는 이것이 오래된 질문이라는 것을 알고 있지만 누군가가 이 문제에 다시 직면할 경우를 대비하여 이것을 추가합니다.
nscd
오늘 아침 비슷한 DNS 클라이언트 캐시 문제가 발생했을 때 첫 번째 답변에서 언급한 대로 저장된 캐시를 지우고 재부팅하는 일반적인 단계를 모두 수행했습니다 nscd
. OS 캐시까지 삭제했는데 특정 호스트 이름이 여전히 이전 IP 주소로 확인됩니다. resolv.conf에서 해당 줄을 제거한 후에야 nameserver 127.0.0.1
해결이 시작되었습니다.