Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: Java
Expertise: Beginner
Apr 7, 2000



Building the Right Environment to Support AI, Machine Learning and Deep Learning


When I use InetAdress.getAllByName(String host) on my workstation, I get two IP addresses. One is for the LAN connection and the other is for the dialup connection. I need to get the dial up connection's IP address because the LAN's IP address is only known by the local network. Is there a way to determine which IP is which? Are they ordered or something?

Unfortunately, the order in which the IP addresses are returned is platform dependent. You cannot rely on the primary network interface being listed first all of the time. However, when writing network client or server applications, if you do not bind to a specific interface your application will work across both interfaces. If you have a client application that is already connected, you can always determine the interface it is on by calling Socket.getLocalAddress(). But if you really need to know which IP address corresponds to which interface, you can always write some native code or use Runtime.exec() to execute a local utility such as ifconfig (Unix) and parse the output.

DevX Pro
Thanks for your registration, follow us on our social networks to keep up-to-date