У меня есть следующий код:
import java.net.InetAddress;
public class lookup {
public static void main(String[] args) throws Exception {
for(String host : args){
for(InetAddress addr : InetAddress.getAllByName(host)){
System.out.println(addr.getHostAddress());
}
}
}
}
Недавно мы изменили CNAME для хоста, который мы назовем foo.example.com, чтобы он указывал на bar.example.com на baz.example.com. Если я бегу:
java -Djava.net.preferIPv4Stack=true lookup foo.example.com
Я получаю IP-адрес baz.example.com, как и ожидалось. Однако, если я бегу:
java lookup foo.example.com
Я все еще получаю IP-адрес bar.example.com.
Я подтвердил, что ни bar.example.com, ни baz.example.com не имеют записей AAAA. dig
и ping
разрешают baz.example.com как и ожидалось. Как получить стек ipv6 Java для правильного решения этой проблемы?