作者:JackTian
来源:公众号「杰哥的IT之旅」
ID:Jake_Internet
转载请联系授权(微信ID:Hc220088)
原文地址:太强了!这款开源终端工具可查询 IP 信息 …

大家好,我是杰哥。

在 Linux 环境下,有dignslookuptraceroute等多种非常实用的网络调试工具。

  • dig:是常用的域名查询工具,可以用来测试域名是否正常。
  • nslookup:是常用的域名查询工具,也就是查 DNS 信息时用到的命令,它有两种工作模式,分别为交互模式和非交互模式。

交互模式:用户可以向域名服务器查询各类主机、域名的信息或输出域名中的主机列表。
非交互模式:用户可以针对一个主机或域名仅获取它特定的名称或所需信息。

  • traceroute:是用于追踪数据包在网络上传输时的全部路径。

那么,在这篇文章中,给大家介绍一个可以在终端下查询 IP 地理信息和 CDN 提供商的工具 —— nali

nali中文里的谐音是「哪里」。它最初是基于 C 语言编写的小工具,由于版本功能的缺失,js 版本包问题、支持的平台有限。

后来基于 GoLang 重写了这款工具,在原有功能的基础之上增加了对 IPv6 的支持,并且增加了 Geoip2 数据库。

1. nali 的特征

  • 支持多种数据库
  • 纯真 IPv4 离线数据库
  • ZX IPv6 离线数据库
  • Geoip2 城市数据库 (可选)
  • IPIP 数据库 (可选)
  • ip2region 数据库 (可选)
  • CDN 服务提供商查询
  • 支持管道处理
  • 支持交互式查询
  • 支持 IPv4 和 IPv6
  • 支持多语言
  • 查询完全离线
  • 全平台支持
  • 支持彩色输出

2. nali 的安装

通过源码安装 nali,需预先安装 Go >= 1.18 的版本。

# go install github.com/zu1k/nali

下载预编译的可执行程序进行安装 nali,可直接通过 nali 项目中的 Release 页面选择适合目前的系统及硬件架构的版本进行下载,解压后直接运行即可。

我这以 CentOS 为例,直接下载的安装包,进行解压编译并更新 nali。

--no-check-certificate参数以不安全的方式连接进行下载。

# wget http://www.dwhd.org/wp-content/uploads/2015/08/nali-0.2.tar.gz --no-check-certificate
# tar xf nali-0.2.tar.gz
# cd nali-0.2
# ./configure && make && make install && nali-update

3. nali 的使用

查询某个 IP 的地理信息

# nali 9.9.9.9
9.9.9.9[美国 纽约IBM公司]

除上述查询方式以外,还可以结合使用|管道符进行查询。

# echo IP:8.8.8.8 | nali
IP:8.8.8.8[美国 加利福尼亚州山景市谷歌公司DNS服务器]

同时查询多个 IP 地址信息

# nali 1.1.1.1 8.8.8.8 9.9.9.9
1.1.1.1[澳大利亚]
8.8.8.8[美国 加利福尼亚州山景市谷歌公司DNS服务器]
9.9.9.9[美国 纽约IBM公司]

交互式查询多个 IP 地址信息,可执行nali回车后,输入 IP 地址,直到查询完毕,使用exitquitCtrl+C退出交互式查询。

# nali
219.141.136.10
219.141.136.10[北京市 电信]
180.76.76.76
180.76.76.76[北京市 百度公司]
223.5.5.5
223.5.5.5[中国 万网]
exit

nalidig命令结合使用

# dig github.com +short | nali
20.205.243.166[美国 Computer]

nalinslookup命令结合使用

# nslookup github.com 8.8.8.8 | nali
Server:     8.8.8.8[美国 加利福尼亚州山景市谷歌公司DNS服务器]
Address:    8.8.8.8[美国 加利福尼亚州山景市谷歌公司DNS服务器]#53Non-authoritative answer:
Name:   github.com
Address: 20.205.243.166[美国 Computer]

