使用方法
- 在 域名 中输入域名。单个标签也可以。
- 让 方向 保持为自动检测,或选择 Unicode 转 ASCII、ASCII 转 Unicode,强制朝一个方向转换。
- 把 转换后的名称 复制到您的 DNS 面板、邮件设置或页面中。
- 对于由多个部分组成的名称,请查看 逐个标签:每一行显示该标签发生了什么。
域名如何变成 Punycode
域名系统只能携带 ASCII 字母、数字和连字符。因此 RFC 3490 要求把含有非 ASCII 字母的每个标签写成 ACE 形式:前缀 xn-- 加上该标签的 Punycode 文本。只含 ASCII 字母的标签保持不变,标签之间的点也保持不变。
- 像 example 这样的标签保持原样。
- 像“中文”这样的标签加上前缀 xn--,再加上它的 Punycode 文本,此处为 fiq228c。
- 以 xn-- 开头的标签(大小写不论)会被解码回它的 Unicode 字母。
Punycode 如何书写一个标签
RFC 3492 先写出标签中的基本 ASCII 字母,保持其原有顺序,然后是一个连字符,之后为每个其他字母写一个长度可变的数字。数字使用基数36,数字符号为 a 到 z 和0到9。每个数字的大小会根据前面的数字调整,因此常用字母的编码较短。
其参数为:基数36,tmin 为1,tmax 为26,skew 为38,damp 为700,初始 bias 为72,初始 n 为128(RFC 3492 第5节)。
工具不检查什么
- 它不运行 Nameprep(RFC 3491)或字母的 IDNA 映射,因此大写的非 ASCII 字母和兼容字符的结果可能与浏览器不同。
- 它不检查标签或整个名称的长度。
- 它不查询该名称,也不能告诉您某个注册机构是否允许它。
示例:中文.example
标签“中文”含有两个非 ASCII 的汉字。它的 Punycode 文本为 fiq228c,因此标签变为 xn--fiq228c,整个名称变为 xn--fiq228c.example。标签 example 只含 ASCII 字母,保持不变。
| 标签 | 结果 | 发生了什么 |
|---|---|---|
| 中文 | xn--fiq228c | 已编码为 xn-- |
| example | example | 未改变 |
常见问题
xn-- 前缀是什么意思?
它标明该标签包含 Punycode。RFC 3490 规定每个 ACE 标签都以 ACE 前缀开头,即大小写不论的 xn--,之后是该标签的 Punycode 文本。
ASCII 标签中的大写字母会被改变吗?
不会。RFC 3490 规定 ASCII 标签保持不变,因此 Example 仍然是 Example。只有含非 ASCII 字母的标签,其字母才会被重写。
为什么我的名称与浏览器显示的版本不同?
工具不会先映射字母。Nameprep 和 IDNA 映射会在 Punycode 步骤之前,把大写的非 ASCII 字母和兼容字符(例如全角字符)转换为其标准形式。请在您使用的浏览器或注册机构中核对结果。
这个转换工具会把我的域名发送到什么地方吗?
不会。转换在您的浏览器中进行。您输入的名称不会发送给我们,也不会保存,并且不会进行任何 DNS 查询。
可以用它转换电子邮件地址吗?
只转换域名部分,即 @ 符号之后的文字。工具会保持 @ 之前的本地部分原样不变,因此地址的其余部分不受影响。
xn-- 标签无效时会怎样?
工具会停止,并指出该标签。前缀之后,有效的标签只使用 a 到 z 的字母、数字和连字符,并且数字部分必须完整,因此请检查标签是否有输入错误。
资料来源
数据和文字最近核对于2026年11月10日星期二。