Whois 查询

直连 whois 服务器(不依赖 API)

417 次访问
WHOIS · RDAP PROTOCOL

Whois 域名查询

基于 IANA RDAP 协议 · 域名注册商 / 创建日期 / 到期日 / DNS 服务器 / 状态

查询

注册信息

输入域名后点击查询

关于 RDAP

RDAP(Registration Data Access Protocol,RFC 7480-7485)是 ICANN 推出的 WHOIS 替代协议,返回 JSON 结构化数据,支持 CORS,可在浏览器直接调用。

隐私保护:GDPR 生效后多数 .com / .net 域名注册人信息已 redact。仅显示注册商 / 状态 / 日期等公开数据。

支持 TLD:.com / .net / .org / .info / .io / .cn / .top 等绝大多数顶级域。.cn 域名信息可能精简(CNNIC 政策)。

关于本工具

了解工具定位 · 使用场景 · 对比优势

输入域名,直连上游 Whois 服务器获取原始注册信息,不依赖任何第三方 API。域名投资者验证过期时间、安全分析师排查恶意注册、站长核对续费状态,结果秒回。查询由服务端处理,不缓存或记录查询内容。

使用场景

🔍

域名抢注验证

域名投资人发现一个即将过期的优质双拼域名,想抢注前确认其真实状态。直接输入域名,工具直连 whois 服务器返回注册日期、到期日期、域名状态(如 pendingDelete / redemptionPeriod),比第三方抢注平台的信息更实时,避免因缓存数据错过抢注窗口。

🛡️

安全事件溯源

安全运维人员收到钓鱼邮件,发件域名疑似仿冒。输入域名查询 whois,获取注册人邮箱、注册商、创建时间,与已知恶意域名库交叉比对。直连 whois 服务器不依赖 API,避免第三方接口被屏蔽或限速,在应急响应中快速锁定域名归属。

💼

商标侵权取证

法务人员发现某新注册的域名与公司商标高度相似(如 brand-name.com vs brand-name.net)。输入域名查询 whois,获取注册人信息、注册日期、域名服务器,作为商标争议的初步证据。直连 whois 服务器返回原始数据,比聚合平台更完整,避免因隐私保护被截断。

📉

域名交易前尽调

买家看中一个二手域名,卖家报价 5 万。输入域名查询 whois,查看注册历史(创建时间、最近续费时间、域名状态),判断域名是否刚过期被抢注、是否存在争议(如 pendingTransfer)。直连 whois 服务器获取权威状态码,避免被卖家隐瞒域名冻结或仲裁风险。

🌐

CDN 配置排障

运维工程师配置域名解析后,发现部分区域访问异常。输入域名查询 whois,获取域名服务器(name server)列表,与 DNS 解析记录比对,确认 NS 记录是否已生效。直连 whois 服务器比 DNS 缓存更快返回最新 NS 变更,加速排障。

对比矩阵本工具 vs 竞品 vs 传统方法

维度本工具竞品 A (whois.com)传统方法 (命令行)
数据隐私直连 whois 服务器,查询请求不经过第三方中间服务器查询请求经过 whois.com 服务器,其可记录日志本地执行,数据不离开本机,隐私性最高
处理速度1-3 秒 (取决于 whois 服务器响应)3-8 秒 (含中间层转发延迟)1-3 秒 (取决于 whois 服务器响应)
离线可用不可用,需联网不可用,需联网可用 (需提前安装 whois 客户端)
操作门槛零门槛,浏览器打开即用零门槛,浏览器打开即用需掌握命令行操作,安装 whois 客户端
结果可读性格式化展示,关键字段高亮格式化展示,信息较完整原始文本输出,需自行解析
批量查询不支持,单次查询一个域名不支持,单次查询一个域名支持 (通过脚本循环调用)
平台依赖跨平台 (任何有浏览器的设备)跨平台 (任何有浏览器的设备)依赖操作系统 (需安装对应客户端)

使用指南

上手步骤 · 输入输出 · 避坑提示

使用步骤

  1. 在输入框中粘贴域名(如 example.com)或 IP 地址,不含 http:// 或路径
  2. 点击「查询」按钮,工具直连对应 WHOIS 服务器获取原始记录
  3. 查看结果区:注册商、注册/到期日期、域名状态、Name Server 等字段
  4. 如需查询其他域名,清空输入框后重复步骤 1-2

