太強了!這款開源終端工具可查詢 IP 資訊 ...
作者:JackTian
來源:公眾號「傑哥的IT之旅」
ID:Jake_Internet
轉載請聯絡授權(微信ID:Hc220088)
大家好,我是傑哥。
在 Linux 環境下,有dig
、nslookup
、traceroute
等多種非常實用的網路除錯工具。
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 地址,直到查詢完畢,使用`exit`、`quit`或`Ctrl+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
```
nali
與dig
命令結合使用
```
dig github.com +short | nali
20.205.243.166[美國 Computer] ```
nali
與nslookup
命令結合使用
```
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_IP4
或NALI_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 ```
推薦閱讀
以上就是今天所要分享的全部內容了。
如果你覺得這篇文章對你有點用的話,為本文點個贊、留個言或者轉發一下,讓更多的朋友看到,因為這將是我持續輸出更多優質文章的最強動力!
- 又一個基於 GPT-4 編寫、解釋程式碼的工具,誕生了!
- 太強了!這款開源終端工具可查詢 IP 資訊 ...
- 視覺化大屏可真是太 beautiful 了!!!
- 再見 Xshell!這個開源的終端工具更酷炫!
- 10 款你不知道的 Linux 環境下的替代工具!
- Python爬蟲實戰 | 利用多執行緒爬取 LOL 高清桌布
- HTTPS 協議到底比 HTTP 協議多些什麼?
- 利用 Python 實現多工程序
- 利用 Python 分析了一波月餅,我得出的結論是?
- Docker 入門,萬字詳解!
- 超硬核!11 個非常實用的 Python 和 Shell 拿來就用指令碼例項!
- 用 Python 自動給抖音漂亮小姐姐視訊點贊!
- 挺帶勁,這款國人開源的監控系統真強大~
- 用Python頭像秒變成表情包
- Docker 常用命令,這些都要會!
- 5 分鐘學懂 SSH 隧道技術
- 【建議收藏】神器 Nginx 的學習手冊
- IT運維面試問題總結-LVS、Keepalived、HAProxy、Kubernetes、OpenShift等