java.net.InetAddress
использует кэширование успешных и неудачных разрешений имен хостов.
Из своего Javadoc:
Класс InetAddress имеет кеш для
хранить успешно, а также
неудачные разрешения имени хоста.
По умолчанию, когда менеджер безопасности
установлен, чтобы защитить от
DNS спуфинговые атаки, результат
положительные разрешения имени хоста
кешируется навсегда. Когда безопасность
менеджер не установлен, по умолчанию
Поведение заключается в кэшировании записей для
конечный (зависит от реализации)
промежуток времени. Результат
неудачное разрешение имени хоста
кэшируется в течение очень короткого периода времени
(10 секунд) для улучшения производительности.
Если поведение по умолчанию не
желательно, затем свойство безопасности Java
можно установить другое время жизни
(TTL) значение для положительного кэширования.
Аналогично, системный администратор может настроить
другое отрицательное значение кэширования TTL
когда нужно.
Два элемента управления свойствами безопасности Java
значения TTL, используемые для положительного и
Кэширование разрешения отрицательного имени хоста:
networkaddress.cache.ttl
Указывает политику кэширования для
успешные поиски имени от имени
оказание услуг. Значение указывается как
целое число для обозначения количества
секунд для кеширования удачного
уважать. Значением по умолчанию является
кеш для конкретной реализации
период времени.
Значение -1 указывает «кеш»
навсегда».
networkaddress.cache.negative.ttl (по умолчанию: 10)
Указывает на кеширование
политика для неудачных поисков имен
из службы имен. Значение
указано как целое число для обозначения
количество секунд для кеширования
ошибка при неудачных поисках.
Значение 0 указывает «никогда не кэшировать».
Значение -1 указывает «кеш»
навсегда».
Если вы имеете в виду сброс кешей (типа java.net.InetAddress$Cache
), используемых java.net.InetAddress
, это внутренние детали реализации и, таким образом, private
:
/*
* Cached addresses - our own litle nis, not!
*/
private static Cache addressCache = new Cache(Cache.Type.Positive);
private static Cache negativeCache = new Cache(Cache.Type.Negative);
Поэтому я сомневаюсь, что вы найдете что-то подобное, и думаю, что вам придется играть с отражением, чтобы достичь своей цели.