输入输出示例7 个典型场景,覆盖常规、边界与易错

输入输出说明
example.comDomain Name: EXAMPLE.COM Registry Domain ID: 2336799_DOMAIN_COM-VRSN Registrar WHOIS Server: whois.iana.org Registrar URL: http://res-dom.iana.org Updated Date: 2024-08-14T07:02:54Z Creation Date: 1995-08-14T04:00:00Z Registry Expiry Date: 2025-08-13T04:00:00Z Registrar: RESERVED-Internet Assigned Numbers Authority Registrar IANA ID: 376 Registrar Abuse Contact Email: abuse@iana.org Registrar Abuse Contact Phone: +1.3103015820 Domain Status: clientDeleteProhibited Domain Status: clientTransferProhibited Domain Status: clientUpdateProhibited Name Server: A.IANA-SERVERS.NET Name Server: B.IANA-SERVERS.NET DNSSEC: signedDelegation DNSSEC DS Data: 31589 13 1 B0B1C1D2E3F4A5B6C7D8E9F0A1B2C3D4E5F6A7B8 URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/典型场景:查询常见顶级域名(.com)
google.cnDomain Name: google.cn ROID: 20030311s10001s00022245-cn Domain Status: clientTransferProhibited Registrant: 北京谷翔信息技术有限公司 Registrant Contact Email: dns-admin@google.com Sponsoring Registrar: 北京新网数码信息技术有限公司 Name Server: ns1.google.com Name Server: ns2.google.com Name Server: ns3.google.com Name Server: ns4.google.com Registration Time: 2003-03-11 10:00:00 Expiration Time: 2026-03-11 10:00:00 DNSSEC: unsigned典型场景:查询中国国家顶级域名(.cn)
192.168.1.1% This is the RIPE Database query service. % The objects are in RPSL format. % % The RIPE Database is subject to Terms and Conditions. % See http://www.ripe.net/db/support/db-terms-conditions.pdf inetnum: 192.168.0.0 - 192.168.255.255 netname: IANA-BLK descr: Private IPv4 address space (RFC 1918) country: EU org: ORG-IANA1-RIPE admin-c: IANA1-RIPE tech-c: IANA1-RIPE status: ALLOCATED UNSPECIFIED mnt-by: RIPE-NCC-HM-MNT created: 2002-08-14T14:00:00Z last-modified: 2024-11-18T09:23:45Z source: RIPE边界 case:查询私有 IP 地址(RFC 1918)
8.8.8.8NetRange: 8.0.0.0 - 8.255.255.255 CIDR: 8.0.0.0/8 NetName: LVLT-ORG-8-8 NetHandle: NET-8-0-0-0-1 Parent: NET8 (NET-8-0-0-0-0) NetType: Direct Allocation Organization: Level 3 Parent, LLC (LPL-141) RegDate: 1992-12-01 Updated: 2024-10-15 Ref: https://whois.arin.net/rest/net/NET-8-0-0-0-1 OrgName: Level 3 Parent, LLC OrgId: LPL-141 Address: 100 CenturyLink Drive City: Monroe StateProv: LA PostalCode: 71203 Country: US RegDate: 1998-09-15 Updated: 2024-10-15 Ref: https://whois.arin.net/rest/org/LPL-141 OrgAbuseHandle: LAC56-ARIN OrgAbuseName: L3 Abuse Contact OrgAbusePhone: +1-877-453-8353 OrgAbuseEmail: abuse@level3.com OrgAbuseRef: https://whois.arin.net/rest/poc/LAC56-ARIN OrgTechHandle: IPADD-ARIN OrgTechName: IP Address Management OrgTechPhone: +1-877-453-8353 OrgTechEmail: ipadd@level3.com OrgTechRef: https://whois.arin.net/rest/poc/IPADD-ARIN典型场景:查询知名公共 DNS 服务器 IP
subdomain.example.com% No entries found for the selected source(s). % The query may have returned no results because: % - The domain is not registered % - The WHOIS server does not support subdomain queries % - The domain name contains invalid characters % Please try querying the parent domain (example.com) instead.易错 case:用户误输入子域名而非根域名
xn--mgba3a4f16a.comDomain Name: XN--MGBA3A4F16A.COM Registry Domain ID: 1616515831_DOMAIN_COM-VRSN Registrar WHOIS Server: whois.godaddy.com Registrar URL: http://www.godaddy.com Updated Date: 2024-06-15T10:30:00Z Creation Date: 2010-09-20T14:00:00Z Registry Expiry Date: 2025-09-20T14:00:00Z Registrar: GoDaddy.com, LLC Registrar IANA ID: 146 Registrar Abuse Contact Email: abuse@godaddy.com Registrar Abuse Contact Phone: +1.4806242505 Domain Status: clientTransferProhibited Name Server: NS1.GOOGLE.COM Name Server: NS2.GOOGLE.COM DNSSEC: unsigned边界 case:国际化域名(IDN,Punycode 编码)
notregistereddomain123456789.comDomain not found. >>> Last update of WHOIS database: 2025-01-20T14:30:00Z <<< The queried object does not exist: DOMAIN NOT FOUND. No match for "NOTREGISTEREDDOMAIN123456789.COM".易错 case:查询未注册域名(常见误输入)

