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

news/2024/12/4 20:11:14/

Nali

功能

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

安装

  • 从源码安装
  • 安装前 需要 预先安装 Go >=1.18 安装后可以从源码安装软件
go install github.com/zu1k/nali@latest
C:\Users\Administrator>go install github.com/zu1k/nali@latest
  • 接着他会安装各种依赖 直到 安装成功

使用说明

查询一个IP的地理信息
  • 基本使用
$ nali 1.2.3.4
1.2.3.4 [澳大利亚 APNIC Debogon-prefix网络]
C:\Users\Administrator>nali 1.2.3.4
1.2.3.4 [澳大利亚 APNIC Debogon-prefix网络] 
  • 或者使用管道
$ echo IP 6.6.6.6 | nali
IP 6.6.6.6 [美国 亚利桑那州华楚卡堡市美国国防部网络中心]
C:\Users\Administrator>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 [越南 越南邮电集团公司]
C:\Users\Administrator>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 [越南 越南邮电集团公司]
交互式查询
  • 使用 exitquit退出查询
$ 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
C:\Users\Administrator>nali
255.255.255.0
255.255.255.0 [纯真网络 2023年05月10日IP数据] 
192.168.1.1
192.168.1.1 [局域网 对方和您在同一内部网] 
www.baidu.com
www.baidu.com
112.241.85.156
112.241.85.156 [山东省聊城市 联通]
1.2.3.4       
1.2.3.4 [澳大利亚 APNIC Debogon-prefix网络]
1.0.0.1
1.0.0.1 [美国 APNIC&CloudFlare公共DNS服务器]
8.8.8.8
8.8.8.8 [美国加利福尼亚州圣克拉拉县山景市 谷歌公司DNS服务器]
quit
与 dig 命令配合使用
  • 需要你系统中已经安装好 dig 程序
  • Dig 工具全称为域名信息搜索器(Domain InformationGroper),能够显示详细的DNS查询过程,是一个非常强大的DNS故障诊断工具。一般Linux和Unix系统都已内置了该功能,但是在Windows环境中只有nslookup工具,如果想用到 dig 命令,就只能自己手动安装了。
$ dig nali.zu1k.com +short | nali
104.28.2.115 [美国 CloudFlare公司CDN节点]
104.28.3.115 [美国 CloudFlare公司CDN节点]
172.67.135.48 [美国 CloudFlare节点]
  • 输入相同的命令 由国内有墙 所以是没有反应的 将地址修改为百度的 域名地址
C:\Users\Administrator>dig www.baidu.com +short | nali
39.156.66.14 [北京市 移动] 
与 nslookup 命令配合使用
  • 需要你系统中已经安装好 nslookup 程序
$ nslookup nali.zu1k.com 8.8.8.8 | nali
Server:         8.8.8.8 [美国 加利福尼亚州圣克拉拉县山景市谷歌公司DNS服务器]
Address:        8.8.8.8 [美国 加利福尼亚州圣克拉拉县山景市谷歌公司DNS服务器]#53Non-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节点]
  • 本来我以为没有 nslookup 程序 但是没想到 windows 内置了这个程序
C:\Users\Administrator>nslookup nali.zu1k.com 8.8.8.8 | nali                                                                                                                
*** Request to dns.google timed-out
Server:  dns.google
Address:  8.8.8.8 [美国加利福尼亚州圣克拉拉县山景市 谷歌公司DNS服务器] DNS request timed out.timeout was 2 seconds.
与任意程序配合使用
  • 因为 nali 支持管道处理,所以可以和任意程序配合使用
bash abc.sh | nali
  • 这里需要 linux 而我现在 正在使用的是windows windows脚本并不能使用 bash shell 脚本 所以这里并没有运行感兴趣的剋以自行尝试
  • 值得一提的是 我在kali linux 中进行尝试使用的时候总是遇到问题 稍后将在我的小kali linux 物理机上 尝试
  • Nali 将在 IP后面插入IP地理信息,CDN域名后面插入CDN服务提供商信息
支持IPv6
  • 和 IPv4 用法完全相同
$ nslookup google.com | nali
Server:         127.0.0.53 [局域网 IP]
Address:        127.0.0.53 [局域网 IP]#53Non-authoritative answer:
Name:   google.com
Address: 216.58.211.110 [美国 Google全球边缘网络]
Name:   google.com
Address: 2a00:1450:400e:809::200e [荷兰Amsterdam Google Inc. 服务器网段]

C:\Users\Administrator>nslookup google.com | nali    
Non-authoritative answer:
Server:  UnKnown
Address:  fe80::1 [局域网 本地链路单播地址] Name:    google.com [Google Web 业务] 
Address:  142.251.42.238 [美国 加利福尼亚州圣克拉拉县山景市谷歌公司] 
查询 CDN 服务提供商
  • 因为 CDN 服务通常使用 CNAME 的域名解析方式,所以推荐与 nslookup 或者 dig 配合使用,在已经知道 CNAME 后可单独使用
