Выберите DNS-сервер для разрешения имен хостов в Java
Преобразование имени хоста в IP-адрес довольно просто в Java с помощью класса InetAddress, например:
InetAddress address = InetAddress.getByName("www.example.com");
Но этот метод использует DNS-сервер, который используется работающей системой.
Есть ли способ указать DNS-сервер, который следует использовать для разрешения?
1 ответ
Решение
Если вы используете Sun Java, вы можете использовать этот код:
//Override system DNS setting with Google free DNS server
System.setProperty("sun.net.spi.nameservice.nameservers", "8.8.8.8");
System.setProperty("sun.net.spi.nameservice.provider.1", "dns,sun");
См. Этот пост в блоге: Как установить собственный DNS-сервер со свойствами Java System для получения более подробной информации.