-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathips_for_fqdn
executable file
·73 lines (66 loc) · 1.02 KB
/
ips_for_fqdn
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#!/bin/bash
FQDN=$1
if [ "$FQDN" == '' ]; then echo 'Pass FQDN along.' >&2; exit 1; fi
DOMAINNAME=$(
echo $FQDN | sed 's/\.$//' | awk -F. '{print $(NF-1)"."$(NF)}'
)
NAMESERVERS=$(
dig NS $DOMAINNAME +short | sed 's/\.$//' | sort | uniq
)
CNAMES=$(
for NAMESERVER in $NAMESERVERS
do
dig CNAME $FQDN @${NAMESERVER} +short
done | sort | uniq
)
IPS_A=$(
for NAMESERVER in $NAMESERVERS
do
dig A $FQDN @${NAMESERVER} +short
done | sort | uniq
)
IPS_CNAME=$(
for NAMESERVER in $NAMESERVERS
do
dig A $CNAME @${NAMESERVER} +short
done | sort | uniq
)
IPS=$(
(echo $IPS_A; echo $IPS_CNAME) | sort | uniq
)
echo 'FQDN:'
echo $FQDN
echo
echo 'DOMAINNAME:'
echo $DOMAINNAME
echo
echo 'NAMESERVERS:'
for NAMESERVER in $NAMESERVERS
do
echo $NAMESERVER
done
echo
echo 'CNAMES:'
for CNAME in $CNAMES
do
echo $CNAME
done
echo
echo 'IPS_A:'
for IP_A in $IPS_A
do
echo $IP_A
done
echo
echo 'IPS_CNAME:'
for IP_CNAME in $IPS_CNAME
do
echo $IP_CNAME
done
echo
echo 'IPS:'
for IP in $IPS
do
echo $IP
done
echo