IP地址無所遁形!試試這個3k星熱門開源查詢神器!
在日常開發中,我們經常需要查詢IP地址的位置信息,比如:
- 網站統計:統計用戶的來源地,了解訪問者分布情況;
- 安全防護:根據IP地址判斷用戶是否來自風險地區,加強安全防護措施;
- 物聯網應用:根據IP地址定位設備,追蹤設備位置等。
然而,網上提供的類似查詢服務大多要么需要付費,要么功能受限,要么使用起來較為復雜。
今天,我想和大家分享一個超級簡單的開源IP地址位置查詢項目 - MyIP[1]。
一、簡介
MyIP是一個簡潔而實用的開源IP信息查看器,提供了多種功能,包括IP地址查詢、網絡連通性檢查、WebRTC連接檢測、DNS泄露檢查、網速測試、MTR測試等等。
使用MyIP,我們可以輕松地查看自己的公網IP地址,并且可以方便地進行網絡診斷或監控。
這個項目的獨特之處在于,據作者稱,其中70%的代碼是通過ChatGPT自動生成的。這真是令人驚嘆!
目前Github上面收獲了3.3k star。
二、部署方式
該項目提供了3中部署方式。
1.在 Node 環境部署
確保你系統里已經有Node.js環境。
克隆代碼到本地:
git clone https://github.com/jason5ng32/MyIP.git
安裝依賴:
npm install
運行啟動:
npm start
程序會運行在18966端口,自己可以根據實際情況修改的。
2.使用 Vercel
點擊項目頂部的部署到 Vercel 按鈕,即可完成部署。
3.使用docker部署
點擊項目頂部的部署到 Docker 按鈕,即可完成部署,又或者,直接輸入下面的命令:
docker run -d -p 18966:18966 --name myip --restart always jason5ng32/myip:latest
4.環境變量說明
你可以不添加環境變量直接使用,但是如果你想使用一些高級功能,可以添加下面的環境變量:
變量名 | 是否必須 | 默認值 | 說明 |
PORT | 否 | 18966 | 程序運行的端口 |
BING_MAP_API_KEY | 否 | "" | Bing 地圖的 API Key,用于展示 IP 所在地的地圖 |
ALLOWED_DOMAINS | 否 | "" | 允許訪問的域名,用逗號分隔,用于防止后端 API 被濫用 |
IPChecking_API_KEY | 否 | "" | IPCheck.ing 的 API Key,用于獲取精準的 IP 歸屬地信息 |
IPINFO_API_TOKEN | 否 | "" | IPInfo.io 的 API Token,用于通過 IPInfo.io 獲取 IP 歸屬地信息 |
KEYCDN_USER_AGENT | 否 | "" | KeyCDN 的 User Agent,用于通過 KeyCDN 獲取 IP 歸屬地信息 |
CLOUDFLARE_API | 否 | "" | Cloudflare 的 API Key,用于通過 Cloudflare 獲取 AS 系統的信息 |
VITE_RECAPTCHA_SITE_KEY | 否 | "" | Google reCAPTCHA 的 Site Key,用于在前端顯示 reCAPTCHA 驗證 |
RECAPTCHA_SECRET_KEY | 否 | "" | Google reCAPTCHA 的 Secret Key,用于在后端驗證 reCAPTCHA 驗證 |
三、使用體驗
項目主頁:
網絡連通性測試:
WebRTC測試:
DNS泄露測試:
分流測試:
網速測試:
四、寫到最后
MyIP是一個簡潔實用的開源IP信息查看器,它提供了豐富的功能,包括IP地址查詢、網絡連通性檢查、WebRTC連接檢測、DNS泄露檢查、網速測試、MTR測試等等。通過訪問項目地址,您可以了解更多關于MyIP的詳細信息和使用方法。
參考資料:
[1]MyIP: https://github.com/jason5ng32/MyIP