DNS 캐시 삭제 및 DNS 초기화 방법 (Windows, Mac, Chrome, Linux)

핵심 요약

DNS 캐시를 삭제(플러시)하면 기기에 저장된 도메인 조회 결과가 지워져, 다음 접속 때 DNS에 다시 물어봅니다. Windows에서는 명령 프롬프트에서 ipconfig /flushdns를 실행하세요. macOS에서는 Terminal에서 sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder를 실행하세요. systemd-resolved를 쓰는 Linux(Ubuntu, Fedora)에서는 sudo resolvectl flush-caches를 실행하세요. Chrome에서는 chrome://net-internals/#dns를 열고 Clear host cache를 클릭하세요. 안전하며 내 기기에만 영향을 줍니다.

지금 확인하기

DNS 캐시 삭제 및 DNS 초기화 명령어 가이드 — Windows, Mac, Linux, Chrome 브라우저별 방법
DNS 캐시 삭제 및 DNS 초기화 명령어 가이드 — Windows, Mac, Linux, Chrome 브라우저별 방법
읽기 시작
  1. DNS 캐시 삭제 명령어 한눈에 보기
  2. DNS 캐시 동작 원리: TTL, 캐시 레벨, 만료
  3. 언제 DNS 캐시를 삭제해야 할까요?
  4. Windows 10 및 Windows 11에서 DNS 캐시 삭제하는 방법
  5. macOS에서 DNS 캐시 삭제하는 방법(El Capitan 이후 모든 버전)
  6. Linux(Ubuntu, Fedora, Debian)에서 DNS 캐시 삭제하는 방법
  7. Google Chrome에서 DNS 캐시 삭제하는 방법
  8. Firefox, Edge, Safari 등에서 DNS 캐시 삭제하는 방법
  9. Android와 iPhone에서 DNS 캐시 삭제하는 방법
  10. 라우터에서 DNS 캐시 삭제하는 방법
  11. DNS 캐시 삭제 여부 확인하는 방법
  12. DNS 캐시 삭제 후에도 문제가 해결되지 않을 때
  13. 자주 묻는 질문

DNS 캐시 삭제 명령어 한눈에 보기

DNS 캐시를 삭제하려면 사용 중인 시스템에 맞는 명령어 하나만 실행하면 됩니다. 삭제(플러시)하면 기기에 저장된 최근 조회 결과가 지워지고, 다음 접속 때 DNS에 다시 물어 최신 주소를 받습니다.

도메인의 현재 레코드와 TTL 확인

시스템별 명령어는 다음과 같습니다.

대상명령어 또는 설정
Windows 10·11ipconfig /flushdns(명령 프롬프트) 또는 Clear-DnsClientCache(PowerShell)
macOSsudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
systemd-resolved를 쓰는 Linux(Ubuntu, Fedora 33 이상)sudo resolvectl flush-caches
Chrome, Edge, Bravechrome://net-internals/#dns(또는 edge://, brave://) → Clear host cache
Firefoxabout:networking#dns → DNS 캐시 지우기(영어 화면에서는 Clear DNS Cache)
Android·iPhone비행기 모드(iPhone은 에어플레인 모드)를 10초간 켰다가 끄기(또는 재시작)
공유기재시작

왜 필요할까요? DNS 레코드는 바뀝니다. 사이트가 새 서버나 호스팅으로 옮겨도 저장된 값은 예전 주소를 가리킬 수 있습니다. 로컬 캐시의 응답은 거의 즉시 돌아오지만, 리졸버까지 나가는 조회는 저희 가정용 회선에서 Google의 8.8.8.8까지 약 30ms가 걸렸습니다(2026년 10월 26일). 그러니 값이 오래되기 전까지는 캐시가 유용합니다.

DNS는 브라우저, 운영 체제, 그리고 대개 공유기까지 여러 곳에 캐시되므로, 끈질기게 남는 옛 값은 한 곳 이상에서 삭제해야 할 수 있습니다.

DNS 캐시 동작 원리: TTL, 캐시 레벨, 만료

모든 DNS 레코드에는 도메인 소유자가 정한 TTL(Time To Live)이 있습니다. 캐시가 레코드를 보관해도 되는 시간(초)입니다. 보통 300초(5분)에서 86,400초(24시간) 사이이며, 예를 들어 Cloudflare는 기본 300초를 씁니다.

