dmcheck

7个月前发布 235 00

dmcheck 可以输入一个关键词,同时查询多个后缀的域名是否可注册。结果通过实时 WHOIS 和 RDAP 协议获取,逐条返回,不用等全部查完。

所在地:
美国
收录时间:
2026-04-10
其他站点:

dmcheck (dmcheck.app) 是一款开源、免费的域名可用性查询工具。它基于 WHOIS 和 RDAP 协议,能够实时检测关键词在多个顶级域(TLD)下的注册状态。

dmcheck

与传统域名查询工具不同,dmcheck 采用 SSE (Server-Sent Events) 技术,实现结果的流式返回——你无需等待所有查询完成,结果会随着查询进度逐条显示,带来极致的即时反馈体验。

核心特性

1. 实时流式响应

  • 所见即所得:利用 SSE 技术,查询结果一旦生成即刻推送到前端,告别漫长的加载等待。
  • 并发高效:后端并行发起多个 WHOIS/RDAP 请求,最大化利用网络带宽。

2. 广泛的顶级域支持

  • 预配置 83+ TLD:内置主流顶级域(如 .com, .net, .org, .io, .ai 等)的专用 WHOIS 服务器映射。
  • RDAP 智能回退:通过 IANA 引导机制,自动回退到 RDAP 协议,支持全球 1000+ 个顶级域的查询。

3. 深度域名详情

不仅告诉你“是否可用”,还提供丰富的元数据:

  • 基础信息:注册日期、过期日期、注册商、DNS 服务器。
  • 状态码解析:清晰展示域名状态(如 clientTransferProhibited)。
  • 视觉预览:自动获取网站截图和 favicon 图标(针对已注册域名)。
  • 保留域名检测:智能区分“已注册”、“可注册”和“注册局保留(Premium/Reserved)”域名。

4. 高度可定制

  • 自定义 TLD 列表:用户可在浏览器端自由编辑关注的顶级域列表,保存至本地存储。
  • 多语言支持:原生支持英语、中文、日语、韩语、西班牙语。

5. 轻量级架构

  • 单二进制文件:基于 Go 语言开发,所有静态资源通过 go:embed 嵌入,部署极其简单。
  • 弹性缓存:支持 Redis 缓存以提升性能;若无 Redis,可优雅降级为无缓存模式。
  • 安全限流:内置基于 IP 的令牌桶限流机制,防止 API 滥用。

快速开始

本地运行

需要安装 Go 1.21+。

# 克隆仓库
git clone https://github.com/dmcheck/dmcheck.git
cd dmcheck

# 直接运行
go run .

服务将启动在 http://localhost:3300。

构建生产版本

CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-s -w" -o dmcheck .
./dmcheck

配置与环境变量

dmcheck 通过环境变量进行配置,灵活适配不同部署场景。

变量默认值描述
PORT3300HTTP 服务监听端口
REDIS_ADDRlocalhost:6379Redis 地址。留空则禁用缓存
RATE_LIMIT2每个 IP 每秒允许的最大请求数
RATE_BURST5限流器允许的突发请求数量
CACHE_TTL5m“可注册”状态的缓存有效期(短 TTL 确保及时性);“已注册/保留”状态缓存 24 小时

配置文件:

  • config/whois-servers.json: TLD 到 WHOIS 服务器的映射表。
  • config/default-tlds.json: 前端默认显示的 TLD 列表。

生产部署指南 (VPS)

1. 准备环境

  • Ubuntu 20.04+
  • Nginx
  • (可选) Redis

2. 部署应用

# 创建目录
sudo mkdir -p /opt/dmcheck
sudo chown deployer:deployer /opt/dmcheck

# 上传二进制文件 (从本地构建后 scp)
scp dmcheck your-user@your-vps:/opt/dmcheck/

# 设置 systemd 服务
sudo cp deploy/dmcheck.service /etc/systemd/system/dmcheck.service
sudo systemctl daemon-reload
sudo systemctl enable dmcheck
sudo systemctl start dmcheck

3. 配置 Nginx 与 HTTPS

# 配置 Nginx
sudo cp deploy/dmcheck.nginx /etc/nginx/sites-available/dmcheck
sudo ln -s /etc/nginx/sites-available/dmcheck /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

# 申请 SSL 证书 (Certbot)
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d your-domain.com

4. 自动化部署 (GitHub Actions)

项目内置了 GitHub Actions 工作流,推送到 publish 分支即可自动构建并部署到 VPS。需在仓库 Secrets 中配置:

  • VPS_HOST, VPS_PORT, VPS_USER, VPS_SSH_KEY

为什么选择 dmcheck?

  • 对于域名投资者:流式查询让你在最短时间内扫描大量 TLD,抓住注册良机。
  • 对于开发者:单二进制文件部署,零依赖,维护成本极低。
  • 对于普通用户:界面简洁,无广告,多语言支持,且能直观看到已注册域名的网站预览

相关导航