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

2023-05-16

作者: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服务器]#53

Non-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[局域网 对方和您在同一内部网]#53

Non-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」就能获取啦。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

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

  • Intel CPU(i3、i5、i7、i9)型号、性能详细解读

    一 Intel CPU的性能比较 xff1a 它们分为高中低端 xff0c 最低端的G系列 xff0c 然后是低端i3系列 xff0c 中端i5系列 xff0c 高端i7系列和至尊i9系列 Intel CPU 末尾字母含义 xff08 M
  • 字符串搜索函数

    一 字符串中找字符 char strchr const char s int c 表示从左边 开始找这个字符第一次出现的位置 char strrchar const char s int c 表示 从右边 开始找这个字符第一次出现的位置 注
  • 4. Service

    4 Service k8s 中的Pod是朝生夕死的 xff0c 并且是不会重生的 xff0c 尤其是在ReplicaSets中动态创建或销毁Pod 然而每个Pod可以获取自己的IP地址 xff0c 即使这些IP地址是不稳定的 xff08 重
  • STM32 Free RTOS实战

    FreeRTOS是一个开源的实时操作系统 使用的平台 xff1a 秉火STM32 Cortex M3内核开发板 xff0c Free RTOS v8 2 3 多任务流水灯 span class token builtin class nam
  • 参考 | 升级 Win11 移动热点开不了或者开了连不上

    讲道理 就很离谱 一开始我升级了 Win11 后 突然发现 移动热点 开不了了 就是那种 开了之后 手机 ipad 能检测到电脑移动热点的信号 但是会出现这两种情况 死活连不上连上了 在移动端显示 无互联网连接 解决办法 打开 移动热点 打
  • 在 Linux 上安装和使用恶意软件检测工具 LMD

    在 Linux 上安装和使用恶意软件检测工具 LMD xff0c 是个相当简单的过程 xff0c 1 下载资源 wget http www rfxn com downloads maldetect current tar gz 2 解压缩资
  • Docker 使用Dockerfile创建镜像

    基本结构 Dockerfle 由 一行行命令语句组成 xff0c 并且支持以 xff03 开头的注释行 一般而言 xff0c Dockerfle 主体内容分为四部分 xff1a 基础镜像信息 维护者信息 镜像操作指令和容器启动时执行指令 e
  • 为啥我的APP功能引导设计这么low?如何做好功能引导设计?

    功能引导设计历史版本 Level1 APP第一次打开的浏览页 展示主要功能及简单使用方式 xff1b Level2 引导流程页 使用 xff1f 方式在界面右上角 xff0c 点击后展示使用流程详情 xff1b Level3 蒙层 可以有上
  • 【Xshell无法连接虚拟机问题】xshell无法连接虚拟机Ubuntu系统问题

    问题描述 xff1a 电脑新安装虚拟机 xff0c 并且安装Ubuntu系统 xff0c 通过Xshell工具无法连问题 原因是新linux系统未安装 ssh 服务导致 xff0c Xshell连接是依赖 ssh 服务实现的 下面让我们解决
  • [linux下]理解Semaphore及其用法详解

    2009 05 12 13 13 Mutex 是一把钥匙 xff0c 一个人拿了就可进入一个房间 xff0c 出来的时候把钥匙交给队列的第一个 一般的用法是用于串行化对critical section代码的访问 xff0c 保证这段代码不会
  • JavaScript 数据结构——栈

    概念 栈是一种线性结构 xff0c 最大的特点就是先进后出 xff0c 后进先出 入栈push xff1a 出栈pop xff1a 实现 JavaScript中可以用数组表示栈 xff1a span class token keyword
  • Python matplotlib 以pdf形式保存图片

    import matplotlib pyplot as plt from matplotlib backends backend pdf import PdfPages short version plt plot range 10 plt
  • 基于数据报(UDP)编程的接口总结

    文章目录 Udp编程接口socket 创建套接字bind 将套接字绑定到指定的网络地址本机字节序和网络字节序 recvfrom 接收一个数据报并保存源地址 从数据报套接字接收数据调用格式函数功能 sendto 按照指定目的地向数据报套接字发
  • Android-自定义View集合

    学习安卓几个月了 xff0c 也有点自己的体会 xff0c 然而我发现自己真正喜欢的是数据方面的东西 xff0c 当然android自定义view也很好玩 xff0c 很体验一些技巧性的东西 也不想自己以前学习过程总结的东西就此淹没 xff
  • Nginx同一端口部署多个vue项目

    场景 大家在部署项目的时候会遇到 xff0c 只申请了一个公网端口 xff0c 但是需要将多个前端vue项目部署到同一域名同一端口下 xff0c 下面记录一下vue打包时如何配置以及nginx如何配置 我们这个项目有多个vue工程 xff0
  • 树莓派3B安装Ubuntu Mate18.04版

    树莓派3B为什么要装Ubuntu Mate版本 xff0c 因为轻量化 xff0c 就这么简单 1 相关器材 树莓派 xff1a Raspberry PI 3 Model B 树莓派3 microSD卡 闪迪16GB存储卡 HDMI线 读卡
  • 谷歌浏览器提示您的连接不是私密连接的解决方法

    谷歌浏览器是一款非常好用的网络浏览器 xff0c 但是最近有用户反应 xff0c 使用谷歌浏览器时出现提示 xff1a 您的连接不是私密连接 xff0c 这是怎么回事呢 xff1f 接下来就为大家分享使用谷歌浏览器过程中提示您的连接不是私密
  • ElasticSearch7索引管理--别名(基于kibana)

    ElasticSearch可以对一个或者多个索引指定别名 xff0c 通过别名可以查询到一个或者多个索引的内容 在内部ElasticSearch会自动把别名映射到相应的索引上 可以对别名编写过滤器或者路由 xff0c 在系统中别名不能重复
  • matlab粒子群优化算法路径规划代码解读

    前言 粒子群算法是一种群智能优化算法 xff0c 该算法具有原理简单 易实现 控制参数较少等优点 xff0c 下面根据Yarpiz公司的matlab代码就其在路径规划中的应用进行简单的介绍 xff0c 以供读者更好的理解粒子群优化算法的实际
  • (转载)OpenWrt下把SD卡挂载到 /overlay ,扩大软件空间

    在wall内外搜索无数文章 xff0c 唯有这篇文章能够看得懂并奏效 xff0c 感谢作者 原文地址 xff1a https blog samnya cn mount sd card to overlay on openwrt 作者 xff

随机推荐