We help IT Professionals succeed at work.

Check out our new AWS podcast with Certified Expert, Phil Phillips! Listen to "How to Execute a Seamless AWS Migration" on EE or on your favorite podcast platform. Listen Now


How to get external IP address

Medium Priority
Last Modified: 2013-11-13
Howdy, I have a router on my home network that I am playing with.  I've written some code where I can get all the info on it except the external ip address.  The internal ip is and the inner network is consecutive.  I can get all ip addresses of each connected device, and so now the last thing I want to be able to get is the external ip of my router.  Anyone know how?  I am using VB 6.0

Thank you experts!  
Watch Question

From: https://www.experts-exchange.com/Programming/Programming_Languages/Visual_Basic/Q_11813439.html

Comment from aRTie11
Date: 11/10/2000 07:47PM CST

an easy way to make your internet ip appear and not your lan Ip

is to use winsock like so

winsock1.connect "www.microsoft.com",80
InternetIP = winsock1.localip

calling it to access the internet will show the real ip address and not just the lan address

Hope it helps

Shell out a ping command and retreive the answers.  The first hop on your list will be the external IP address.
Unlock this solution and get a sample of our free trial.
(No credit card required)

The first hop on a ping command? Do you mean tracert?

yeah, i think he means tracert:


your external ip will be the second hop (usually) depending on your network setup
Sorry bout that!  yes I meant a tracert.  If this is a standard hom setup, it will generally be the first hop.  If this is at work, especially a large building, that it would not be your next hop.

slight correction:

if it was a standard home setup (e.g., computer to router), it would be the second hop

I block icmp packets on my firewall so tracert would not work for me.

an extremely kludgy way to do it would be to open www.whatismyip.com and parse the results


Here is what I did.  Using g0raths idea, I created a file myIP.shtml and added this one line of code
<!--#echo var="REMOTE_ADDR" -->

This showed my external ip address.  Made sure it was the only line in the file and as such I was able to place the ip address into a text field and save it as a file.  Problem solved.
Why would it be the second hop?  If it is hooked to say a Linksys, the first hop is the outside of the router.  It doesn't hop to the inside, then the outside.
Vinny, do you block ICMP going out as well as coming in?


ah yes, that is a much better way of doing it...but you never know...not everyone has a website laying around they can just put up their own simple IP html page :)

the first hop is from your local machine (your computers network address), the second one is the router
That doesn't show up in my tracert.  My hop 1 is my router. (windows xp)

hrmm... weird, on mine (also xp and also on my linux box) the first one is my local ip:

isn't that correct?

a "hop" is the packet that goes from machine 1 to machine 2

So by definition shouldn't hop 1 be

local machine -> NAT reverse proxy --- for most users? as in those that use things like the linksys home firewall/NAT thingy...

my other setup using a linux box as a routher may be different since it reall isn't a "hop" between" the NICs
local machine -> local ip of linux dmz side -> external ip through the other NIC -> the wide open internet

or for networks I've been on are more like this....
local machine -> subnet router -> DMZ router -> Internet GateWay -> wherever....

either way it's not consistant or something not to be relied upon, so it's usually easier to connect to a "trusted" website that can give you back your IP using the environment var REMOTE_ADDR

Unlock the solution to this question.
Thanks for using Experts Exchange.

Please provide your email to receive a sample view!

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.


Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.