각 계층은 자기만의 사본을 보관합니다.

  • 브라우저 — Chrome은 보통 자체 내장 DNS 클라이언트를 씁니다(Windows, macOS, Linux, ChromeOS, Android에서 기본으로 켜져 있음). 각 응답을 레코드의 TTL 동안, 최소 60초 보관하고, "존재하지 않음" 응답은 영역의 네거티브 TTL 동안 보관합니다. 운영 체제의 리졸버로 넘어간 경우에는 응답을 60초 보관하고 실패는 보관하지 않습니다(Chromium 소스). Firefox는 최대 3,200개 이름을 보관하며 OS가 TTL을 주지 않으면 60초를 씁니다(Firefox 설정값).
  • 운영 체제 — Windows의 DNS 클라이언트 서비스, macOS의 mDNSResponder, Linux의 systemd-resolved는 TTL이 끝날 때까지 응답을 보관합니다. 일부 Linux(Debian 기본 설치, 최소 설치)는 캐시를 아예 두지 않습니다.
  • 공유기 — 많은 가정용 공유기는 dnsmasq를 쓰며, 기본값으로 150개 이름을 캐시합니다(dnsmasq 매뉴얼). OpenWrt는 이를 1,000개로 늘립니다.
  • DNS 제공업체 — ISP나 공개 리졸버의 캐시는 그것을 쓰는 모든 사람에게 응답합니다. ISP의 캐시는 삭제할 수 없지만, Google Public DNS와 Cloudflare는 누구나 특정 이름을 캐시에서 지울 수 있게 해 줍니다(Google, Cloudflare). 그 밖에는 TTL이 끝나기를 기다리거나 리졸버를 바꾸세요.

삭제(플러시)는 브라우저와 운영 체제 계층을 비우고, 공유기는 재시작해야 그 계층이 비워집니다. 오래된 제공업체 캐시를 피하려면 Cloudflare의 1.1.1.1이나 Google의 8.8.8.8 같은 공개 리졸버로 바꾸세요. 모든 레코드의 현재 TTL은 DNS 조회로 볼 수 있습니다.

언제 DNS 캐시를 삭제해야 할까요?

시스템은 캐시된 값을 알아서 만료시키므로 주기적으로 삭제할 필요는 없습니다. 다음과 같은 경우에 삭제하세요.

  • 나에게만 사이트가 열리지 않고 다른 사람은 열릴 때 — DNS_PROBE_FINISHED_NXDOMAIN이나 DNS 서버가 응답하지 않음 같은 오류
  • 사이트가 새 서버나 호스팅으로 옮겼는데 여전히 예전 버전이 보일 때
  • DNS 서버를 바꿨을 때 — 예: Google DNS(8.8.8.8)나 Cloudflare(1.1.1.1)로 바꾸고 변경을 바로 적용하고 싶을 때
  • 사이트 이전 후 인증서 경고가 뜰 때 — 저장된 주소가 아직 예전 서버와 예전 인증서를 가리키고 있습니다
  • DNS 레코드(A, CNAME, MX)를 수정했고 예전 TTL이 끝나기 전에 변경 결과를 보고 싶을 때. DNS 전파 확인 도구로 전 세계 리졸버가 반영했는지 볼 수 있습니다
  • 오염되었거나 가로채인 응답이 의심될 때 — 삭제하면 내 캐시에서 사라집니다

Windows 10 및 Windows 11에서 DNS 캐시 삭제하는 방법

Windows에서 DNS 캐시를 삭제하는 방법은 명령 프롬프트와 PowerShell 두 가지입니다. 둘 다 Windows DNS 클라이언트 서비스의 캐시를 비웁니다. ipconfig /flushdns는 Windows Server와 이전 버전을 포함해 모든 버전에서 동작합니다.

방법 1: 명령 프롬프트(Command Prompt) 사용

  • 1단계 — Windows + S를 눌러 cmd를 입력하고 명령 프롬프트를 엽니다(현재 Windows 10·11에서는 일반 창으로 충분합니다. 권한 상승이 필요하다는 메시지가 나오면 마우스 오른쪽 버튼으로 클릭해 관리자 권한으로 실행을 선택하세요)
  • 2단계 — ipconfig /flushdns를 입력하고 Enter를 누릅니다
  • 3단계 — "DNS 확인자 캐시를 플러시했습니다." 메시지가 표시되면 성공입니다

이것으로 끝입니다. Windows DNS 캐시가 비워졌으며, 다음번에 웹사이트를 방문할 때 Windows는 구성된 DNS 서버에 최신 IP 주소를 질의합니다. ipconfig 명령어는 표준 Windows 네트워크 유틸리티이며, /flushdns는 그 중 하나의 스위치입니다.

방법 2: PowerShell 사용

PowerShell에는 같은 기능에 추가 옵션을 제공하는 자체 DNS cmdlet이 있습니다.

powershell
# Flush the DNS cache
Clear-DnsClientCache

# Verify the cache is empty (should return very few entries)
Get-DnsClientCache

# Count cached entries
Get-DnsClientCache | Measure-Object | Select-Object Count

Clear-DnsClientCache는 ipconfig /flushdns와 정확히 같은 일을 합니다. PowerShell의 장점은 Get-DnsClientCache cmdlet으로, 캐시 항목을 표 형태로 보여 주어 ipconfig /displaydns보다 필터링과 내보내기가 쉽습니다.

macOS에서 DNS 캐시 삭제하는 방법(El Capitan 이후 모든 버전)

Mac에서는 Terminal에서 DNS 캐시를 삭제합니다. El Capitan(10.11)부터 macOS 26 Tahoe를 포함한 최신 버전까지 같은 명령어가 동작합니다.

macOS 버전DNS 캐시 삭제 명령어
Big Sur(11) 이후, Tahoe(26) 포함sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
Catalina(10.15)부터 El Capitan(10.11)까지sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
Yosemite(10.10.4~10.10.5)sudo killall -HUP mDNSResponder
Yosemite(10.10~10.10.3)sudo discoveryutil mdnsflushcache
Lion(10.7)~Mavericks(10.9)sudo killall -HUP mDNSResponder
  • 1단계 — Command + Space를 눌러 Spotlight를 열고 Terminal을 입력한 뒤 Enter를 누릅니다
  • 2단계 — sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder를 붙여넣고 Enter를 누릅니다
  • 3단계 — 메시지가 나타나면 Mac 비밀번호를 입력합니다. Terminal에 아무 출력도 표시되지 않지만 캐시는 삭제된 것입니다

dscacheutil -flushcache는 Directory Service 캐시를 비우고, killall -HUP mDNSResponder는 macOS의 DNS 리졸버인 mDNSResponder에게 캐시된 응답을 버리라고 알립니다. 프로세스를 재시작하지는 않습니다. Safari에는 자체 DNS 캐시가 없어서 이것으로 Safari도 해결됩니다. 다만 예전 주소로 열려 있는 연결이 끊기도록 Safari도 종료(⌘Q)하세요.

Linux(Ubuntu, Fedora, Debian)에서 DNS 캐시 삭제하는 방법

Linux는 캐시 서비스가 실행 중일 때만 DNS를 캐시합니다. Ubuntu와 Fedora(33 이후)는 systemd-resolved를 쓰고, Debian과 최소 설치에는 캐시가 아예 없는 경우가 많으며, 일부 시스템은 dnsmasq나 nscd를 씁니다.

  • 1단계 — 터미널을 엽니다(Ubuntu에서는 Ctrl + Alt + T)
  • 2단계 — 사용 중인 DNS 서비스에 맞는 명령어를 실행합니다(아래)
  • 3단계 — 잘 됐는지 확인합니다. resolvectl statistics에서 현재 캐시 크기가 0으로 나와야 합니다
bash
# Ubuntu, Fedora 33+ and other systemd-resolved systems
sudo resolvectl flush-caches

# Check: "Current Cache Size" should be 0
resolvectl statistics

# Older systemd (before version 239, e.g. Ubuntu 18.04)
sudo systemd-resolve --flush-caches

# dnsmasq
sudo systemctl restart dnsmasq

# nscd
sudo systemctl restart nscd