常见错误对照8 个常踩的坑 · 错误 → 修复

1. 输入了带协议头的域名

错误
https://example.com
修复
example.com

whois 查询的是域名注册信息,不是 HTTP 资源。协议头(http://, https://)会被服务器当作无效查询字符串直接拒绝。

2. 输入了子路径或端口

错误
example.com/path 或 example.com:8080
修复
example.com

whois 协议只关心顶级域名(TLD)和二级域名。路径、端口、锚点等 URL 组件不属于域名注册信息范畴,服务器会返回错误。

3. 输入了带 www 前缀的完整域名

错误
www.example.com
修复
example.com

www 是 CNAME 记录,不是注册域名本身。whois 查 www.example.com 可能返回 example.com 的信息,但部分 TLD 服务器会因找不到精确匹配而报错。

4. 输入了 IP 地址

错误
192.168.1.1
修复
example.com

IP 地址的注册信息属于 whois(RIR,如 ARIN/RIPE/APNIC),与域名 whois 是不同的查询协议和服务器。本工具只查域名 whois,输入 IP 会收到 'No match' 或连接超时。

5. 输入了带空格的域名

错误
example .com
修复
example.com

域名不允许空格。whois 服务器收到空格会当作语法错误,返回 'Invalid query' 或直接断开连接。

6. 输入了中文域名但未转 Punycode

错误
例子.测试
修复
xn--fsqu00a.xn--0zwm56d

中文域名在 whois 协议中必须用 ASCII 兼容编码(Punycode)表示。直接输入 UTF-8 字符,服务器无法解析,返回 'Domain not found'。

7. 查询刚注册的域名认为信息不完整

错误
(刚注册 1 分钟就查,发现 WHOIS 信息缺失)
修复
等待 5-30 分钟后再查

域名注册后,注册局将数据同步到 whois 服务器存在延迟(通常 5-30 分钟)。刚注册时可能返回 'No match' 或显示旧数据,这是正常现象。

8. 把隐私保护状态当作错误

错误
看到 'REDACTED FOR PRIVACY' 认为查询失败
修复
这是正常结果,注册人信息被隐藏

GDPR 等隐私法规要求注册局隐藏个人注册者的姓名、邮箱、电话。显示 'Redacted' 或 'Data Not Shown' 是标准行为,非错误。

工作原理

公式推导 · 流程图解 · 依据出处

核心公式

whois -h <whois_server> <domain>

变量说明

  • whois_server — 目标域名的 Whois 服务器地址
  • domain — 待查询的域名(如 example.com)

示例

查询 example.com 的 Whois 信息。通过 whois.verisign-grs.com 服务器发送请求:whois -h whois.verisign-grs.com example.com。返回结果包含注册人、注册商(如 VeriSign)、创建日期(1997-08-13)、过期日期(2026-08-13)等字段。

适用范围

适用于所有顶级域名(gTLD/ccTLD),但不同域名后缀需使用对应 Whois 服务器(如 .cn 需查询 whois.cnnic.cn)。不依赖第三方 API,直接与 IANA 分配的 Whois 服务器通信。

原理图

输入域名example.com后端处理1. 解析域名 TLD2. 查询对应 whois 服务器3. 建立 TCP 连接4. 发送查询请求5. 接收原始响应展示结果结构化 Whois 信息用户输入后端处理输出结果
用户输入 后端处理 输出结果

开发者集成

3 种主流语言 · 复制即用

import socket

# 直连 whois 服务器,不依赖第三方 API
def whois_lookup(domain: str, server: str = "whois.verisign-grs.com", port: int = 43) -> str:
    """
    通过原始 TCP 连接查询 whois 信息。
    参数 server 可替换为对应 TLD 的 whois 服务器(如 whois.denic.de 用于 .de)。
    """
    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    sock.settimeout(10)
    try:
        sock.connect((server, port))
        # whois 协议:发送域名 + \r\n,读取响应直到连接关闭
        sock.sendall(f"{domain}\r\n".encode())
        response = b""
        while True:
            chunk = sock.recv(4096)
            if not chunk:
                break
            response += chunk
        return response.decode("utf-8", errors="ignore")
    finally:
        sock.close()

if __name__ == "__main__":
    # 示例:查询 example.com 的注册信息
    result = whois_lookup("example.com")
    print(result[:500])  # 打印前 500 字符
package main

import (
	"bufio"
	"fmt"
	"net"
	"os"
	"time"
)

// whoisLookup 通过 TCP 直连 whois 服务器,返回原始响应
func whoisLookup(domain, server string) (string, error) {
	conn, err := net.DialTimeout("tcp", server+":43", 10*time.Second)
	if err != nil {
		return "", err
	}
	defer conn.Close()

	// 发送查询请求(whois 协议:域名 + \r\n)
	_, err = fmt.Fprintf(conn, "%s\r\n", domain)
	if err != nil {
		return "", err
	}

	// 读取全部响应
	scanner := bufio.NewScanner(conn)
	var response string
	for scanner.Scan() {
		response += scanner.Text() + "\n"
	}
	return response, scanner.Err()
}

func main() {
	// 示例:查询 example.com 的 whois 信息
	result, err := whoisLookup("example.com", "whois.verisign-grs.com")
	if err != nil {
		fmt.Fprintf(os.Stderr, "查询失败: %v\n", err)
		os.Exit(1)
	}
	fmt.Println(result[:500])
}
const net = require('net');

/**
 * 通过原始 TCP 连接查询 whois 信息(Node.js 环境)
 * @param {string} domain - 要查询的域名
 * @param {string} server - whois 服务器地址
 * @returns {Promise<string>} whois 响应文本
 */
function whoisLookup(domain, server = 'whois.verisign-grs.com') {
    return new Promise((resolve, reject) => {
        const client = new net.Socket();
        client.setTimeout(10000);

        client.connect(43, server, () => {
            // whois 协议:发送域名 + \r\n
            client.write(`${domain}\r\n`);
        });

        let response = '';
        client.on('data', (chunk) => {
            response += chunk.toString('utf-8');
        });

        client.on('end', () => resolve(response));
        client.on('error', (err) => reject(err));
        client.on('timeout', () => {
            client.destroy();
            reject(new Error('连接超时'));
        });
    });
}

// 示例:查询 example.com 的 whois 信息
whoisLookup('example.com')
    .then(result => console.log(result.slice(0, 500)))
    .catch(err => console.error('查询失败:', err));

常见问题

7 个高频疑问

查询出来的 Whois 信息为什么有的字段是空的,比如没有注册人邮箱?
字段为空通常有两种原因:一是该顶级域(如 .eu、.de 等)的注册局强制隐藏个人数据,符合 GDPR 或当地隐私法;二是域名所有者通过注册商开启了隐私保护服务,Whois 服务器返回的是注册商的代理邮箱或“Redacted for Privacy”占位符。本工具直连各 Whois 服务器,返回的就是注册局原始数据,不会额外填充或美化。如果想获取真实注册人信息,需要通过域名争议程序或法律途径向注册局申请披露。
为什么同一个域名,用这个工具查出来的结果和别家网站不一样?
差异主要来自数据源和缓存策略。本工具直连官方 Whois 服务器(如 VeriSign 的 .com/.net 服务器、CNNIC 的 .cn 服务器),每次查询实时拉取最新数据。而部分第三方平台可能使用自己的缓存数据库,更新延迟从几小时到几天不等,或者通过聚合接口间接查询,中间节点可能修改了部分字段(如统一格式化日期)。另外,不同 Whois 服务器对同一域名的响应内容也可能不同(例如 .com 的 SPONSORING REGISTRAR 字段在 .net 服务器上可能叫 Registrar)。以 Whois 服务器返回的原始数据为准。
查出来的域名过期时间比我记忆中的晚,是不是不准?
域名过期时间不是固定不变的。注册局在域名到期后通常会进入自动续费宽限期(通常 30-45 天),这期间原注册商或注册局可能自动续费,过期时间会被重置为续费后的一年。另外,域名转移注册商时,ICANN 规定新注册商必须在转移完成后将域名有效期延长一年(最多续满 10 年),这也可能导致过期时间变长。本工具显示的是 Whois 服务器当前返回的“Registry Expiry Date”字段,是注册局数据库中的最新记录,如果与记忆不符,建议先确认是否近期发生过续费或转移操作。
.cn 域名查出来的注册人信息是乱码或拼音,怎么回事?
CNNIC(中国互联网络信息中心)的 Whois 服务器对 .cn 域名的注册人字段返回的是经过 Punycode 编码的 IDN(国际化域名)或中文转写。例如“张三”可能显示为“zhang3 san1”或“xn--...”。这是因为 Whois 协议最初只支持 ASCII 字符,中文等非 ASCII 字符需要编码后传输。本工具直连 CNNIC Whois 服务器,返回的就是原始编码内容。如果需要阅读中文注册人姓名,建议去 CNNIC 官网的 Whois 查询页面或联系注册商查看完整信息。
输入域名后提示“查询超时”或“连接失败”,怎么解决?
Whois 查询依赖于目标顶级域的 Whois 服务器网络可达性。超时或失败常见原因:① 部分 TLD(如 .gov、.mil)的 Whois 服务器仅限美国境内 IP 访问,海外查询会被防火墙拦截;② 某些注册局(如 .io 的 NIC.io)对单 IP 频率有限制,短时间大量查询会被临时封禁;③ 你的网络环境(如公司内网、教育网)可能屏蔽了 Whois 端口(43 端口)。解决方法:换个网络环境(如手机热点)重试;等待 5-10 分钟后再查;如果是 .gov 等受限域名,尝试用官方注册商后台查询。本工具不缓存结果,每次都是实时连接,所以网络问题会直接影响可用性。
这个工具和“站长之家”的 Whois 查询有什么不同?
主要区别在数据来源和隐私性。本工具直接连接各顶级域官方 Whois 服务器(如 whois.verisign-grs.com 查 .com),不经过任何第三方接口或缓存,数据与注册局完全一致,但每次查询消耗一次网络请求。站长之家等平台通常有自己的 Whois 数据库,会定期批量抓取并缓存,查询速度快但数据可能滞后(尤其刚注册或刚过期的域名)。另外,本工具不会记录任何查询日志或 IP,隐私性更好;站长之家等可能会统计查询行为用于分析。如果追求实时性和隐私,用本工具;如果只查一个常见域名的基本信息且追求加载速度,用缓存平台更方便。
查 Whois 有什么用?普通人查域名信息能干什么?
常见实用场景:① 买域名前查是否被注册,以及过期时间判断能否抢注;② 接收域名转让报价时查注册人邮箱(如果未隐藏)直接联系卖家,绕过中介费;③ 发现网站被仿冒时,查 Whois 确认仿冒域名注册时间、注册商,向注册商投诉封禁;④ 查看域名历史所有者变更记录(通过对比不同时间点的 Whois 快照),判断域名是否被转手过;⑤ 确认网站归属地——比如一个声称“中国公司”的网站,域名注册人地址显示在俄罗斯,就要警惕。对普通站长和网络安全从业者,Whois 是基础的情报源。
选择 打开 +新窗口 esc关闭