Nali 一个查询IP地理信息和CDN提供商的离线终端工具

Nali 是一个查询IP地理信息和CDN提供商的离线终端工具,环境需要 Go 1.8+,在使用它前需要用下面的命令安装 :

$ go install github.com/zu1k/nali

注意这里需要改成:

$ go install github.com/zu1k/nali@v0.3.8

也就是安装最新版本,不然在查询 CDN 信息时会报错。

在安装的过程也很恶心,你会发现安装一些 time out:

module : Get “https://proxy.golang.org/”: dial tcp 172.217.160.113:443

因为 golang 的地址已经被强了,此时你需要:

go env -w GOPROXY=https://goproxy.cn

然后就可以正常下载了。

Mac 从 Catalina 起默认选择了 zsh shell,但配置文件并没有自动生成,我在安装了 Go 环境和 Nali 后依然提示:

$ zsh: command not found: nali

查阅了许多资料才发现,我没有在 .zshrc 文件里配置环境变量,但是我连 .zshrc 文件都没有啊,接着又查阅资料,提示可以安装 Oh My Zsh,安装后有了配置文件,在 /Users/xxx(你的 Mac 个人目录)下,用组合键 「⌘ + Shift + .」请出隐藏文件,.zshrc 的配置文件就在里面,打开后在 # User Configuration 下方添加:

export PATH=“/Users/xxx/go/bin:$PATH”

然后重启终端.app 即可发现 Nali 就能正常使用了:

查询一个IP的地理信息

$ nali 1.2.3.4

1.2.3.4 [澳大利亚 APNIC Debogon-prefix网络]

同时 Nali 也可以自己更新数据库,因为它是一个离线的查询工具,有自己的数据库:

$ nali update

2020/07/17 12:53:46 正在下载最新纯真 IP 库…

2020/07/17 12:54:05 已将最新的纯真 IP 库保存到本地 /root/.nali/qqwry.dat

选择数据库的技巧请见工具主页

其他使用方法:

使用 管道

$ echo IP 6.6.6.6 | nali

IP 6.6.6.6 [美国 亚利桑那州华楚卡堡市美国国防部网络中心]

同时查询多个IP的地理信息

$ nali 1.2.3.4 4.3.2.1 123.23.3.0

1.2.3.4 [澳大利亚 APNIC Debogon-prefix网络]

4.3.2.1 [美国 新泽西州纽瓦克市Level3Communications]

123.23.3.0 [越南 越南邮电集团公司]

交互式查询

使用 exit 或  quit 退出查询

$ nali

123.23.23.23

123.23.23.23 [越南 越南邮电集团公司]

1.0.0.1

1.0.0.1 [美国 APNIC&CloudFlare公共DNS服务器]

8.8.8.8

8.8.8.8 [美国 加利福尼亚州圣克拉拉县山景市谷歌公司DNS服务器]

quit

与 dig 命令配合使用

需要你系统中已经安装好 dig 程序

$ dig nali.zu1k.com +short | nali

104.28.2.115 [美国 CloudFlare公司CDN节点]

104.28.3.115 [美国 CloudFlare公司CDN节点]

172.67.135.48 [美国 CloudFlare节点]

与 nslookup 命令配合使用

需要你系统中已经安装好 nslookup 程序

$ nslookup nali.zu1k.com 8.8.8.8 | nali

Server: 8.8.8.8 [美国 加利福尼亚州圣克拉拉县山景市谷歌公司DNS服务器]

Address: 8.8.8.8 [美国 加利福尼亚州圣克拉拉县山景市谷歌公司DNS服务器]#53

Non-authoritative answer:

Name: nali.zu1k.com

Address: 104.28.3.115 [美国 CloudFlare公司CDN节点]

Name: nali.zu1k.com

Address: 104.28.2.115 [美国 CloudFlare公司CDN节点]

Name: nali.zu1k.com

Address: 172.67.135.48 [美国 CloudFlare节点]

与任意程序配合使用

因为 nali 支持管道处理,所以可以和任意程序配合使用

bash abc.sh | nali

Nali 将在 IP后面插入IP地理信息,CDN域名后面插入CDN服务提供商信息

查询 CDN 服务提供商

因为 CDN 服务通常使用 CNAME 的域名解析方式,所以推荐与 nslookup 或者 dig 配合使用,在已经知道 CNAME 后可单独使用

$ nslookup www.gov.cn | nali

Server: 127.0.0.53 [局域网 IP]

Address: 127.0.0.53 [局域网 IP]#53

Non-authoritative answer:

www.gov.cn canonical name = www.gov.cn.bsgslb.cn [白山云 CDN]. www.gov.cn.bsgslb.cn [白山云 CDN] canonical name = zgovweb.v.bsgslb.cn [白山云 CDN].

Name: zgovweb.v.bsgslb.cn [白山云 CDN]

Address: 103.104.170.25 [新加坡 ]

Name: zgovweb.v.bsgslb.cn [白山云 CDN]

Address: 2001:428:6402:21b::5 [美国Louisiana州Monroe Qwest Communications Company, LLC (CenturyLink)]

Name: zgovweb.v.bsgslb.cn [白山云 CDN]

Address: 2001:428:6402:21b::6 [美国Louisiana州Monroe Qwest Communications Company, LLC (CenturyLink)]

评论