| 域名 | Punycode |
|---|
国际化域名(IDN)是指包含非 ASCII 字符(如中文、阿拉伯文、日文等)的域名。由于 DNS 系统最初仅支持 ASCII 字符,需要通过 Punycode 编码将其转换为兼容格式。
Punycode 是一种编码方法(RFC 3492),用于将 Unicode 字符序列转换为仅包含 ASCII 字母、数字和连字符的字符串。编码后的域名标签以 "xn--" 前缀标识。
编码原理:Punycode 算法使用自适应偏差(adaptive bias)技术,将非 ASCII 字符的码点信息编码为 ASCII 字符序列,实现高效的压缩表示。
实际应用:当你在浏览器中输入"中国.cn"时,浏览器会自动将其转换为"xn--fiqs8s.cn"后发送给 DNS 服务器进行解析。