java 如何动态修改DNS,对host动态绑定即时生效
?
?
1.windows下
? 1.1 在java中直接设置:
? ? ? ? ? ?java.security.Security.setProperty("networkaddress.cache.ttl" , "0");
? ? ? ? java.security.Security.setProperty("networkaddress.cache.negative.ttl" , "0");
?
? ? ? 然后修改host文件的绑定直接就能生效。
?
? ? 1.2 通过反射修改jdk的DNS缓存,在windows下修改host之后也能直接生效。
? ? ? ??
?
?
? ? ? ? java.security.Security.setProperty("networkaddress.cache.negative.ttl" , "0");
? ? ? 还需要启动一个脚本:执行这个脚本才能修改host文件后直接生效。 脚本执行间隔根据需求定。
? ? ? ? #!/bin/sh
?
?
2.2 同样上面windows下通过反射修改jdk的DNS缓存,同样再执行下面这个脚本就ok了。
?
附上测试程序:
?
??
在windows下得输出:
?
??