127.0.0.1 是一个非常著名的 IP 地址——您甚至可能在 T 恤上看到过它。但它到底是什么,为什么这么有名?在此处了解有关 127.0.0.1 的更多信息。
目录
Internet 上的保留地址
互联网由数十亿台设备组成。它们使用IP 地址相互识别和通信,在概念上类似于电话号码。已使用数十年的 Internet 协议版本 4 (IPv4) 允许近 43 亿个此类地址。IPv4 的继任者IPv6拥有超过 10^38 个可用地址——足以让地球上的每一粒沙子、可观测宇宙中的每颗恒星以及每个人体内的每一个原子都有一个唯一的 IP 地址,而且还剩下很多超过。
尽管现在有大量可用的 IP 地址,但为了防止编程冲突的特定目的,保留一些地址,甚至是地址范围(通常称为块)是很方便的。为特定目的保留地址可以很容易地为不同的 IP 地址建立一般规则和行为。与大多数 Internet 标准一样,保留 IP 地址是通过称为 Requests for Comment 或 RFC 的文档建立的。
事实证明,让计算机与自己而不是另一台计算机对话通常很有用。为此,您需要一个具有一些独特属性的特殊保留 IP 地址 — 127.0.0.1。
什么是 127.0.0.1
127.0.0.1 是主机环回地址。主机环回是指地址为 127.0.0.1 的任何数据包都不应该离开计算机(主机),发送它——而不是被发送到本地网络或互联网,它只是被自己“环回”,并且发送数据包的计算机成为接收者。
RFC 1122 明确指出“内部主机环回地址。这种形式的地址不得出现在主机之外。” 因此,拾取定向到 127.0.0.1 的流量的路由器应该立即丢弃数据包。这可确保没有专门用于主机上的流量进入 Internet。
虽然它是最常见和最著名的,但 127.0.0.1 只是一个大块中的一个地址,127.0.0.0 – 127.255.255.255,在RFC 6890中保留用于环回目的。
IPv6 也有一个环回地址。完全写出它是 0000:0000:0000:0000:0000:0000:0000:0001,但为了方便起见,它通常被截断为 ::1。
如何使用 127.0.0.1
那么为什么要让数据包循环回同一台计算机呢?有一些常见的用例。
第一个是测试目的——如果您最终打算通过 LAN 或 Internet 托管服务器或网站,您可以在同一台计算机上运行服务器和客户端,以确保所有基础首先正常工作。例如,如果您在本地计算机上托管了一个专用的 Minecraft 服务器,您可以通过输入 127.0.0.1 作为 IP 地址来连接到它。这同样适用于几乎所有本地托管的服务器。消除与网络相关的复杂性,例如端口配置和延迟问题,可以提高故障排除过程的效率。
您也可能只想在本地设备上运行只有您可以访问的服务。这在自托管社区中相对常见——将服务不必要地暴露给外部设备和威胁是没有意义的。
hosts 文件可用于指定与给定域名对应的 IP 地址。从功能上讲,这使您可以在hosts 文件中使用 127.0.0.1 来阻止 Web 流量。例如,如果您告诉您的计算机在 127.0.0.1 上查找 http://facebook.com,它将无法连接,从而有效地阻止它,除非您记住了 http://facebook.com 的实际 IP。
什么是本地主机
在大多数情况下,localhost 只是默认情况下引用 127.0.0.1 的简写。但它可以更改——如果你编辑你的主机文件,你可以让 localhost 引用任何 http://127.XXX 保留地址。您还可以创建其他 localhost,例如 localhost2,例如可以引用 127.0.0.2。
随着 IPv6 被更快地采用,可能越来越多的设备将使用 ::1 作为默认环回地址。但是,127.0.0.1 已经使用了几十年,并且在可预见的未来仍将继续使用。
#知识创作官#