掘金 后端 ( ) • 2024-04-25 17:31

highlight: gruvbox-dark theme: cyanosis

你好,我是 shengjk1,多年大厂经验,努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注!你会有如下收益:

  1. 了解大厂经验
  2. 拥有和大厂相匹配的技术等

希望看什么,评论或者私信告诉我!

一、前言

今天公司的一个同事想要测试 python django 代码,启动了 python django 的服务,绑定了 0.0.0.0 这样的一个 IP,然后通过 0.0.0.0 去访问,结果无论如何都没有办法访问成功,然后我告诉她把 0.0.0.0 换成 127.0.0.1 或者localhost 试试,结果成功了。

在大家越来越不关心最基础的东西的时候,这么最基础的东西就会限制你的发展,就跟我们国家一样。

二、解释 0.0.0.0 和 127.0.0.1

2.1 什么是 0.0.0.0

在互联网协议版本 4 中,地址 0.0.0.0 是不可路由的元地址,用于指定无效、未知或不适用的目标。带内信令的应用是为无效的数据赋予特殊含义。

在服务器上下文中,0.0.0.0 表示“本地计算机上的所有 IPv4 地址”。如果主机有两个 IP 地址:192.168.1.1 和 10.1.2.1,并且主机上运行的服务器侦听 0.0.0.0,则这两个 IP 都可以访问。

在路由上下文中,0.0.0.0 通常表示默认路由,即通向互联网“其余部分”而不是本地网络上某个位置的路由。

2.2 127.0.0.1 是什么

127.0.0.1 是环回 Internet 协议 (IP) 地址,也称为“本地主机”。该地址用于与最终用户使用的同一台机器或计算机建立 IP 连接。

使用 ::1 的含义为支持 IPv6 寻址的计算机定义了相同的约定。使用地址 127.0.0.1 建立连接是最常见的做法;但是,可以使用 127. 范围内的任何 IP 地址。 .* 将以相同或相似的方式运行。环回构造使能够联网的计算机或设备能够在机器上验证或建立 IP 堆栈。

2.3 0.0.0.0 和 127.0.0.1 区别

127.0.0.1 和 0.0.0.0 有什么区别? 127.0.0.1是环回地址(也称为 localhost)。

0.0.0.0通常用作不可路由的元地址,用于指定无效、未知或不适用的目标(无特定地址占位符)。然而,这是非标准的,并且可能与RFC 1122冲突。

在路由条目的上下文中,它通常表示默认路由。

在服务器上下文中,0.0.0.0 表示“本地计算机上的所有 IPv4 地址”。如果主机有两个 IP 地址:192.168.1.1 和 10.1.2.1,并且该主机上运行的服务器侦听 0.0.0.0,则可以通过这两个 IP 地址访问它。

三、有意思的地址

Requirements for Internet Hosts -- Communication Layers

四、总结

文章围绕0.0.0.0和127.0.0.1展开,解释了它们在互联网协议中的作用,并举例说明在服务器配置中的不同表现。重点强调了在实际操作中如何正确选择IP地址以确保成功访问服务。