1# GET-IP.RC
2#
3#  Function to get the IP for a specified host.
4#
5#  nslookup -query=txt host.example.com (using NSLOOKUP to get SPF record)
6#  host -t txt host.example.com (using HOST ditto)
7#
8#  Last Updated: 10/14/2016
9
10LOCALBUFFER='NULL'
11
12:0
13* ! LOCALDOMAIN ?? ^(altavista\.com|\
14                     amazon\.com|\
15                     aol\.com|\
16                     apple\.com|\
17                     att\.net|\
18                     attbi\.com|\
19                     cnn\.com|\
20                     comcast\.net|\
21                     cs\.com|\
22                     earthlink\.(com|net)|\
23                     example\.(com|net|org)|\
24                     excite\.com|\
25                     geocities\.com|\
26                     google\.com|\
27                     hinet\.net|\
28                     hotmail\.com|\
29                     macromedia\.com|\
30                     microsoft\.com|\
31                     mindspring\.com|\
32                     msn\.com|\
33                     netscape\.net|\
34                     sonic\.net|\
35                     terra\.es|\
36                     tripod\.com|\
37                     tripod\.co\.[a-z][a-z]|\
38                     w3\.org|\
39                     yahoo\.[a-z][a-z][a-z]?(\.[a-z][a-z])?)$
40{ LOCALBUFFER=`${SBHOST} ${LOCALHOST} ${SBNAMESRVR}` }
41
42:0
43* ! LOCALBUFFER ?? ^NULL$
44* ! LOCALBUFFER ?? ^Host.*not found.*$
45* ! LOCALBUFFER ?? ^.*connection timed out.*$
46* ! LOCALBUFFER ?? \*\* server can\'t find( )
47* SBHOST ?? ^nslookup$
48{
49 LOCALIP=`${ECHO} "${LOCALBUFFER}" | ${SED} -e 's/[ 	]\{1,\}/ /g ; /;; Truncated, retrying in TCP mode./d ; /^Note:.*$/d ; /^Consider using the.*$/d ; /^option to prevent this message.*$/d ; /Server:.*$Address:.*$/d ; /^$/d ; /Non-authoritative answer:.*$/d ; /Name:.*$/d ; s/^Address:[^0-9]*// ' | ${TR} '[\n]' ' ' | ${SED} -e 's/ .*$// ; 2,$d'`
50}
51
52:0
53* ! LOCALBUFFER ?? ^NULL$
54* ! LOCALBUFFER ?? ^Host.*not found.*$
55* ! LOCALBUFFER ?? ^.*connection timed out.*$
56* ! LOCALBUFFER ?? \*\* server can\'t find( )
57* SBHOST ?? host
58{
59 LOCALIP=`${ECHO} "${LOCALBUFFER}" | ${SED} -e 's/[ 	]\{1,\}/ /g ; /;; Truncated, retrying in TCP mode./d ; /^Using domain server:$/d ; /is a nickname for/d ; /mail is handled/d ; /^Name:/d ; /^Address:/d ; /Aliases:/d ; /^$/d ; /is an alias for/d ; s/^.*has address //' | ${TR} '[\n]' ' ' | ${SED} -e 's/ .*$// ; 2,$d'`
60}
61
62:0
63* LOCALIP ?? ^$
64{ LOCALIP=000.000.000.000 }
65