Get IP Address from Command Line

By  on  

Over the past few years I've needed to look up my IP address a dozen times.  What's funny is that I don't recall why I needed it, I just did.  So what's the easiest way to get my IP address from the command line?

To get your internal IP, you can do the following:

ipconfig getifaddr en0

I go through ipecho.net to get it:

curl ipecho.net/plain ; echo

#  >> 71.87.32.78

Why go through an external resource?  Your local address and your external address aren't the same, so using the external resource is the best way to tell what the world is seeing your IP address as.

Recent Features

  • By
    5 Ways that CSS and JavaScript Interact That You May Not Know About

    CSS and JavaScript:  the lines seemingly get blurred by each browser release.  They have always done a very different job but in the end they are both front-end technologies so they need do need to work closely.  We have our .js files and our .css, but...

  • By
    Send Text Messages with PHP

    Kids these days, I tell ya.  All they care about is the technology.  The video games.  The bottled water.  Oh, and the texting, always the texting.  Back in my day, all we had was...OK, I had all of these things too.  But I still don't get...

Incredible Demos

  • By
    Retrieve Google Analytics Visits and PageViews with PHP

    Google Analytics is an outstanding website analytics tool that gives you way more information about your website than you probably need. Better to get more than you want than not enough, right? Anyways I check my website statistics more often than I should and...

  • By
    HTML5 Input Types Alternative

    As you may know, HTML5 has introduced several new input types: number, date, color, range, etc. The question is: should you start using these controls or not? As much as I want to say "Yes", I think they are not yet ready for any real life...

Discussion

  1. ifconfig | grep mask
    
  2. ElanMan

    I prefer the slightly simpler/easier to remember

    curl ifconfig.me
    
  3. nedt

    ipinfo.io can give you even more information and is easier to use via tunneling as it works without a host header.

  4. MaxArt

    Windows users can use ipconfig (notice the ‘p’).

  5. Your internal IP also depends on interface you’re using, in your case (en0) it was ethernet, but it also can be WiFi (en1).

  6. ip route get 8.8.8.8 | awk 'NR==1 {print $NF}'
  7. Some time ago I started using an alternative which only uses DNS queries:

    dig +short myip.opendns.com @resolver1.opendns.com
  8. Google > “My IP” = Winner!

  9. $ curl ipinfo.io
    {
      "ip": "174.47.27.98",
      "hostname": "174-47-27-98.static.twtelecom.net",
      "city": "Orange",
      "region": "California",
      "country": "US",
      "loc": "33.7878,-117.8531",
      "org": "AS4323 tw telecom holdings, inc.",
      "postal": "92666"
    }
    
    $ curl ipinfo.io/ip
    69.170.45.10
    
    $ curl ipinfo.io/org
    AS4323 tw telecom holdings, inc.
    

    See http://ipinfo.io/developers for more details

  10. I just search Google for “what is my ip” like a n00b.

  11. I prefer:

    alias publicip='curl ipecho.net/plain ; echo'
    alias localip="ifconfig | grep -Eo 'inet (addr:)?([0-9]*\.){3}[0-9]*' | grep -Eo '([0-9]*\.){3}[0-9]*' | grep -v '127.0.0.1'"
  12. hahaha, i just think to google it :D, but thanks dude, sometimes need to apply to my terminal command

  13. It is ugly. But the Google lovers will enjoy.

    Prerequisite: curl, and grep.

    curl -s "https://www.google.ie/search?client=firefox-b&q=myip&oq=myip&gs_l" | grep "Client IP address" | grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b"
    

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!