어떤 서비스를 쓰는지 모르겠다면 resolvectl status를 실행하세요. DNS 서버가 나열되면 systemd-resolved를 쓰는 것입니다. 명령이 없거나 resolve 서비스에 연결할 수 없다고 나오면 systemctl status dnsmasq 또는 systemctl status nscd를 확인하세요.

Google Chrome에서 DNS 캐시 삭제하는 방법

Chrome은 운영 체제와 별개로 자체 DNS 캐시를 가지고 있으므로(위의 캐시 계층 참고) 둘 다 삭제하세요. 방법은 다음과 같습니다.

  • 1단계 — Chrome에서 새 탭을 엽니다
  • 2단계 — 주소창에 chrome://net-internals/#dns를 입력하고 Enter를 누릅니다
  • 3단계 — Clear host cache 버튼을 클릭합니다
  • 4단계 — chrome://net-internals/#sockets에도 들어가 Flush socket pools를 클릭해, 예전 IP 주소를 쓰고 있을 수 있는 오래된 TCP 연결을 닫습니다

완전히 새로 시작하려면 운영 체제와 Chrome을 모두 삭제하세요. Chrome은 탐색하면서 캐시를 다시 쌓으므로 삭제해도 속도에는 오래가는 영향이 없습니다.

Firefox, Edge, Safari 등에서 DNS 캐시 삭제하는 방법

모든 Chromium 브라우저에는 접두사만 다른 같은 페이지가 있고, Firefox에는 자체 페이지가 있으며, Safari는 Mac의 캐시를 씁니다.

브라우저DNS 캐시 삭제 방법
Microsoft Edgeedge://net-internals/#dns → Clear host cache, 이어서 edge://net-internals/#sockets → Flush socket pools
Firefoxabout:networking#dns → DNS 캐시 지우기(영어 화면에서는 Clear DNS Cache). Firefox는 최대 3,200개 이름을 보관하며, OS가 TTL을 주지 않으면 60초를 씁니다
Safari(Mac)자체 DNS 캐시가 없으므로 macOS를 삭제하세요(위). 개발자용 메뉴 → 캐시 비우기는 웹 페이지 캐시를 비울 뿐 DNS는 아닙니다
Brave, Opera, Vivaldibrave://net-internals/#dns, opera://net-internals/#dns 또는 vivaldi://net-internals/#dns → Clear host cache

Android와 iPhone에서 DNS 캐시 삭제하는 방법

휴대폰에는 삭제 명령어가 없습니다. 다시 연결하면 같은 효과가 있습니다.

  • 비행기 모드를 켜고(iPhone에서는 에어플레인 모드) 10초 기다린 뒤 끕니다. 휴대폰이 네트워크 연결과 그 DNS 캐시를 다시 만듭니다.
  • 그래도 예전 값이 나오나요? 휴대폰을 재시작하세요. Android에서는 설정 → 네트워크 및 인터넷 → 비공개 DNS도 확인하세요(Samsung에서는 연결 → 기타 연결 설정 → 프라이빗 DNS). 여기에 제공업체 호스트 이름이 설정되어 있으면 Wi-Fi가 쓰는 DNS와 상관없이 모든 조회에 그 제공업체가 응답합니다.
  • Wi-Fi에서는 공유기의 캐시도 적용되므로, 한 사이트가 모든 기기에서 계속 실패하면 공유기도 재시작하세요.

라우터에서 DNS 캐시 삭제하는 방법

가정용 공유기도 네트워크에 연결된 모든 기기의 DNS 응답을 캐시합니다. 컴퓨터와 브라우저의 DNS 캐시를 비웠는데도 오래된 레코드가 계속 보인다면 공유기 캐시가 원인일 수 있습니다.

대부분의 가정용 공유기에는 DNS 캐시를 비우는 전용 명령이 없습니다. 공유기의 DNS 캐시를 비우는 가장 간단한 방법은 공유기를 다시 시작하는 것입니다:

  • 1단계 — 공유기 전원 케이블을 뽑습니다(리셋 버튼을 누르지 마세요. 공유기가 공장 초기화됩니다)
  • 2단계 — 완전히 꺼지도록 약 30초 기다립니다
  • 3단계 — 전원 케이블을 다시 꽂고 공유기가 완전히 부팅될 때까지 1~2분 기다립니다
  • 4단계 — 필요하면 Wi-Fi에 다시 연결하고 문제가 해결됐는지 확인합니다

