4 Ways to Find Server Public IP Address in Linux Terminal

In computer networking, an IP (Internet Protocol) address is a numerical identifier assigned permanently or temporarily to every device connected to a network that uses the Internet Protocol for communication. Its two major functions are to identify a network or host on a network and also serve for location addressing.

Read Also: How to Set Static IP Address and Configure Network in Linux

There are currently two versions of IP addresses: IPv4 and IPv6, which can either be private (viewable within an internal network) or public (can be seen by other machines on the Internet).

Additionally, a host can be assigned a static or dynamic IP address depending on the network configurations. In this article, we will show you 4 ways to find your Linux machine or server public IP address from the terminal in Linux.

1. Using dig Utility

dig (domain information groper) is a simple command line utility for probing DNS name servers. To find your public IP addresses, use the opendns.com resolver as in the command below:

$ dig +short myip.opendns.com @resolver1.opendns.com

120.88.41.175

2. Using host Utility

host command is an easy-to-use command line utility for carrying out DNS lookups. The command below will help to display your systems public IP address.

$ host myip.opendns.com resolver1.opendns.com | grep "myip.opendns.com has" | awk '{print $4}'

120.88.41.175

Important: The next two methods employ third party websites to display your IP address on the command line as described below.

3. Using wget Command Line Downloader

wget is a powerful command line downloader that supports various protocols like HTTP, HTTPS, FTP and many more. You can use it with third party websites to view your public IP address as follows:

$ wget -qO- http://ipecho.net/plain | xargs echo
$ wget -qO - icanhazip.com

120.88.41.175

4. Using cURL Command Line Downloader

curl is a popular command line tool for uploading or downloading files from a server using any of the supported protocols (HTTP, HTTPS, FILE, FTP, FTPS and others). The following commands displays your public IP address.

$ curl ifconfig.co
$ curl ifconfig.me
$ curl icanhazip.com

120.88.41.175

That’s It! You may find these following articles useful to read.

  1. 5 Linux Command Line Based Tools for Downloading Files and Browsing Websites
  2. 11 Ways to Find User Account Info and Login Details in Linux
  3. 7 Ways to Determine the File System Type in Linux (Ext2, Ext3 or Ext4)

That’s all! If you have any questions or other methods to share in relation to this topic, use the feedback form below to write back to us.

Best Affordable Linux and WordPress Services For Your Business
Outsource Your Linux and WordPress Project and Get it Promptly Completed Remotely and Delivered Online.

If You Appreciate What We Do Here On TecMint, You Should Consider:

  1. Stay Connected to: Twitter | Facebook | Google Plus
  2. Subscribe to our email updates: Sign Up Now
  3. Get your own self-hosted blog with a Free Domain at ($3.45/month).
  4. Become a Supporter - Make a contribution via PayPal
  5. Support us by purchasing our premium books in PDF format.
  6. Support us by taking our online Linux courses

We are thankful for your never ending support.

Aaron Kili

Aaron Kili is a Linux and F.O.S.S enthusiast, an upcoming Linux SysAdmin, web developer, and currently a content creator for TecMint who loves working with computers and strongly believes in sharing knowledge.

Your name can also be listed here. Got a tip? Submit it here to become an TecMint author.

RedHat RHCE and RHCSA Certification Book
Linux Foundation LFCS and LFCE Certification Preparation Guide

You may also like...

7 Responses

  1. ipconfig.in says:

    You can also use the following command to find out IP address.

    # curl ipconfig.in/ip
    
  2. Mike Francis says:

    How about a simple ping or nslookup?

    • Aaron Kili says:

      @Mike

      Here, we explained how you can get your own public IP address, say on a laptop, from the terminal. Sometimes a ping doesn’t show your public IP address, and nslookup is not appropriate for this, unless you are finding the IP address associated to a domain name.

  3. Zakir Shaikh says:

    curl -L0 http://checkip.org 2>/dev/null | grep ‘IP Address’ | awk -F ‘>’ ‘{ print $3 }’ | awk -F ‘<' '{ print $1 }'

    curl http://wooledge.org/myip.cgi

    These 2 works good for me …
    And thanks for excellent articles…

Leave a Reply to Zakir Shaikh Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.