编码/解码

Punycode 编解码

域名与 Punycode(国际化域名)互转,如 中文.中国 ↔ xn--

Unicode 域名
Punycode 域名

什么是 Punycode?

Punycode 用于将国际化域名(含非 ASCII 字符)编码为仅含 ASCII 的 xn-- 形式,便于 DNS 解析与兼容。

使用场景

  • 国际化域名(IDN)与 ASCII 域名互转
  • DNS 配置、证书域名校验

常见问题

为什么有些网址开头是 xn--?
这是国际化域名(IDN)的编码标记:DNS 体系只支持 ASCII,中文、日文等域名会被转换为 xn-- 开头的形式存储和解析。例如"中文.com"编码后是 xn--fiq228c.com。浏览器地址栏显示原文,实际请求用的是 punycode。
注册域名时应该填哪一种形式?
注册商通常两种都接受,但 WHOIS 记录和 DNS 配置里保存的是 xn-- 编码形式。做 DNS 解析、配置 CDN 或证书时,务必确认用的是编码形式还是 Unicode 形式,混用是常见故障源。
punycode 有安全风险吗?
有,主要是"同形异义字攻击":用西里尔字母 а 替换拉丁 a,注册肉眼难辨的假域名。现代浏览器只对高风险组合显示 punycode 原文。用本工具解码任何 xn-- 域名,可以快速核对真实拼写。