为什么需要为接口分配 IP 地址?

网络工程 路由器 界面
2022-02-13 01:38:12

我知道这是一个非常非常基本的疑问,但我从来没有深入思考过。例如,我将使用以下场景:

在此处输入图像描述

您知道,当您在两个路由器之间配置链路时,我们通常使用 /30 掩码,每个路由器都有自己的接口。我的疑问是:¿为什么我们需要为每个接口分配两个 ip?为什么在这个链接中需要一个子网?我这样说是因为,例如,如果您在路由器“CE_Valencia”中有一条连接到路由器“PE_Este”的以太网线,您将数据包发送到那条线,它们将到达另一个路由器,我看不出有必要对于这样的 ip 和子网。我知道我错了,但我会很感激对此的一个很好的解释,以及为什么会发生这种情况。在此先感谢,希望我自己已经解释得够多了。提前致谢。

2个回答

您是对的:出于您给出的原因,您可以拥有未编号的点对点接口。

阅读 Cisco 路由器中未编号接口的说明

为了方便监控,我们一般都会做数字接口。

[编辑] 以太网接口,本质上是多点接口,总是被编号。两台主机以太网,看起来只是两个路由器之间的直接链接,路由器就像任何其他以太网段一样对待它,并且需要地址、掩码等。您可能还想阅读RFC 3021 “在 IPv4 点对点链接上使用 31 位前缀”。

在非常高的层次上,每个网络接口都没有必要拥有自己的网络地址。例如,使用 CLNP(OSI 无连接网络协议,现在很少使用),一个节点可以有一个网络地址,而没有分配给各个接口的网络地址。IPv6 采用不同的方法,不需要子网地址。IPv6 的邻居发现(相当于 ARP)使用“链接本地”地址工作,这些地址甚至不会对外公布。

此外,正如@jonathanjo 指出的那样,即使使用 IP,我们也可以拥有“未编号”的接口,但对这些接口有许多限制。

通常,当每个接口都有自己的 IP 地址并且每个子网都有自己的子网前缀时,IP 及其相关的路由协议(和 ARP)工作得最好。例如,一台路由器要查找相邻路由器的以太网地址,它使用 ARP,这需要 IP 地址。

真正的答案是,虽然理论上不需要为每个端口都有一个 IP 地址,但协议的设计使其通常是必要的。早期的路由协议(如 RIP)依赖于子网寻址。现代路由协议(如 OSPF)不需要它们,但实现通常依赖于需要的较低级别的管道。在许多实现中,邻接在内部表示为 IP 地址,而不是(端口、链接地址)元组。