-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathIPtoHOSTNAME
37 lines (33 loc) · 1.27 KB
/
IPtoHOSTNAME
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#!/bin/bash
#Written by ProbieK
#https://github.com/ProbieK/
echo "IP list to find Hostnames for: "
read -p ">" USERINPUT
function alivecheck {
read -r -p "Print only [1]alive hosts or print [*]all hosts? " response
case $response in
1)
for IP in $IPLIST; do
VAR1=$(sudo arp-scan -q $IP | tail -n +3 | head -n -3 | sed $'s/\t.*//')
for VAR in $VAR1; do
VARNS=$(nslookup $VAR | tail -n 2 | head -n 1 | sed $'s/^.*= //' | cut -f1 -d ".")
echo "$IP: $VARNS"
done
done;;
*)
for IP in $IPLIST; do
VARNS=$(nslookup $IP | tail -n 2 | head -n 1 | sed $'s/^.*= //' | cut -f1 -d ".")
echo "$IP: $VARNS"
done;;
esac
}
if [ -f $USERINPUT ] ; then
IPLIST=$(<$USERINPUT)
alivecheck
else
IPLIST=$(sudo arp-scan -q $USERINPUT | tail -n +3 | head -n -3 | sed $'s/\t.*//')
for IP in $IPLIST; do
VARNS=$(nslookup $IP | tail -n 2 | head -n 1 | sed $'s/^.*= //' | cut -f1 -d ".")
echo "$IP: $VARNS"
done
fi