Skip to content

Latest commit

 

History

History
129 lines (103 loc) · 6.33 KB

README.md

File metadata and controls

129 lines (103 loc) · 6.33 KB

Java Dns Cache Manipulator Tool

Build Status Coveralls branch JDK support GitHub release download - dcm.tar.gz)
License Javadocs Maven Central GitHub release
Chat at gitter.im GitHub Stars GitHub Forks user repos GitHub issues GitHub Contributors

👉 设置/查看 运行中JVM进程的DNS Cache,支持IPv6

🔧 功能

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

👥 User Guide

下载

GitHub release download - dcm.tar.gz) 下载文件dcm-x.x.x.tar.gz

解压后,运行bin目录下的dcm

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

设置/重置DNS

# 对进程ID是12345的Java进程,设置域名 foo.com IP为 1.1.1.1
$ dcm -p 12345 set foo.com 1.1.1.1
# 对进程ID是12345的Java进程,设置域名 bar.com IP为 2.2.2.2 3.3.3.3(可以多个IP)
$ dcm -p 12345 set bar.com 2.2.2.2 3.3.3.3

查看DNS Cache内容

查看单条

# 对进程ID是12345的Java进程,获取域名 aliyun.com 的DNS条目信息
$ dcm -p 12345 get aliyun.com
aliyun.com 220.181.57.217,180.149.132.47,123.125.114.144 2015-06-05T18:56:09.635+0800
# 输出格式是 域名 IP列表(可能有多个IP) 失效时间

查看全部

$ dcm -p 12345 list
Dns cache:
    bar.com 2.2.2.2,3.3.3.3 292278994-08-17T15:12:55.807+0800
    aliyun.com 220.181.57.217,180.149.132.47,123.125.114.144 2015-06-05T19:00:30.514+0800
    foo.com 1.1.1.1 292278994-08-17T15:12:55.807+0800
Dns negative cache:
# 输出包含Cache 和 Negative Cache的条目。条目缩进了4个空格。
# 上面的示例中,Negative Cache为空。

删除/清空DNS Cache

# 删除一条DNS
$ dcm -p 12345 rm aliyun.com
# 清除所有DNS Cache
$ dcm -p 12345 clear

设置/查看JVM缺省的DNS的缓存时间

# 查看缓存时间,单位秒。-1表示永远缓存,0表示不缓存
$ dcm -p 12345 getPolicy
30
# 设置缓存时间
$ dcm --pid 12345 setPolicy 5
# 查看未命中条目的缓存时间,单位秒。-1表示永远缓存,0表示不缓存
$ dcm -p 12345 getNegativePolicy
10
# 设置未命中条目的缓存时间
$ dcm -p 12345 setNegativePolicy 0

📚 相关资料