Note that there are some explanatory texts on larger screens.

plurals
  1. POHow to Determine Internet Network Interface in Java
    primarykey
    data
    text
    <p>How do you determine which network interface is connected to the internet using Java? For example, I run</p> <pre><code>InetAddress.getLocalHost().getHostAddress(); </code></pre> <p>and within Eclipse this returns exactly what I intend, 192.168.1.105. However, if I package this into a jar file and run the program, the code returns 169.254.234.50. Looking into this, I found this is the IP address of a VMware Virtual Ethernet Adapter interface on my machine.</p> <p>Is there any way to determine the interface connected to the internet, yet at the same time maintain portability for my code?</p> <p><strong>Comparison of Interfaces</strong></p> <p><em>Interface [net4]</em></p> <pre><code>display name : Intel(R) Centrino(R) Ultimate-N 6300 AGN MTU : 1500 loopback : false point to point: false up : true virtual : false multicast : true HW address : 00 24 D7 2C 5F 70 INET address (IPv4): 192.168.1.105 host name : MyComputer canonical host name : MyComputer loopback : false site local : true any local : false link local : false multicast : false reachable : true </code></pre> <p><em>Interface [eth5]</em></p> <pre><code>display name : VMware Virtual Ethernet Adapter for VMnet1 MTU : 1500 loopback : false point to point: false up : true virtual : false multicast : true HW address : 00 50 56 C0 00 01 INET address (IPv4): 169.254.234.50 host name : MyComputer canonical host name : MyComputer loopback : false site local : false any local : false link local : true multicast : false reachable : true </code></pre> <p>There's a third VMware interface with site local=true and link local=false, so those fields aren't any help either.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload