Linux 下的 Opera(版本 10.10)(不知道其他操作系统)无法识别http://0.0.0.0/
为本地地址(http://127.0.0.1/
),而 Firefox 可以。
这些地址有什么区别?
这种情况下这两个浏览器哪一个是符合标准的?
编辑
不仅如此Firefox
,而且Konqueror
和wget
的处理0.0.0.0
方式与本地地址相同。那么,这可能是 Linux 独有的吗?
答案1
本地主机通常是 127.0.0.1。所有 127.xxx 地址都被视为环回地址。我认为 Firefox 是这种情况的例外。
“环回” IP 地址:
127.0.0.0 - 127.255.255.255
互联网上的每台计算机都使用 127.0.0.0/8 来标识自己。127.0.0.0 到 127.255.255.255 被指定用于所谓的“环回”。此构造允许计算机建立/验证其 IP 堆栈。大多数软件仅将 127.0.0.1 用于环回目的(此范围内的其他地址很少使用)。环回地址内的所有地址在互联网路由中都受到相同级别的限制,因此很难将此块中的任何其他地址用于除节点特定应用程序(通常是引导)之外的任何用途。这在 RFC 3330 中有记录。
(摘自 IANA.org)
0.0.0.0 地址是:
0.0.0.0/8 保留用于自我识别 [RFC5735]
(再次取自 IANA)
详细信息:
0.0.0.0/8 - 此地址块中的地址指的是“此”网络上的源主机。地址 0.0.0.0/32 可用作此网络上此主机的源地址;0.0.0.0/8 内的其他地址可用于指代此网络上的指定主机([RFC1122],第 3.2.1.3 节)。
(摘自 RFC 5735)
答案2
根据维基百科,唯一正确的地址(为此目的而明确保留)是127.0.0.1
。我认为将其0.0.0.0
视为 localhost 是不正确的 - 无论如何,Windows 7 上的 Firefox 不会为我执行此操作。