5 Commands to Get Public IP using Linux Terminal

Public IP are used for communication between computers over internet. A computer running with public ip is accessible all over world using internet. So we can say that it is the identity of computer on internet. Now the question is how do we know our public ip. For computers having GUI can easily get there ips using web tools like this but how we get ips of computers having terminal access only. Solution is here – use one of the following commands to find public ip of your system using Linux terminal. These are also useful to use in shell script.

Get Public IP using Linux Terminal

Command 1. Using wget

# wget http://ipecho.net/plain -O - -q ; echo

Command 2: Using curl

# curl ipecho.net/plain; echo

Command 3: Using wget

# wget http://observebox.com/ip -O - -q ; echo

Command 4: Using curl

# curl icanhazip.com

Command 5: Using curl

# curl ifconfig.me

Get Public IP in Shell Script

We can simply use following commands in our shell script get our computers public ip and store them in a variable to use anywhere in shell script.


PUBLIC_IP=`wget http://ipecho.net/plain -O - -q ; echo`

You could use a DNS request instead of HTTP request to find out your public IP:

C:\> nslookup myip.opendns.com resolver1.opendns.com

It uses resolver1.opendns.com dns server to resolve the magical myip.opendns.com hostname to your ip address.

Unix version:

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

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: