为什么 ping “驱动器” 会收到来自 127.0.53.53 的回复?

Tha*_*Guy 23 firefox dns ubuntu

我在 Ubuntu 14.04.1 上使用 Firefox 31

我试图通过在地址栏上输入“drive”然后点击第一个谷歌结果(懒惰和令人费解,我知道)来打开 Firefox 上的谷歌驱动器。

它显示了一个连接错误:

在此处输入图片说明

怀疑是路由器问题,或者可能是我的 ISP 引起的 DNS 问题,我尝试 ping 不存在的地址,结果只得到来自127.0.53.53. 嗯?

ubuntu@ubuntu:~$ ping foobar
ping: unknown host foobar
ubuntu@ubuntu:~$ ping thisisnotavaliddomain
ping: unknown host thisisnotavaliddomain
ubuntu@ubuntu:~$ ping drive
PING drive (127.0.53.53) 56(84) bytes of data.
64 bytes from 127.0.53.53: icmp_seq=1 ttl=64 time=0.011 ms
64 bytes from 127.0.53.53: icmp_seq=2 ttl=64 time=0.022 ms
64 bytes from 127.0.53.53: icmp_seq=3 ttl=64 time=0.049 ms
^C
--- drive ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 0.011/0.027/0.049/0.016 ms
Run Code Online (Sandbox Code Playgroud)

尝试 ping 其他无效域会得到预期的结果(即根本没有)。只有“驱动”它似乎发生。

这里发生了什么?

Tha*_*Guy 33

发生的事情是名称冲突

127.0.53.53 是一个特殊的 IPv4 地址,它将出现在系统日志中,提醒系统管理员存在潜在的名称冲突问题,从而实现快速诊断和修复。“53”用作助记符,表示由于 DNS 服务使用网络端口 53 而导致的 DNS 相关问题。

(来源:ICANN

但是这是什么意思?好吧,事实证明,在过去几年中,TLD(顶级域)的数量一直在增加。除了原有的.com.org.net.gov之类的,有一个不断增长的名单通用顶级域名。在撰写本文时,目前有超过一千个 gTLD

猜猜 gTLD 有哪些示例?诸如“drive”、“google”、“microsoft”、“hotmail”、“youtube”和“android”之类的词。因此,当您在 Firefox 的地址栏上输入这些词时,它不会使用它在默认搜索引擎上执行搜索,而是首先检查它是否解析为域名。

感谢我们在 ICANN 的朋友,它确实解析为 127.0.53.53。这意味着localhost. 您的浏览器正在尝试连接到您自己计算机的 80 端口,除非您有 Web 服务器在运行,否则您将看到连接错误消息。

(obs:这似乎不会影响所有浏览器——至少,我能够测试最新版本的 Chrome for Android 并且不受此问题的影响)

  • 新 gTLD 仅用于在初始测试的特定阶段将域解析为“127.0.53.53”。一旦 gTLD 完全设置,它就会正常运行;未知域只会失败。 (5认同)
  • @TOOGAM 如果您查找“驱动器”的 DNS 记录。有一个 MX 记录解析为“your-dns-needs-immediate-attention.drive”。 (3认同)