Skip to content

Latest commit

 

History

History
106 lines (81 loc) · 3.82 KB

README.md

File metadata and controls

106 lines (81 loc) · 3.82 KB

Java Dns Cache Manipulator Tool

Build Status Windows Build Status Coverage Status
GitHub release Dependency Status
GitHub issues License

👉 修改/查看 运行中JVM进程的DNS Cache

🔧 功能

  • 设置/重置DNS
  • 查看DNS Cache内容
  • 删除一条DNS Cache(即重新Lookup DNS
  • 清空DNS Cache(即所有的域名重新Lookup DNS
  • 修改/查看JVM缺省的DNS的缓存时间

👥 User Guide

下载

项目Release页面下载文件dcm-tool-x.x.x.tar.gz

解压后,运行bin目录下的dcm脚本(Shell脚本)。

$ dcm -h
usage: Options
 -h,--help             show help
 -p,--pid <arg>        java process id to attach

设置/重置DNS

# 对进程ID是12345的Java进程,设置域名 baidu.com IP为 1.1.1.1
$ dcm -p 12345 set baidu.com 1.1.1.1
set DONE.

查看DNS Cache内容

查看单条

# 对进程ID是12345的Java进程,获取域名 baidu.com 的DNS条目信息
$ dcm -p 12345 get baidu.com
DnsCacheEntry{host='baidu.com', ips=[1.1.1.1], expiration=292278994-08-17 15:12:55.807+0800}
get DONE.

查看全部

$ dcm -p 12345 list
DnsCache{cache=[DnsCacheEntry{host='bar.com', ips=[1.1.1.1], expiration=292278994-08-17 15:12:55.807+0800}, DnsCacheEntry{host='foo.com', ips=[1.1.1.1], expiration=292278994-08-17 15:12:55.807+0800}, DnsCacheEntry{host='baidu.com', ips=[180.149.132.47, 123.125.114.144, 220.181.57.217], expiration=2015-06-03 17:49:42.077+0800}], negativeCache=[]}
list DONE.

清空DNS Cache

$ dcm -p 12345 clear
clear DONE.

修改/查看JVM缺省的DNS的缓存时间

# 查看缓存时间,单位秒。-1表示永远缓存,0表示不缓存
$ dcm -p 12345 getPolicy
30
getPolicy DONE.

# 设置缓存时间
$ dcm --pid 12345 setPolicy 5
setPolicy DONE.

# 查看未命中条目的缓存时间,单位秒。-1表示永远缓存,0表示不缓存
$ dcm -p 12345 getNegativePolicy
10
getNegativePolicy DONE.

# 修改未命中条目的缓存时间
$ dcm -p 12345 setNegativePolicy 0
setNegativePolicy DONE.

📚 相关资料