给输出的IP附加上地理信息和所属ISP
公司业务调整,对日志进行分析时,想要同时显示IP所在地以及所属ISP,用脚本获取日志IP再逐条通过第三方接口查询显的很笨拙又要联网查询效率方面可想而知,可参见《使用PHP+淘宝IP地址库接口获得IP所属地理位置》。找到了一款工具nali,取自中文“哪里”的拼音。包含的命令有nali、nali-dig、nali-nslookup、nali-ping、nali-tracepath、nali-traceroute、nali-update。主要功能就是把一些网络工具的输出的IP字符串,附加上地理位置信息(使用纯真数据库QQWry.Dat),查询是在本地进行的,不会联网查询。
一. 安装nali
# wget https://qqwry.googlecode.com/files/nali-0.2.tar.gz # tar zxvf nali-0.2.tar.gz # cd nali-0.2 # ./configure --help # make # make install
二. 更新IP数据库
在使用nali之前,先更新IP数据库到最新版本。
# nali-update Updating /usr/local/share/QQWry.Dat % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 8932k 100 8932k 0 0 336k 0 0:00:26 0:00:26 --:--:-- 370k Successfully Updated
三. 使用实例
1. 统计nginx访问日志并查看来自哪里
# cat www.ttlsa.com-aceess.log | awk '{print $1}' | sort | uniq -c | nali | sort -rnk1 | head -n 20
2. 查找请求IP并显示来自哪里(常用于查找攻来源)
# netstat -anlp|grep 80|grep tcp|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|nali | sort -nr|head -n20
3. 用tcpdump嗅探80端口的访问谁最高并显示来自哪里
# tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F"." '{print $1"."$2"."$3"."$4}' | sort | uniq -c|nali | sort -nr |head
对于nali-dig、nali-nslookup、nali-ping、nali-tracepath、nali-traceroute这几个命令,大家就各自去试试,简单明了,这里就不演示了。
本文由主机测评网发布,不代表主机测评网立场,转载联系作者并注明出处:https://zhuji.jb51.net/yunwei/8241.html