本文最后更新于 2024-05-17,

若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益, 请联系我 删除。

本站只有Telegram群组为唯一交流群组, 点击加入

文章内容有误?申请成为本站文章修订者或作者? 向站长提出申请

1715484006997.webp

👀 主要特点

  • 🖥️查看您的 IP:检测并显示您的本地 IP,来自多个 IPv4 和 IPv6 提供商。
  • 🕵️ IP 信息:显示所有 IP 地址的详细信息,包括国家、地区、ASN、地理位置等。
  • 🚦可用性检查:测试各种网站的可访问性,例如 Google、GitHub、YouTube、ChatGPT 等。
  • 🚥 WebRTC 检测:识别 WebRTC 连接期间使用的 IP 地址。
  • 🛑 DNS 泄漏测试:显示 DNS 端点数据,以评估使用 VPN 或代理时 DNS 泄漏的风险。
  • 🚀速度测试:使用边缘网络测试您的网络速度。
  • 🚏代理规则测试:测试代理软件的规则设置,确保其正确性。
  • ⏱️全球延迟测试:对位于全球不同地区的服务器执行延迟测试。
  • 📡 MTR 测试:对位于全球不同地区的服务器进行 MTR 测试。
  • 🔦 DNS解析器:对多个来源的域名进行DNS解析,并获取实时解析结果,可用于污染判断。
  • 🚧审查检查:检查网站是否在某些国家/地区被屏蔽。
  • 📓 Whois 搜索:对域名或 IP 地址进行 whois 信息搜索
  • 🌗深色模式:根据系统设置自动在深色和日光模式之间切换,并可选择手动切换。
  • 📱极简模式:一种针对移动设备优化的模式,可缩短页面长度以快速访问重要信息。
  • 🔍搜索IP信息:提供查询任意IP地址信息的工具。
  • 📲支持 PWA:可以添加为手机上的桌面应用程序以及计算机上的 Chrome 应用程序。
  • ⌨️键盘快捷键:支持所有功能的键盘快捷键,按下 ?可查看快捷键列表。
  • 🌍 根据可用性测试结果,表明目前全球互联网接入是否可行。
  • 🇺🇸🇨🇳🇫🇷英语、中文和法语支持。

项目地址:https://github.com/jason5ng32/MyIP

📕 如何使用

有3种部署方式:

在 Node 环境中部署

确保您已安装 Node.js。

克隆代码:

git clone https://github.com/jason5ng32/MyIP.git

安装:

npm install

Build:

npm run build

Run:

npm start

该程序将在端口 18966 上运行。

使用 Vercel

单击顶部的“部署到 Vercel”按钮完成部署。请注意,某些功能在 Vercel 上不可用(有关详细信息,请参阅环境变量部分)。

使用 Docker

安装Docker🐳

使用以下 shell

docker run -d -p 18966:18966 --name myip --restart always jason5ng32/myip:latest

我们现在可以输入 http://ip:18966/访问了。

📚环境变量

您可以在不添加任何环境变量的情况下使用该程序,但如果您想使用一些高级功能,可以添加以下环境变量:

变量名 必需的 默认值 描述
BACKEND_PORT NO "11966" 程序后端部分运行端口
FRONTEND_PORT NO "18966" 程序前端部分的运行端口
SECURITY_RATE_LIMIT NO "0" 控制IP每60分钟可以向后端服务器发出的请求数量(设置为0表示无限制)
SECURITY_DELAY_AFTER NO "0" 控制每20分钟来自某个IP的前X个不受速度限制的请求,在X个请求之后,延迟会增加
SECURITY_BLACKLIST_LOG_FILE_PATH NO "logs/blacklist-ip.log" 路径设置。记录启用SECURITY_RATE_LIMIT后触发限制的IP列表
BING_MAP_API_KEY NO "" Bing 地图的 API 密钥,用于在地图上显示 IP 的位置
ALLOWED_DOMAINS NO "" 允许访问的域,以逗号分隔,用于防止滥用后端API
IPCHECKING_API_KEY NO "" IPCheck.ing的API Key,用于获取准确的IP地理位置信息
IPINFO_API_TOKEN NO "" IPInfo.io的API Token,用于通过IPInfo.io获取IP地理位置信息
KEYCDN_USER_AGENT NO "" 使用KeyCDN时的域名必须包含https前缀。用于通过KeyCDN获取IP地址信息
CLOUDFLARE_API NO "" Cloudflare的API Key,用于通过Cloudflare获取AS系统信息
VITE_RECAPTCHA_SITE_KEY NO "" Google reCAPTCHA 的站点密钥,用于在前端显示 reCAPTCHA 验证
RECAPTCHA_SECRET_KEY NO "" Google reCAPTCHA的Secret Key,用于验证后端的reCAPTCHA验证

提示

以 开头的环境变量 SECURITY_仅在使用 npm 或 Docker 部署时有效。

在节点环境中使用环境变量

创建环境变量:

cp .env.example .env

修改 .env,例如添加以下内容:

BACKEND_PORT=11966
FRONTEND_PORT=18966
BING_MAP_API_KEY="YOUR_KEY_HERE"
ALLOWED_DOMAINS="example.com"
IPCHECKING_API="YOUR_KEY_HERE"

然后重启后端服务。

在 Vercel 中使用环境变量

请参考中的内容 .env.example,将其添加到Vercel中的环境变量中。

在 Docker 中使用环境变量

您可以在运行Docker时添加环境变量,例如:

docker run -d -p 18966:18966 \
  -e BING_MAP_API_KEY="YOUR_KEY_HERE" \
  -e ALLOWED_DOMAINS="example.com" \
  -e IPCHECKING_API="YOUR_TOKEN_HERE" \
  --name myip \
  jason5ng32/myip:latest

👩🏻‍💻 高级用法

如果您使用代理进行 Internet 访问,请考虑将此规则添加到您的代理配置中(根据您的客户端进行修改)。此设置可让您检查真实 IP 和使用代理时的 IP:

# IP Testing
IP-CIDR,1.0.0.1/32,DIRECT,no-resolve
IP-CIDR6,2606:4700:4700::1111/128,DIRECT,no-resolve
DOMAIN-SUFFIX,ipify.org,Proxy
# Rule Testing
DOMAIN,ptest-1.ipcheck.ing,Proxy1
DOMAIN,ptest-2.ipcheck.ing,Proxy2
DOMAIN,ptest-3.ipcheck.ing,Proxy3
DOMAIN,ptest-4.ipcheck.ing,Proxy4
DOMAIN,ptest-5.ipcheck.ing,Proxy5
DOMAIN,ptest-6.ipcheck.ing,Proxy6
DOMAIN,ptest-7.ipcheck.ing,Proxy7
DOMAIN,ptest-8.ipcheck.ing,Proxy8

效果演示

1715484025433.webp

测试出口,DNS解析,网络连通性

1715484278895.webp
1715484287092.webp

反向代理

参考教程:安装及使用

⚠️Nginx Proxy Manager(以下简称NPM)会用到80、443端口,所以本机不能占用(比如原来就有Nginx)

互联网使用请确保完成了域名解析