OpenWrt처럼 dnsmasq를 쓰는 공유기는 전체 재부팅 없이 SSH로 /etc/init.d/dnsmasq restart를 실행해 캐시를 지울 수 있습니다.

DNS 문제가 계속되면 공유기를 Cloudflare(1.1.1.1)나 Google(8.8.8.8) 같은 공개 리졸버로 설정해 모든 기기가 쓰게 하세요. 방법은 느린 DNS 조회 해결 가이드에 있습니다.

DNS 캐시 삭제 여부 확인하는 방법

삭제한 뒤에는 캐시가 비었는지, 또는 시스템이 이제 새 주소를 조회하는지 확인하세요.

bash
# Windows: lists what's cached (only a few entries right after a flush)
ipconfig /displaydns

# Windows PowerShell: count cached entries
(Get-DnsClientCache).Count

# macOS: the address your Mac resolves now
dscacheutil -q host -a name example.com

# Linux (systemd-resolved): "Current Cache Size" should be 0
resolvectl statistics

그런 다음 문제가 있던 사이트를 열어 보세요. 내 컴퓨터가 받는 값과 DNS가 실제로 알려 주는 값을 비교하려면 DNS 조회로 도메인을 조회하세요.

문제가 내 캐시인지 레코드 자체인지 보려면 DNS 전파 확인 도구로 도메인을 확인하세요. 28개국 34개 리졸버에 동시에 물어봅니다. 모두 새 주소를 알고 있는데 나만 모른다면, 내 캐시나 리졸버가 뒤처진 것입니다.

DNS 캐시 삭제 후에도 문제가 해결되지 않을 때

삭제는 오래된 값을 해결하지만, 모든 DNS 문제가 오래된 값 때문은 아닙니다. 기기, 브라우저, 공유기를 삭제한 뒤에도 문제가 남는다면 다음을 확인하세요.

  • DNS 서버 바꾸기 — ISP의 리졸버가 다운되었거나 오래된 레코드를 돌려주고 있을 수 있습니다. Cloudflare(1.1.1.1)나 Google(8.8.8.8)을 써 보세요. 방법은 느린 DNS 조회 가이드에 있습니다
  • 사이트가 다운됐는지 확인 — 사이트 다운 확인가 11곳에서 접속해 봅니다. 모든 곳에서 실패하면 내 캐시나 리졸버 문제가 아닙니다
  • 레코드 확인 — DNS 조회로 도메인의 A, AAAA, CNAME 레코드를 확인하세요. 엉뚱한 IP를 가리키고 있다면 도메인 소유자만 고칠 수 있습니다
  • VPN이나 프록시 끄기 — VPN은 DNS를 자체 서버로 보내며, 그 서버도 자체 캐시를 가집니다
  • hosts 파일 확인 — Windows는 C:\Windows\System32\drivers\etc\hosts, macOS와 Linux는 /etc/hosts입니다. 해당 도메인의 항목을 지우세요
  • 최근 변경에는 시간을 주세요 — 각 리졸버는 예전 사본의 TTL이 끝나면 바뀐 레코드를 가져옵니다. TTL이 짧으면 몇 분, 길면 하루나 이틀까지 걸립니다

지금 DNS 레코드를 확인하세요

도메인의 네임서버가 직접 알려 주는 모든 레코드를 Google·Cloudflare가 캐시한 값과 나란히 비교하고, 각 레코드의 남은 TTL까지 확인하세요.

