LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   Script to find the IP from hostname (https://www.linuxquestions.org/questions/linux-newbie-8/script-to-find-the-ip-from-hostname-4175414424/)

ravi_nandula 07-02-2012 04:59 AM

Script to find the IP from hostname
 
Hi everyone,

I know that if we give "ping hostname" will give the IP address.
This is good if I have 5 to 6 hosts.If I have hundreds of hosts ping cmd is very painful to do.

So I need script to find all those IP address......Can anyone help me out with this.

Thanks and advance

lithos 07-02-2012 05:16 AM

HI,

do you have maybe a file with a list of hostnames ?

It would be quickly done like this:
Code:

# vim hostnames_file.txt
google.com
linuxquestions.org
yahoo.com
microsoft.com

then you will "loop" through that file with a script
Code:

vim test-hostnames.sh
#!/bin/bash
while read line; do
#    echo "$line"
  ping -c 1 "$line"
done < "$1"

and you will run it as:
Code:

# ./test-hostnames.sh hostnames_file.txt
ING google.com (209.85.148.113) 56(84) bytes of data.
64 bytes from fra07s07-in-f113.1e100.net (209.85.148.113): icmp_seq=1 ttl=54 time=30.1 ms

--- google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 30.184/30.184/30.184/0.000 ms
PING linuxquestions.org (75.126.162.205) 56(84) bytes of data.
64 bytes from www.linuxquestions.org (75.126.162.205): icmp_seq=1 ttl=46 time=162 ms

--- linuxquestions.org ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 162.975/162.975/162.975/0.000 ms
PING yahoo.com (209.191.122.70) 56(84) bytes of data.
64 bytes from ir1.fp.vip.mud.yahoo.com (209.191.122.70): icmp_seq=1 ttl=45 time=153 ms

--- yahoo.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 153.648/153.648/153.648/0.000 ms
PING microsoft.com (64.4.11.37) 56(84) bytes of data.


--- microsoft.com ping statistics ---
1 packets transmitted, 0 received, 100% packet loss, time 0ms

good luck

rosehosting.com 07-02-2012 05:25 AM

another way of doing this is as the following:

Code:

# while read domain; do host -t A $domain; done < /tmp/hostnames
google.com has address 74.125.225.33
google.com has address 74.125.225.40
google.com has address 74.125.225.41
google.com has address 74.125.225.38
google.com has address 74.125.225.35
google.com has address 74.125.225.36
google.com has address 74.125.225.32
google.com has address 74.125.225.37
google.com has address 74.125.225.39
google.com has address 74.125.225.46
google.com has address 74.125.225.34
linuxquestions.org has address 75.126.162.205
yahoo.com has address 209.191.122.70
yahoo.com has address 72.30.38.140
yahoo.com has address 98.139.183.24
microsoft.com has address 64.4.11.37
microsoft.com has address 65.55.58.201


jefro 07-02-2012 11:16 PM

Ping may or may not resolve a hostname. It may not be possible to query a secure system to access it's hostname.

lithos 07-03-2012 02:12 AM

^^^ totally agree,
nslookup or dig might be better.


All times are GMT -5. The time now is 09:37 PM.