$ nslookup www.gov.cn | nali
Server:         127.0.0.53 [局域网 IP]
Address:        127.0.0.53 [局域网 IP]#53Non-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)]
C:\Users\Administrator>nslookup www.gov.cn | nali    
Non-authoritative answer:
Server:  UnKnown
Address:  fe80::1 [局域网 本地链路单播地址] Name:    zgovweb.v.bsgslb.cn [白山云 CDN] 
Addresses:  2409:8720:b201:300::8:fe [中国      江苏省  泰州市  海陵区 中国移动政企专线] 2409:8720:b201:300::8:fb [中国        江苏省  泰州市  海陵区 中国移动政企专线] 2409:8728:6aff:f00e::1:6a [中国       浙江省  金华市  婺城区 中国移动政企专线] 2409:8720:b201:300::8:fc [中国        江苏省  泰州市  海陵区 中国移动政企专线] 2409:8720:b201:300::8:fd [中国        江苏省  泰州市  海陵区 中国移动政企专线] 111.32.160.88 [天津市 移动] 111.2.79.179 [浙江省金华市 移动] 111.32.160.87 [天津市 移动] 111.32.160.86 [天津市 移动] 
Aliases:  www.gov.cnwww.gov.cn.bsgslb.cn [白山云 CDN] 
用户交互
  • 程序第一次运行后,会在工作目录生成配置文件 config.yaml (默认~/.nali/config.yaml),配置文件定义了数据库信息,默认用户无需进行修改
  • 数据库格式默认如下:
- name: geoipname-alias:- geolite- geolite2format: mmdbfile: GeoLite2-City.mmdblanguages:- ALLtypes:- IPv4- IPv6
  • 但是这个是linux 的位置 经过多方查找 (多谢 everthing 这个 软件)
  • windows 的位置是在 C:\Users\Administrator\AppData\Local\nali\config.yaml
  • 但也不一定 每台机器 各不相同 也许 有个微小的设置就会把路径改变
  • 这里直接使用 cat命令 查看
C:\Users\Administrator>cat C:\Users\Administrator\AppData\Local\nali\config.yaml
databases:- name: qqwryname-alias:- chunzhenformat: qqwryfile: qqwry.datlanguages:- zh-CNtypes:- IPv4download-urls:- https://gh-release.zu1k.com/HMBSbige/qqwry/qqwry.dat- name: zxipv6wryname-alias:- zxipv6- zxformat: zxipv6wryfile: zxipv6wry.dblanguages:- zh-CNtypes:- IPv6- name: geoipname-alias:- geoip2- geolite- geolite2format: mmdbfile: GeoLite2-City.mmdblanguages:- ALLtypes:- IPv4- IPv6- name: dbipname-alias:- db-ipformat: mmdbfile: dbip.mmdblanguages:- ALLtypes:- IPv4- IPv6- name: ipipformat: ipipfile: ipipfree.ipdblanguages:- zh-CNtypes:- IPv4- IPv6- name: ip2regionname-alias:- i2rformat: ip2regionfile: ip2region.xdblanguages:- zh-CNtypes:- IPv4download-urls:- https://cdn.jsdelivr.net/gh/lionsoul2014/ip2region/data/ip2region.xdb- https://raw.githubusercontent.com/lionsoul2014/ip2region/master/data/ip2region.xdb- name: ip2locationformat: ip2locationfile: IP2LOCATION-LITE-DB3.IPV6.BINlanguages:- entypes:- IPv4- IPv6- name: cdnformat: cdn-ymlfile: cdn.ymllanguages:- zh-CNtypes:- CDNdownload-urls:- https://cdn.jsdelivr.net/gh/4ft35t/cdn/src/cdn.yml- https://raw.githubusercontent.com/4ft35t/cdn/master/src/cdn.yml- https://raw.githubusercontent.com/SukkaLab/cdn/master/src/cdn.yml
selected:cdn: cdnipv4: qqwryipv6: zxipv6wrylang: zh-CN
  • 其中,languages 和 types 表示该数据库支持的语言和查询类型。如果你需要增加数据库,需小心修改配置文件,如果有任何问题,欢迎提 issue 询问。
查看帮助
$ nali --help
Usage:nali [flags]nali [command]Available Commands:help        Help about any commandupdate      update qqwry, zxipv6wry, ip2region ip database and cdnFlags:-h, --help     help for nali-t, --toggle   Help message for toggleUse "nali [command] --help" for more information about a command.
C:\Users\Administrator>nali --help
An offline tool for querying IP geographic information.Find document on: https://github.com/zu1k/nali#1 Query a simple IP address$ nali 1.2.3.4or use pipe$ echo IP 6.6.6.6 | nali#2 Query multiple IP addresses$ nali 1.2.3.4 4.3.2.1 123.23.3.0#3 Interactive query$ nali123.23.23.23123.23.23.23 [越南 越南邮电集团公司]quit#4 Use with dig$ dig nali.zu1k.com +short | nali#5 Use with nslookup$ nslookup nali.zu1k.com 8.8.8.8 | nali#6 Use with any other programbash abc.sh | nali#7 IPV6 supportUsage:nali [flags]nali [command]Available Commands:completion  Generate the autocompletion script for the specified shellhelp        Help about any commandinfo        get the necessary information of naliupdate      update qqwry, zxipv6wry, ip2region ip database and cdnFlags:--gbk       Use GBK decoder-h, --help      help for nali-v, --version   version for naliUse "nali [command] --help" for more information about a command.
更新数据库
  • 更新所有可以自动更新的数据库
