Directory Service cache - Gather information, statistics, initiate queries, flush the cache.
dscacheutil replaces most of the functionality of thelookupd tool provided prior to OS X Leopard.


      dscacheutil -q category [-a key value]

      dscacheutil -cachedump [-buckets] [-entries [category]]

      dscacheutil -configuration

      dscacheutil -flushcache

      dscacheutil -statistics

      dscacheutil -h


     -h      List the options for calling dscacheutil

     -q category
             Initiate a query using standard calls.  These calls will either
             return results from the cache or go fetch live data and place
             them in the cache.  By default if no specific query is requested
             via -a then all results within that category will be returned.

     -a key value
             Optional flag to -q for a specific key with a value.

             Dump an overview of the cache by default.  Additional flags will
             provide more detailed information.

             Use in conjunction with -cachedump to also print hash bucket
             usage of the current cache.

     -entries [category]
             Use in conjunction with -cachedump to dump detailed information
             about cache entries.  An optional category can be supplied to
             only see types of interest.

             Print current configuration information, such as the search pol-
             icy from Directory Service and cache parameters.

             Flush the entire cache. This should only be used in extreme cases.
             Validation information is used within the cache along with other 
             techniques to ensure the OS has valid information
             available to it.

             Print statistics from the cache including an overview and
             detailed call statistics.  Some calls are not cached but are
             derived from other calls internally.  Cache hits and cache misses
             are not always be equal to external calls.  For example getad-
             drinfo is actually a combination of gethostbyname with other
             calls internally to the cache to maximize cache hit rate.

     Available categories and associated keys:

     group       name or gid

     host        name or ip_address (used for both IPv6 and IPv4)

     mount       name

     protocol    name or number

     rpc         name or number

     service     name or port

     user        name or uid


Lookup a user:

$ dscacheutil -q user -a name jdoe
name: jdoe
password: ********
uid: 501
gid: 501
dir: /Users/jdoe
shell: /bin/csh
gecos: John Doe

Lookup all users:

$ dscacheutil -q user

Dump cache overview:

$ dscacheutil -cachedump

Dump cache details with user entries:

$ dscacheutil -cachedump -entries user

Flush the DNS cache, the mDNSResponder will automatically restart.

# macOS 10.7, 10.8, and 10.9, 10.10.4 and above:
$ sudo killall -HUP mDNSResponder

# for older (pre 2009) versions of macOS:

# macOS 10.5 and 10.6:
$ sudo dscacheutil -flushcache

# macOS 10.10.1, 10.10.2, and 10.10.3:
sudo discoveryutil mdnsflushcache

Tip: You can use an alias to save remembering long commands:

$ alias flushdns='sudo killall -HUP mDNSResponder'

In normal operation, there should be no need to flush DNS entries, if your ISP provided DNS is unreliable, consider using Open DNS ( and and/or Google DNS ( and as an alternative.

“Keep close to Nature's heart... and break clear away, once in awhile, and climb a mountain or spend a week in the woods. Wash your spirit clean” ~ John Muir

Related macOS commands

/private/etc/hosts - macOS Hosts file.
hostname - Print or set system name.
Windows equivalent: ipconfig / flushdns

Copyright © 1999-2024 SS64.com
Some rights reserved