在日常网络调试、代理检查或服务器维护中,我们经常需要查看当前的 IP 状态。MyIP 是一款开源、轻量且美观的工具,它将原本零散的 IP 检测、DNS 泄露测试、WebRTC 检查等功能集成在了一个丝滑的单页应用中。
![图片[1]-开源MyIP 可能是最好用的全能 IP 工具箱-奇蛙小屋](https://www.qiqiwa.com/wp-content/uploads/2026/02/5cb3f8bf4b20260219162535.png)
✨ 核心特性:它为什么“更好”?
1. 全方位的 IP 探测
- 多来源检测:通过多个国内外的 IPv4 和 IPv6 接口同步探测,显示代理前后的真实 IP。
- 深度地理信息:显示 ASN、运营商、国家、城市以及精确的地理位置地图。
2. 网络连接与安全诊断
- DNS 泄露测试:检查在使用 VPN 或代理时,DNS 请求是否发生泄露。
- WebRTC 检测:识别 WebRTC 连接中可能暴露的真实 IP 地址。
- 可用性检查:一键测试 Google、GitHub、YouTube、ChatGPT 等网站的访问性,帮助判断全局代理是否生效。
3. 硬核工具集成
- 测速与延迟:集成 Speed Test 测速、全球 Ping 测试以及 MTR 链路追踪。
- DNS 解析查询:支持多来源解析,实时查看域名在全球各地的解析结果。
- WHOIS 查询:快速查询域名注册信息。
4. 极致的 UI/UX 体验
- 暗黑模式:支持跟随系统或手动切换日夜间模式。
- PWA 支持:可作为独立应用安装在手机桌面或 Chrome 浏览器中。
- 快捷键操作:支持全功能快捷键(按
?查看列表),效率极高。
🛠️ 安装部署教程
MyIP 提供了多种灵活的部署方式,建议根据你的服务器环境选择。
方案一:Docker 部署(推荐,极速)
这是最简单的方式,只需一行命令即可在服务器上跑起来。
docker run -d \
--name myip \
-p 18966:18966 \
--restart always \
jason5ng32/myip:latest
- 访问地址:
http://服务器IP:18966 - 防火墙提醒:请确保在云服务器安全组中放行 18966 端口。
环境变量
你可以不添加环境变量直接使用,但是如果你想使用一些高级功能,可以添加下面的环境变量:
| 变量名 | 是否必须 | 默认值 | 说明 |
|---|---|---|---|
BACKEND_PORT | 否 | "11966" | 程序后端部分的运行端口 |
FRONTEND_PORT | 否 | "18966" | 程序前端部分的运行端口 |
SECURITY_RATE_LIMIT | 否 | "0" | 控制每 60 分钟一个 IP 可以对后端服务器请求的次数(设置为 0 则为不限制) |
SECURITY_DELAY_AFTER | 否 | "0" | 控制每 20 分钟一个 IP 的前 X 次请求不受速度限制,超过 X 次后会逐次增加延迟 |
SECURITY_BLACKLIST_LOG_FILE_PATH | 否 | "logs/blacklist-ip.log" | 路径设置。记录由 SECURITY_RATE_LIMIT 开启后,触发限制的 IP 列表 |
GOOGLE_MAP_API_KEY= | 否 | "" | Google 地图的 API Key,用于展示 IP 所在地的地图 |
ALLOWED_DOMAINS | 否 | "" | 允许访问的域名,用逗号分隔,用于防止后端 API 被滥用 |
IPCHECKING_API_KEY | 否 | "" | IPCheck.ing 的 API Key,用于获取精准的 IP 归属地信息 |
IPINFO_API_TOKEN | 否 | "" | IPInfo.io 的 API Token,用于通过 IPInfo.io 获取 IP 归属地信息 |
IPAPIIS_API_KEY | 否 | "" | IPAPI.is 的 API Key,用于通过 IPAPI.is 获取 IP 归属地信息 |
IP2LOCATION_API_KEY | 否 | "" | IP2Location.io 的 API Key,用于通过 IP2Location.io 获取 IP 归属地信息 |
CLOUDFLARE_API | 否 | "" | Cloudflare 的 API Key,用于通过 Cloudflare 获取 AS 系统的信息 |
MAC_LOOKUP_API_KEY | 否 | "" | MAC 查询的 API Key,用于通过 MAC Lookup 获取 MAC 地址的归属信息 |
IPCHECKING_API_ENDPOINT | 是 | "" | IPCheck.ing 的 API 端点 URL |
VITE_GOOGLE_ANALYTICS_ID | 是 | "" | Google Analytics 的 ID,用于统计访问量 |
VITE_CURL_IPV4_DOMAIN | 否 | "" | 为用户提供 CURL API 的 IPv4 域名 |
VITE_CURL_IPV6_DOMAIN | 否 | "" | 为用户提供 CURL API 的 IPv6 域名 |
VITE_CURL_IPV64_DOMAIN | 否 | "" | 为用户提供 CURL API 的双网络栈域名 |
需要注意的是,如果 CURL 系列的环境变量任意一个缺失,都不会启用 CURL API。
方案二:Node.js 手动部署
如果你希望进行二次开发或直接在环境中运行:
- 克隆代码:
git clone https://github.com/jason5ng32/MyIP.git cd MyIP - 安装依赖与构建:
npm install npm run build - 启动服务:
npm start程序默认运行在 18966 端口。
Node 环境里使用环境变量
创建环境变量:
cp .env.example .env
修改 .env 里的内容,比如:
BACKEND_PORT=11966
FRONTEND_PORT=18966
GOOGLE_MAP_API_KEY="YOUR_KEY_HERE"
ALLOWED_DOMAINS="example.com"
IPCHECKING_API="YOUR_KEY_HERE"
然后重新启动后端服务。
在 Docker 里使用环境变量
你可以在运行 Docker 的时候,添加环境变量,比如:
docker run -d -p 18966:18966 \
-e GOOGLE_MAP_API_KEY="YOUR_KEY_HERE" \
-e ALLOWED_DOMAINS="example.com" \
-e IPCHECKING_API="YOUR_TOKEN_HERE" \
--name myip \
jason5ng32/myip:latest
方案三:Vercel / 静态托管
由于项目基于 Next.js 开发,你也可以直接在 GitHub 上 Fork 该项目,然后点击 Deploy to Vercel,实现零成本白嫖托管。
⚙️ 进阶配置(环境变量)
如果你需要启用高级功能,可以在部署时添加以下环境变量:
BACKEND_PORT: 后端运行端口(默认 11966)。FRONTEND_PORT: 前端运行端口(默认 18966)。GOOGLE_MAP_API_KEY: 若要显示 IP 所在的 Google 地图,需填入此 Key。SECURITY_RATE_LIMIT: 设置每 60 分钟请求限制,防止被恶意刷接口。
⚖️ 优缺点评价
- ✅ 优点:
- 颜值极高:Material Design 风格,UI 极其现代化。
- 功能全面:一个网页涵盖了站长 90% 的网络排查需求。
- 轻量极速:响应极快,几乎没有加载感。
- ⚠️ 缺点:
- 依赖外部接口:部分 IP 地理位置数据依赖第三方 API,若 API 挂掉可能导致部分信息显示不全。
🎯 总结:谁最需要它?
- 跨境从业者:随时检查自己的代理是否“干净”,是否存在 DNS 泄露。
- 站长/运维:快速测试全球访问速度及域名解析状态。
- 隐私极客:监测浏览器环境的安全性。
| 项目地址 | Demo |
|---|---|
| MyIP: The best IP Toolbox | 在这里体验:https://ipcheck.ing |
© 版权声明
THE END







暂无评论内容