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.
Syntax dscacheutil -q category [-a key value] dscacheutil -cachedump [-buckets] [-entries [category]] dscacheutil -configuration dscacheutil -flushcache dscacheutil -statistics dscacheutil -h Options -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. -cachedump Dump an overview of the cache by default. Additional flags will provide more detailed information. -buckets 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. -configuration Print current configuration information, such as the search pol- icy from Directory Service and cache parameters. -flushcache 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. -statistics 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 may 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
Examples
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 (OSX Leopard)
$ sudo dscacheutil -flushcache
Flush the DNS cache (OSX Snow Leopard 10.6 or greater) The mDNSResponder will automatically restart.
$ sudo killall -HUP mDNSResponder
Tip: You can use an alias to save remembering long commands:
$ alias flushdns='sudo killall -HUP mDNSResponder'
“Talent is hitting a target no-one else can hit, genius is hitting a target no-one else can see” ~ Schopenhauer
Related:
dscacheutil man page - Apple.com
/private/etc/hosts - OS X Hosts file
DirectoryService(8)
dsmemberutil(1)
Windows equivalent: ipconfig / flushdns