blob: a11c164b7f190600ff2b906129cbe17f4815e887 (
plain)
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
|
#!/bin/bash
# $Id: reverse_replace.sh 4 2015-02-17 20:14:59Z jo $
#
# Usage e.g.: netstat -n -4 | reverse_replace.sh
# Parses stdin for IP4 addresses and replaces them
# with names retrieved by reverse_dns.sh
#
DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
DNS=$DIR/reverse_dns.sh
# sed regex
IP_regex='[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'
while read LINE; do
if grep --quiet $IP_regex <<< "$LINE"; then
IPs=`sed "s#.*\b\($IP_regex\)\b.*#\1 #g" <<< "$LINE"`
IPs=($IPs)
for IP in "${IPs[@]}"
do
NAME=`$DNS $IP`
# echo "$NAME is $IP";
LINE="${LINE/$IP/$NAME}"
done
fi
echo $LINE
done < /dev/stdin
|