Best Way To Check If Ipv6 Is Available
What is the best way to check if IPv6 is available on the currient android phone? My currient idea is to use NetworkInterface and to enumerate via NetworkInterface.getNetworkInterf
Solution 1:
I don't know of a simpler way than using NetworkInterface
if you need to check all of the interfaces, but it shouldn't be that bad:
for(NetworkInterface netInt: NetworkInterface.getNetworkInterfaces()){
for(InterfaceAddress address: netInt.getInterfaceAddresses()){
if(address.getAddress() instanceof Inet6Address){
// found IPv6 address// do any other validation of address you may need here
}
}
}
if you know the address you want to check you can skip using NetworkInterface
and check the specific InetAddress
by calling one of InetAddress
's static getBy...()
methods and check whether that is an instance of Inet6Address
.
Solution 2:
booleanisIPV6=false;
Enumeration<NetworkInterface> networkInterfaces =
NetworkInterface.getNetworkInterfaces();
while (networkInterfaces.hasMoreElements()) {
NetworkInterfaceni= networkInterfaces.nextElement();
for (InterfaceAddress addr : ni.getInterfaceAddresses()) {
if (addr.getAddress() instanceof Inet6Address) {
isIPV6 = true;
}
}
}
Post a Comment for "Best Way To Check If Ipv6 Is Available"