查看 CDN 服务提供商,CDN 服务通常使用 CNAME 的域名解析方式,需要与 nslookup 或 dig 结合使用。

# nslookup www.newduba.cn | nali
Server:     192.168.1.1[局域网 对方和您在同一内部网]
Address:    192.168.1.1[局域网 对方和您在同一内部网]#53Non-authoritative answer:
www.newduba.cn  canonical name = www.newduba.cn.w.kunluncan.com.
Name:   www.newduba.cn.w.kunluncan.com
Address: 111.31.66.218[中国 移动]
Name:   www.newduba.cn.w.kunluncan.com
Address: 111.31.66.220[中国 移动]
Name:   www.newduba.cn.w.kunluncan.com
Address: 111.31.66.225[中国 移动]
Name:   www.newduba.cn.w.kunluncan.com
Address: 111.31.66.224[中国 移动]
Name:   www.newduba.cn.w.kunluncan.com
Address: 111.31.66.221[中国 移动]
Name:   www.newduba.cn.w.kunluncan.com
Address: 111.31.66.223[中国 移动]
Name:   www.newduba.cn.w.kunluncan.com
Address: 111.31.66.219[中国 移动]
Name:   www.newduba.cn.w.kunluncan.com
Address: 111.31.66.222[中国 移动]

只查询 CDN 服务提供商

# nslookup www.xxx.cn | nali cdn

CNAME 域名单独使用

# nali cdn cdn.xxx.com

4. nali 的使用技巧

更新数据库

# nali update

自定义 IP 数据库,需设置环境变量NALI_DB_IP4NALI_DB_IP6

目前所支持的变量内容:

Geoip2 ['geoip', 'geoip2', 'geo']
Chunzhen ['chunzhen', 'qqip', 'qqwry']
IPIP ['ipip', 'ipipfree', 'ipip.net']
Ip2Resion ['ip2region', 'region', 'i2r']

若使用第三方的 IP 数据库,需手动下载对应的 IP 数据库。

Windows 平台

使用 geoip 数据库set NALI_DB_IP4=geoip
或者使用 powershell
$env:NALI_DB_IP4="geoip"使用 ipip 数据库set NALI_DB_IP6=ipip
或者使用 powershell
$env:NALI_DB_IP6="ipip"

Linux 平台

使用 geoip 数据库
export NALI_DB_IP4=geoip使用 ipip 数据库
export NALI_DB_IP4=ipip

推荐阅读

再见 Xshell,这个开源的终端工具更酷炫。

14 款命令行常用工具的替代品

7 款可替代 top 命令的工具

11 款可替代 top 命令的工具

5 款可替代 du 命令的工具

原创手册.pdf

我做公众号 3 年多了,这些年来累积也输出了 200+ 篇原创文章且汇总成了专辑,并将成体系型的内容形成了 PDF 版,主要包含:Linux 命令、LAMP、LNMP、iptables、Pyecharts、Matplotlib,方便大家阅读。

以上手册目录结构可查看:我的 2021 年终总结 原创手册部分。

获取方式很简单,在下方公众号后台回复「JGNB」就能获取啦。

