Am Tue, 04 Feb 2014 16:19:08 +0000 schrieb "Stanislav Blinov" <[email protected]>:
> On Tuesday, 4 February 2014 at 16:02:33 UTC, Craig Dillabaugh > wrote: > > > This computer is on a network with dynamically assigned IP > > address (DHCP). > > So shouldn't the 10.1.101.52 address have been reported? > > Nope. In out-of-the-box simple network setups (i.e. home network > in the form PC/laptop -> router -> internet) the address > resolution won't go further than your hosts file, which in turn > will always give you back the loopback address (more > specifically, the address that is specified for the hostname in > aforementioned file). > > That's why both I and Dicebot mentioned there isn't any real way > to query your local addresses without any live connection: only > when a socket has a connection within a particular network can > you tell your own IP address in that network. The address itself > would depend on the network setup, your local routing > configuration, etc. Your machine can have several network > adaptors (ethernet boards, Wi-Fi, etc.), each configured with > (numerous) routing setups, plus the routers they're connected to > have their own routing setups... This can go on and on. As a last resort there are always OS specific APIs to iterate network interfaces. For example, for linux: http://man7.org/linux/man-pages/man3/getifaddrs.3.html (Of course this doesn't tell you at all whether a local IP-address is actually routable. And you probably have to figure out if you got a link local / ULA IPv6 or a global one)
