discoveryutil을 사용하여 OS X Yosemite에서 DNS 캐시를 플러시하는 방법
차례:
- OS X Yosemite 10.10.4 및 OS X 10.10.5에서 DNS 캐시 지우기
- OS X Yosemite에서 DNS 캐시 지우기(10.10, 10.10.1, 10.10.2, 10.10.3)
일부 Mac 사용자는 이름 서버를 올바르게 확인하거나 개별 컴퓨터에서 일부 DNS 주소 변경 사항을 인식하기 위해 OS X에서 DNS 캐시를 플러시해야 하는 상황이 발생할 수 있습니다. 이것은 특히 시스템 관리자, 네트워크 관리자 및 웹 개발자와 관련이 있지만 사용자가 /etc/hosts 파일을 수정하고 변경 사항이 필요한 경우와 같이 다른 사용자도 DNS 캐시를 덤프하고 재설정해야 하는 상황이 분명히 있습니다. Mac을 재부팅하지 않고 적용할 수 있습니다.
오래된 Mac 사용자는 거의 모든 Mac OS X 버전에서 DNS 캐시 재설정이 변경되었음을 알 수 있으며 OS X Yosemite도 다르지 않습니다. mDNSResponder를 대체한 다음 mDNSResponder로 다시 전환하는 것이 발견되었기 때문일 수 있습니다. 다시 한번. 그럼에도 불구하고 요세미티에서 DNS 캐시를 플러시하는 것은 터미널 명령으로 남아 있지만 사용 중인 OS의 정확한 릴리스에 따라 약간 다르며 실제로 멀티캐스트 DNS나 유니캐스트 DNS 또는 둘 다를 지울 수 있습니다. Mac에서 모든 DNS 캐시를 재설정하려는 경우 좋은 측정을 위해 둘 다 지우고 싶을 것입니다.
OS X Yosemite 10.10.4 및 OS X 10.10.5에서 DNS 캐시 지우기
OS X 10.10.4에서 10.11을 포함하여 10.10.5로 이동하면서 Apple은 discoveryd를 버리고 mDNSResponder로 대체했습니다(또는 오히려 되돌렸습니다). 따라서 OS X Yosemite 10.10.4 및 10.11 El Capitan에서 DNS 캐시를 지우려면 명령 문자열은 다음과 같습니다.
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder;캐시 플러시됨 말하기
이 명령은 OS X 10.10.4+의 모든 DNS 캐시를 플러시합니다.
오래된 Mac 사용자는 명령 문자열이 기본적으로 Yosemite 이전 릴리스에서 작동했던 것을 기억할 것입니다. 즉, 10.10.4 이전의 OS X Yosemite 이전 버전은 아래에서 설명하는 다른 명령 문자열을 사용합니다.
OS X Yosemite에서 DNS 캐시 지우기(10.10, 10.10.1, 10.10.2, 10.10.3)
캐시를 재설정하려면 터미널을 사용해야 합니다. /Applications/Utilities/에서 터미널 앱을 찾거나 Spotlight로 시작할 수 있습니다. 최신 버전의 OS X에서 모든 DNS 캐시를 완전히 지우려면 두 가지 명령으로 MDNS(멀티캐스트 DNS)와 UDNS(유니캐스트 DNS)를 모두 대상으로 지정하십시오.
MDNS 캐시 지우기
sudo discoveryutil mdnsflushcache
요청 시 리턴 키를 누르고 관리자 암호를 입력하십시오.
UDNS 캐시 지우기
sudo discoveryutil udnsflushcaches
다시, Return 키를 누르고 요청 시 관리자 암호를 입력하십시오. caches는 미묘하지만 중요한 구문 차이인 후자 명령의 복수형입니다.
OS X Yosemite의 모든 DNS 캐시 플러시 및 재설정
원하는 경우 위의 두 명령을 함께 묶을 수도 있습니다. 캐시가 지워지면 다음과 같이 구두로도 알려줍니다.
sudo discoveryutil mdnsflushcache;sudo discoveryutil udnsflushcaches;말 플러시
실제로 MDNS와 UDNS 캐시는 다르지만 OS X Yosemite에서 실제로 작동하는 DNS 캐시를 지우려면 두 명령이 모두 필요하다는 것을 알았습니다. 자신의 필요에 따라 둘 중 하나만 지우면 될 수도 있습니다.
궁금한 분들을 위해 OS X Yosemite는 mDNSResponder를 없앴으므로 이전 버전의 Mac OS X처럼 DNS 캐시를 새로 고치기 위해 mDNSResponder 프로세스를 종료할 필요가 없습니다.
OS X Yosemite에서 DNS 캐시 세부 정보 확인
DNS를 변경 중이거나 변경하려는 경우 현재 캐시된 항목에 대한 세부 정보를 보려면 다음 명령을 사용할 수 있습니다.
UDNS 캐시 통계 가져오기:
sudo discoveryutil udnscachesstats
다음을 사용하여 멀티캐스트 DNS 캐시에 대한 세부 사항을 검색할 수도 있습니다.
sudo discoveryutil mdnscachesstats
이 두 가지 모두 캐시된 DNS 항목 수에 대한 세부 정보를 제공하며 다음과 같은 보고서를 제공합니다.
UDNS 캐시 통계: 1750개 중 962개 캐시됨
flushcache 변형을 실행하기 전과 후에 해당 명령을 실행하면 다음과 같이 0 항목 캐시로 재설정되어야 합니다.
MDNS 캐시 통계: lo0: 캐시된 0/2000
변경되었는지 어떻게 알 수 있습니까?
캐시를 비운 후 이름 서버나 IP가 실제로 변경되었는지 확인하려면 다음과 같은 URL과 함께 'dig' 명령을 사용할 수 있습니다.
dig osxdaily.com
dig는 nslookup과 비슷하지만 출력이 더 좋고 쿼리 시간, 도메인에 액세스하는 데 사용되는 DNS 서버 설정, 타임스탬프 등 몇 가지 세부 정보가 포함되어 있다는 점이 다릅니다. 이름 서버 문제를 해결할 때 유용합니다. 그런데 이에 대한 쿼리 시간이 느린 것으로 표시되면 namebench와 같은 도구를 사용하여 더 빠른 DNS 서버(종종 Google DNS 또는 OpenDNS)를 찾아야 합니다.
OS X 최신 버전에 대한 또 다른 DNS 캐시 트릭을 알고 계십니까? 댓글로 알려주세요.