출처

  1. ipconfig, Microsoft
  2. host_resolver_manager_job.cc (Chrome's DNS cache times), Chromium
  3. dnsmasq manual (default cache size), dnsmasq

자주 묻는 질문

DNS 캐시를 삭제하면 어떻게 되나요?

기기에 저장된 도메인-IP 주소 결과가 삭제됩니다. 그래서 다음에 사이트에 접속할 때 시스템이 DNS 서버에 다시 물어보고, 오래되었을 수 있는 값 대신 최신 주소를 받습니다.

DNS 캐시 삭제는 안전한가요?

네. 파일을 삭제하거나 설정을 바꾸거나 연결을 끊지 않습니다. 부작용이라면 이후 각 사이트에 처음 접속할 때 새 조회를 한 번 기다리는 정도이며, 보통 1초도 걸리지 않습니다(저희 테스트에서 8.8.8.8까지 약 30ms).

Windows에서 DNS 캐시를 삭제하는 명령어는 무엇인가요?

명령 프롬프트(Command Prompt)를 열고 ipconfig /flushdns를 실행하세요(현재 Windows 10·11에서는 일반 창으로 충분합니다. 권한 상승이 필요하다는 메시지가 나오면 관리자 권한으로 실행을 사용하세요). "DNS 확인자 캐시를 플러시했습니다."라고 표시됩니다. PowerShell에서는 Clear-DnsClientCache가 같은 기능을 합니다.

Mac에서 DNS 캐시를 삭제하는 명령어는 무엇인가요?

Terminal을 열고 sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder를 실행한 뒤 비밀번호를 입력하세요. El Capitan부터 최신 macOS까지 모두 동작하며, 자체 DNS 캐시가 없는 Safari도 함께 해결됩니다.

Fedora에서 DNS 캐시는 어떻게 삭제하나요?

Fedora 33 이후는 systemd-resolved를 쓰므로 sudo resolvectl flush-caches를 실행한 다음, resolvectl statistics로 현재 캐시 크기가 0인지 확인하세요. 브라우저에 여전히 예전 주소가 보이면 브라우저 캐시도 삭제하세요(Chrome은 chrome://net-internals/#dns, Firefox는 about:networking#dns).

DNS 캐시는 얼마나 자주 삭제해야 하나요?

정해진 주기로 삭제할 필요는 없습니다. 캐시된 값은 TTL이 지나면(보통 5분~24시간) 저절로 만료됩니다. 사이트가 열리지 않거나 예전 버전이 보이는 등 문제가 있을 때만 삭제하세요.

왜 시스템과 브라우저의 DNS 캐시를 모두 삭제해야 하나요?

둘은 캐시를 따로 가지고 있어서 한쪽을 지워도 다른 쪽은 그대로이기 때문입니다. 먼저 시스템(Windows는 ipconfig /flushdns)을, 그다음 브라우저(Chrome은 chrome://net-internals/#dns)를 삭제하고, 모든 기기에 문제가 있다면 공유기도 재시작하세요.

DNS 캐시를 삭제하면 인터넷 속도가 빨라지나요?

아니요. 삭제 직후에는 각 사이트가 새 조회를 한 번 해야 해서 오히려 아주 조금 느립니다. 오래된 값 때문에 엉뚱한 서버로 가고 있었을 때만 도움이 됩니다. 조회 속도를 높이려면 더 빠른 DNS 서버로 바꾸세요.

컴퓨터를 재시작하면 DNS 캐시가 삭제되나요?

네. Windows, macOS, systemd-resolved는 DNS 캐시를 메모리에 두기 때문에 재시작하면 지워집니다. Windows에서는 시스템 종료 대신 다시 시작을 선택하세요. 빠른 시작이 켜져 있으면 시스템 종료 후에 이전 세션이 이어질 수 있습니다. 브라우저를 완전히 종료해도 브라우저의 메모리 DNS 캐시가 지워집니다.

라우터의 DNS 캐시는 어떻게 삭제하나요?

대부분의 가정용 공유기에는 삭제 버튼이 없습니다. 전원을 30초 동안 뽑았다가 다시 연결해 재시작하면 DNS 캐시를 포함한 메모리가 지워집니다. OpenWrt처럼 dnsmasq를 쓰는 공유기는 SSH로 /etc/init.d/dnsmasq restart를 실행해 지울 수 있습니다.

작성자 소개

Shaik Vahid

DNS Robot 창립자. Vahid는 수년간 웹 호스팅 지원 업무를 하며 고객의 도메인, DNS 레코드, SSL 인증서, 이메일 전송 문제를 해결했습니다. DNS Robot의 도구를 만들고, 사람들이 실제로 겪는 오류를 바탕으로 이 가이드를 씁니다.

DNS 조회

도메인 자체 네임서버의 모든 DNS 레코드를 Google·Cloudflare 캐시와 나란히 확인