太强了,这款开源终端工具可查询 IP 信息 ...相关推荐

  1. 太强了!这款开源终端工具可查询 IP 信息 ...

    最近在**3A平台**的平台下开通了Linux服务器,学习Linux服务器相关知识. 在 Linux 下,有dig.nslookup.traceroute等多种非常实用的网络调试工具. dig:是常用 ...

  2. 这款开源终端工具逼格更高!比 Xshell 好用

    点击关注公众号,回复"1024"获取2TB学习资源! 作为一个常常与 Linux 系统打交道的程序员,使用 SSH 终端工具进行远程管理(之前也分享过:还在付费使用 XShell? ...

  3. java 日历工具_【Java】太强了,这款开源日历工具库堪称神器!

    首页 专栏 javascript 文章详情 0 太强了,这款开源日历工具库堪称神器! Github导航站发布于 今天 02:03 大家好,我是为广大程序员兄弟操碎了心的小编,每天推荐一个小工具/源码, ...

  4. 源自Google、Facebook、Netflix和Cisco的10款开源安全工具很值得回味

     源自Google.Facebook.Netflix和Cisco的10款开源安全工具很值得回味 选择自由的开源安全软件是一个重要话题,随着新品牌的出现,在选择上也出现很多不确定性.但这没有影响开源 ...

  5. Sqoop是一款开源的工具,主要用于在HADOOP(Hive)与传统的数据库(mysql、oracle...)间进行数据的传递...

    http://niuzhenxin.iteye.com/blog/1706203 Sqoop是一款开源的工具,主要用于在HADOOP(Hive)与传统的数据库(mysql.postgresql...) ...

  6. 打开终端输入没反应_忘掉Iterm2,试试这款跨平台终端工具

    Mac用户最多的用的就是Iterm2了,windows之前因为丑陋的终端也开发了新的终端工具,很神奇的是,很长一段时间里,都没有一款真正好用的能跨平台的终端工具,直到我发现了hyper.无论Windo ...

  7. 掌握了这 10 款开源安全工具,从此系统稳定可靠乐无忧!

    随着互联网的不断发展,安全问题也越来越受到企业的重视.但安全问题往往需要大量资金的投入,例如聘请安全工程师,产品研发,测试等流程.这对于那些原本就资金紧缺的企业而言,是绝对无法接受的.因此,为了减少在 ...

  8. 2021年最受欢迎的10款开源DevOps工具

    DevOps不仅仅是一种工作方式的转变–它需要强大的工具来实现. 下面,我们列出了一些当今最受欢迎的DevOps工具的清单. 考虑到把大量的钱投入到花哨的SaaS解决方案中会很快吞噬掉云的预算,因为, ...

  9. Ubuntu安装开源终端工具Tabby

    Tabby (前身是 Terminus) 是一个可高度配置的终端模拟器和 SSH 或串口客户端,支持 Windows,macOS 和 Linux 集成 SSH,Telnet 客户端和连接管理器 集成串 ...

  10. 开源终端工具electerm,取代Xshell

    文章目录 概述 特点 下载/安装 开机自启动 升级 开发 测试 测试构建 类似强大的终端工具 参考资料 概述 基于electron/ssh2/node-pty/xterm/antd/ subx等lib ...

最新文章

  1. 通过httpmodule获取webapi返回的信息
  2. 加密解密、食谱、新冠序列,各种有趣的开源项目Github上都有
  3. ML-2 机器学习算法
  4. 如何通过插件携带第二个单据体到下游单据
  5. Git新建临时分支进行开发后合并至master
  6. s6-5 TCP 连接的建立
  7. mybatis mapper.xml入参
  8. ABAP to Json
  9. koa --- 使用Sequelize连接mysql
  10. linux开启mysql外链,Linux中开启MySQL远程访问功能
  11. 标题:印刷电路板的设计
  12. 与.NET以及微软产品相关的域名出售
  13. 阿里技术人才能力模型(深度解读系列之二)
  14. JS this指向总结
  15. nginx防止CDN大量回源
  16. HTML之如何在你的网页上放小姐姐图片
  17. 论微信小程序安装SSL证书的重要性
  18. 用DC-DC 升压降压以及产生负电压的原理及应用
  19. 【资源-文档】转载侵删 | STM32F10XXX参考手册(中文)
  20. dingding钉钉 python接口

热门文章

  1. 用python在树莓派上编程,你可以将项目扩展到令人难以置信的规模
  2. 家有千金之冰糖绿豆汤
  3. python投资_python计算投资
  4. 6个最常用的Word论文排版技巧
  5. 三阶魔方大中小魔公式_七步玩转三阶魔方还原公式图解 + 视频
  6. Unity商店下载的文件保存路径
  7. eBay运营模式有哪些
  8. 简单聊聊为什么说外包不好?
  9. 自走棋手游服务器稳定,2020最火的自走棋手游
  10. EXCEL之绝对引用、相对引用和混合引用