我只是在学习使用 Ubuntu,当我尝试配置 DNS 时,我需要处理一些调用 localhost、环回接口的问题。谁能解释一下它们之间的区别以及地址 127.0.0.1 和 127.0.1.1 的含义,我应该什么时候使用 127.0.0.1,什么时候应该使用 127.0.1.1
小智 49
当您的机器启动时,它需要知道某些主机名到 IP 地址的映射,然后才能引用 DNS。此映射保存在 /etc/hosts 文件中。在没有名称服务器的情况下,系统上的任何网络程序都会查询此文件以确定与主机名对应的 IP 地址。
环回设备是一种特殊的虚拟网络接口,您的计算机使用它与自身进行通信。它主要用于诊断和故障排除,以及连接到本地机器上运行的服务器。
默认情况下,环回是接口 lo 和 ip 127.0.0.1
127.0.0.1 本地主机
Debian 比 ubuntu 选择定义 127.0.1.1 来映射你的主机名的 ip,以防你没有网络
host_name 与“/etc/hostname”中定义的主机名匹配。
对于具有永久 IP 地址的系统,此处应使用该永久 IP 地址而不是 127.0.1.1。
127.0.1.1 主机名
Vid*_*uth 31
它实际上并没有特别的意义(它只是 127.0.0.0/8 块中的另一个 IP)。
它被用作主机名的 IP 的原因在 Debian 参考手册的第 10.4 节中有解释。
引用:
某些软件(例如 GNOME)希望系统主机名能够解析为具有规范完全限定域名的 IP 地址。这确实不合适,因为系统主机名和域名是两个截然不同的东西;但是你现在有了。为了支持该软件,必须确保可以解析系统主机名。大多数情况下,这是通过在 /etc/hosts 中放置一行包含一些 IP 地址和系统主机名来完成的。如果你的系统有一个永久的 IP 地址,那么使用它;否则使用地址 127.0.1.1。
下面的屏幕截图讲述了一个有趣的故事。
实际上,它表明这127.0.0.1是真正的环回地址。因此,127.0.1.1除了基本 IP 网络之外,还有其他原因吗?
正如 @Videonauth 所提到的,这条127.0.1.1线就像一个拐杖,一个修复,让挑剔的软件变得快乐。
在我看来,环回条目几乎应该始终位于/etc/hosts. 如果您更改默认的主机名localhost,请更改该行上的主机名127.0.1.1,而不是该127.0.0.1行上的主机名。
如果更改主机名并为计算机指定静态 IP,请更改 127.0.1.1 行中的主机名和 IP 字段。
简而言之,不要管127.0.0.1记录。