$ nali update
2020/07/17 12:53:46 正在下载最新纯真 IP 库...
2020/07/17 12:54:05 已将最新的纯真 IP 库保存到本地 /root/.nali/qqwry.dat
C:\Users\Administrator>nali update
2023/05/15 16:19:29 正在下载最新 qqwry 数据库...
2023/05/15 16:20:29 qqwry 数据库下载失败,请手动下载解压后保存到本地: qqwry.dat 
2023/05/15 16:20:29 下载链接: [https://gh-release.zu1k.com/HMBSbige/qqwry/qqwry.dat]
2023/05/15 16:20:29 error: context deadline exceeded (Client.Timeout or context cancellation while reading body)
2023/05/15 16:20:29 正在下载最新 ZX IPv6数据库...
2023/05/15 16:20:30 已将最新的 ZX IPv6数据库 保存到本地: [zxipv6wry.db]
2023/05/15 16:20:30 正在下载最新 ip2region 数据库...
2023/05/15 16:20:36 ip2region 数据库下载成功: ip2region.xdb
2023/05/15 16:20:36 正在下载最新 cdn 数据库...
2023/05/15 16:20:37 cdn 数据库下载成功: cdn.yml
  • 还是因为有墙的原因 有一些数据库就下载不下来
  • 或者指定数据库
$ nali update --db qqwry,cdn
2020/07/17 12:53:46 正在下载最新纯真 IP 库...
2020/07/17 12:54:05 已将最新的纯真 IP 库保存到本地 /root/.nali/qqwry.dat

详细介绍链接

https://mp.weixin.qq.com/s/TIqC6zWnffrHmpJuyZpsuA


http://www.ppmy.cn/news/70367.html

相关文章

Python实现哈里斯鹰优化算法(HHO)优化XGBoost分类模型(XGBClassifier算法)项目实战

说明:这是一个机器学习实战项目(附带数据代码文档视频讲解),如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 2019年Heidari等人提出哈里斯鹰优化算法(Harris Hawk Optimization, HHO),该算法有较强的全…

Day 3 软件测试核心知识——(基本流程和测试用例及测试用例设计方法)

Day 3 软件测试核心知识——(基本流程和测试用例及测试用例设计方法) 文章目录 Day 3 软件测试核心知识——(基本流程和测试用例及测试用例设计方法)一、软件测试的基本流程二、什么是测试用例?1. 测试用例定义2. 编写测试用例的原因**2.1 理清思路,避免遗漏****2.2 跟踪…

【腾讯云 FinOps Crane 集训营】Crane平台介绍与实践

🍁 作者:知识浅谈,CSDN博客专家,阿里云签约博主,InfoQ签约博主,华为云云享专家,51CTO明日之星 📌 擅长领域:全栈工程师、爬虫、ACM算法 🤞Crane平台介绍与实践…

Windows平台Qt超详细安装——5.9.6版本以及5.9都差不多,(仔细看,一定学会,学不会怪我)

目录 一、Qt 开发环境(Windows) 二、设置 QtCreator 编译路径 三、设置 Qt 源码路径 四、QtCreator 介绍 一、Qt 开发环境(Windows) ①官网下载地址:(对应版本,可以在这个网址下面自己找&a…

【LED子系统】五、核心层详解(二)

个人主页:董哥聊技术 我是董哥,高级嵌入式软件开发工程师,从事嵌入式Linux驱动开发和系统开发,曾就职于世界500强公司! 创作理念:专注分享高质量嵌入式文章,让大家读有所得! 文章目录…

鸿蒙Hi3861学习十五-Huawei LiteOS-M(Socket客户端)

一、简介 在网络编程的时候,不管是客户端还是服务端,都离不开Socket。那什么是Socket,这里做个简单介绍。详细的内容,可以参考这篇文章:WIFI学习一(socket介绍)_wifi socket_t_guest的博客-CSDN…

JSON+AJAX+ThreadLocal+文件上传下载

文章目录 JSON和AJAX文档介绍1. JSON介绍1.1 JSON快速入门1.2 JSON和字符串转换1.2.1 JSON转字符串1.2.2 字符串转JSON1.2.3 JSON和字符串转换细节 1.3 JSON在java中使用1.3.1 Java对象和JSON字符串转换1.3.2 List对象和JSON字符串转换1.3.3 Map对象和JSON字符串转换 2. Ajax介…

leetcode-二叉树专题

1. 判断相同 100. 相同的树 class Solution { public:bool isSameTree(TreeNode* p, TreeNode* q) {if(!p&&!q) return true;if(!p||!q) return false;if(p->val!q->val) return false;return isSameTree(p->left,q->left)&&isSameTree(p->ri…