Linux发行版下带地理信息的Traceroute

Traceroute是个好工具。它能够显示从当前计算机追踪到目标的每一节点的信息(大部分)。用来分析网站是极好的。可是如果只显示ip而不显示地理位置信息就不是很直观了。

很久以前,我是使用一个叫nali的工具。这个工具用的是纯真ip的数据库。这个工具有两个缺点。一个是要编译,安装繁琐。另一个是该工具使用的数据库是很老旧的。纯真ip是n多年以前那种显示ip的qq破解版使用的数据库(我记得我n多年以前还用过这种类型的QQ😂)。

所以在百度上(恩,百度)发现有大佬写了基于 mtr 和 whois查询的sh脚本。这下好了,直接发挥拿来主义精神。发现效果还不错,虽然不是中文,但是数据权威,绝对最新。发现脚本中有一处\n 写成了/n 不知是写错的还是什么原因。在我的arch linux某衍生版上挤在一起,遂改之,使完美。

附上脚本源码:

#!/bin/bash
echo traceroute ip:$1 from localhost
ip=$1
echo
mtr --n --report $ip|grep -v ^HOST|awk '{printf $1" "$2" ";system("whois "$2"|grep -e netname -e descr|cut -c17-");printf "\n"}

食用方法:请先安装whois和mtr,蓝后再copy上面代码存为tracegeo.sh 后,用 sh ./tracegeo.sh [ip] 调用

效果如图:

😏简直完美~