Affect the order of NetworkInterface.getNetworkInterfaces enumeration in Java 6 on Linux
What is the order in which NetworkInterface.getNetworkInterfaces() returns an enumeration of network interfaces? Is there a way to affect that on JVM level or on Linux OS level?
According to the source of the OpenJDK (found in src/solaris/native/java/net/NetworkInterface.c, method enumInterfaces) it will return IPv4 interfaces first (method enumIPv4Interfaces), followed by IPv6 interfaces (method enumIPv6Interfaces).
The order within those categories seems to be the same that the OS uses (it uses the SIOCGIFCONF ioctl).
Note that this is implementation dependent and not defined, so any implementation can very easily do it differently.