Get own public IP address

wget -qO- whatismyip.org
Sample Output
$ wget -qO- whatismyip.org
74.125.67.100$ 

-6
2009-03-27 10:57:57

4 Alternatives + Submit Alt

What Others Think

Doesn't work, however curl -s myip.dk |grep '"Box"' | egrep -o '[0-9.]+' does work.
tebeka · 494 weeks and 6 days ago
Doesn't work, however curl -s myip.dk |grep '"Box"' | egrep -o '[0-9.]+' does work.
tebeka · 494 weeks and 6 days ago
The same with wget: wget -O - -q myip.dk |grep '"Box"' | egrep -o '[0-9.]+'
PabloX · 494 weeks and 6 days ago
You guys are using the wrong site :-P wget -qO- whatismyip.org It doesn't have any HTML or markup, just a plain ip. try ping $( wget -qO- whatismyip.org ) Will work flawlessly. If you find yourself using a external IP a lot, consider instead using a dynamic DNS client like http://no-ip.com or a similar service. Free, east setup, and they have open source daemons to update it automatically. This gives you an actual named URL, and you won't ever need to use this command. On ubuntu, run sudo aptitude search dyndns-client Or search for "dynamic DNS" in your package manager to find some sites with supported services.
clockworkavian · 494 weeks and 6 days ago
@clockworkavian: Thanks for the tip about whatismyip.org! I don't want to install/use dyndns-client every time I need an IP in a script...
kobayashison · 494 weeks and 4 days ago
Yep... 1st one works like a charm. No grep or egrep needed. Just Ip plain text. It's perfect. You don't rely on the web designer... Because on the checkip one, if the web designer decide to do any change to the page, it might not work anymore. That's exactly what happened to the propose command on lifehacker, where it is proposed to use myip.dk. This site change the page layout, and bam... The command is useless.
Superkikim · 363 weeks and 1 day ago
Regarding dynamic DNS update, that is exactly why I am looking for such command. I use ZoneEdit.com, and I have no idea when my ISP changes my IP. I made a script to update the zone every 5 minutes. But I've been blocked by zoneedit.com because I'm making to many updates, even if the site can tell "no update needed" they don't like people "spamming" with update requests. I will now add a command to check by myself if the IP changed every 1 or 5 minutes, and if it did, then I will update the zone at zoneedit.com. Then, every request will be for a good reason :-) This will also show me at what frequency the ISP changes my IP address.
Superkikim · 363 weeks and 1 day ago
This is the command I use in my home made ddns script to update zoneedit.com wget --no-check-certificate -q checkip.dyndns.org -O index.html && cat index.html|cut -d ' ' -f 6 | cut -d '<' -f 1 The script is here http://akim.sissaoui.com/linux-attitude/script-de-mise-a-jour-ddns-zoneedit-com-en-bashsh/ (copy paste). The article is in french but hey... google translate is your best friend.
Superkikim · 227 weeks and 3 days ago

What do you think?

Any thoughts on this command? Does it work on your machine? Can you do the same thing with only 14 characters?

You must be signed in to comment.

What's this?

commandlinefu.com is the place to record those command-line gems that you return to again and again. That way others can gain from your CLI wisdom and you from theirs too. All commands can be commented on, discussed and voted up or down.

Share Your Commands



Stay in the loop…

Follow the Tweets.

Every new command is wrapped in a tweet and posted to Twitter. Following the stream is a great way of staying abreast of the latest commands. For the more discerning, there are Twitter accounts for commands that get a minimum of 3 and 10 votes - that way only the great commands get tweeted.

» http://twitter.com/commandlinefu
» http://twitter.com/commandlinefu3
» http://twitter.com/commandlinefu10

Subscribe to the feeds.

Use your favourite RSS aggregator to stay in touch with the latest commands. There are feeds mirroring the 3 Twitter streams as well as for virtually every other subset (users, tags, functions,…):

Subscribe to the feed for: