公网 IP 是唯一的吗?

公网 IP 是唯一的吗?

公共 IP 是唯一的吗?我的意思是我们有两种 IP:私有 IP 和公共 IP,如果公共 IP 属于路由器,那么每个连接到一个路由器的人是否都有一个 IP 地址?

答案1

一般来说,答案是肯定的,公共 IP 是全球唯一的。

在 IPv4 环境中,已知不是唯一的 IP(v4)是私有 IP,它们位于以下范围内:

  • 从 10.0.0.0 到 10.255.255.255。
  • 从 172.16.0.0 到 172.31.255.255。
  • 从 192.168.0.0 到 192.168.255.255。

rfc1918

您的家用路由器在“互联网端”接口上的 IP 是公共的,由您的 ISP 提供。您在家中的 WiFi 端或以太网局域网连接中使用的 IP 是私有的,因此它们不是唯一的,但这不是问题,因为这些 IP 在被 NAT 或由 NAT 转换之前永远不会离开您的家。

编辑:

现在,正如下面的评论中提到的,我刚才说的有一个例外。有一些技术可以让我们更灵活地处理一对一通信原始互联网协议范式,以允许一对近。这些技术用于例如在谈论需要高可用性、冗余或低延迟的服务(如 DNS 或 CDN 服务)时。给定某个 IP(IPv4 或 IPv6),世界上可能有多个服务器配置为响应该 IP,但只有一台服务器会响应。

rfc4786

此外,IPv6 还引入了一个新的寻址系统来应对这些“新需求”,并定义了“任播地址”

IP 版本 6 (IPv6) 定义了一种新类型的地址,称为“任播”地址,该地址允许将数据包路由到响应同一地址的多个不同节点之一 [2, 3]。任播地址可以分配给一个或多个网络接口(通常位于不同的节点上),网络会根据所使用的路由协议确定的“距离”概念将每个发往此地址的数据包传送到“最近”的接口。

rfc2526

关于 IPv6 任播地址

任播地址是分配给一组通常属于不同节点的接口的地址。发送到任播地址的数据包将被传送到由任播地址标识的最近接口(由正在使用的路由协议定义)。任播地址在语法上与单播地址没有区别,因为任播地址是从单播地址空间分配的。将单播地址分配给多个接口会使单播地址成为任播地址。必须明确配置分配了任播地址的节点,以识别该地址是任播地址。

思科源

答案2

不是。这其实很常见。这背后的技术叫做任播并被许多内容分发网络使用,例如 CloudFlare。

任播是一种网络寻址和路由方法,其中来自单个发送者的数据报被路由到一组潜在接收者中拓扑最近的节点,尽管它可能被发送到多个节点,全部由同一目标地址标识

然后,还有可能(暂时)窃取他人的 IP 地址。如果您是自治系统运营商,这相对容易。您只需宣布您托管一些 IP,流量就会神奇地定向到您。当然,合法所有者也会广播这些公告,因此效果充其量只是暂时的和不完整的。

只有在单播寻址是一个唯一的 IP 地址。

答案3

公共 IP是您在互联网上可见的那个。

私有 IP是您在私人网络中可见的,例如路由器后面。

连接到路由器的每个人都有一个私有 IP,但在最常见的配置中,它们都共享一个公有 IP通常情况下,它被分配给路由器,而不是计算机。

可以为每台计算机分配公网 IP,但您需要有允许这样做的路由器,并且您必须拥有足够的公网地址才能分配。您必须先购买它们。

答案4

您的公共 IP 是唯一的根据定义。如果它不是唯一的,它就不可能是一个公共地址,因为不可能确定将你的流量路由到哪里。

换句话说:您的公共 IP 地址是离您最近的路由器的外部(面向互联网)地址,该地址在全球范围内仍然是唯一的。它可能是也可能不是您家里的路由器,尽管通常是。

但正如指出的那样,一些 ISP 使用NAT节省 IPv4 地址,在这种情况下,您的家庭路由器的外部地址可能不是唯一的,并且您的公共 IP 地址属于更远的路由器,即您的 ISP(并且您与 ISP 的其他客户共享它)。

相关内容