127.0.0.1、0.0.0.0 和本地主机有何不同?

How are 127.0.0.1, 0.0.0.0 and localhost different?

我不明白这些术语之间的区别以及它们之间的联系。

我查看了计算机上的主机文件,可以看到 127.0.0.1 和本地主机已连接,但不确定如何连接,也不知道 0.0.0.0 适合所有这些连接的位置。

我看过这个问题的其他答案,但我是新手,关于环回和元地址的其他答案并不容易理解。

是的,在您的本地系统上 localhost 确实转换为 127.0.0.1,它始终是您当前使用的机器的 IP 地址。例如,在您的计算机上访问 127.0.0.1(或本地主机)只会尝试打开与您自己的计算机的连接(如果您托管本地 Web 服务器则很有用)

同时,0.0.0.0有不同的用途。在服务器或任何具有多个 ip 地址的机器上,它可用于指代该机器使用的所有 IP 地址。例如,如果您使用 serverSocket 创建一个简单的 java 应用程序,您可能希望服务器套接字侦听所有服务器 IP 地址上的传入连接。然后将服务器套接字设置为侦听 0.0.0.0。希望这对您有所帮助!

整个 127.0.0.0/8 块中的任何地址都会将发送的流量循环回计算机内部。

Localhost 通常设置为 127.0.0.1,但它可以设置在 127.0.0.0/8 块中的任何地址。

0.0.0.0 地址实际上是指任何 IPv4 地址。