切入正题:那是哪一个呢?IP 是否分配给接口、链路或设备?这三件事有什么区别?警告:这是对 iproute2 实用程序或其文档的严格审查,以便更好地理解它们(主要是ip
)。
网络书籍经常引用这些术语
Route2实用程序文档定义链接如下:ip
链路——物理或逻辑网络设备。
别处...
链路指的是网络设备。
dev NAME --- 我们添加地址的设备的名称
像这样的命令将 IP 地址分配给“设备”:
ip addr add 10.0.0.1/24 brd + dev eth0
Run Code Online (Sandbox Code Playgroud)
像这样的命令启动“接口”
ip link set eth0 up
Run Code Online (Sandbox Code Playgroud)
将上述内容与以下来自可信来源的摘录进行比较:
主机和物理链路之间的边界称为接口。
计算机网络:自上而下的方法,作者:Kurose 和 Ross,第 7 版,第 14 页。363.
还
路由器与其任一链路之间的边界也称为接口。
计算机网络:自上而下的方法,作者:Kurose 和 Ross,第 7 版,第 14 页。363.
之后,
[...] IP 地址在技术上与接口相关联,而不是与包含该接口的主机或路由器相关联。
这是模棱两可的。可以说设备和接口是相同的吗?或者设备是否实现了接口?如果是这样,那么就意味着像物理接口这样的词可能直接指代设备,并且真正具有相同的含义。
我将链路理解为物理线路或模拟线路(无线协议,如 802.11)。顺便说一下,我什至没有提到“链路层”这个术语。
IP 地址分配给接口(物理或虚拟)。未编号的点对点接口可以在没有自己的 IP 地址的情况下工作(例如简单的串行接口)。此外,只有三层接口可以使用IP 地址。
主机或路由器等第3 层设备可能有多个接口,需要多个 IP 地址。交换机或中继器等低层设备不使用 IP 地址来实现其基本功能。请注意,“设备”也可用于几乎任何技术组件。它也很可能指 Linux 硬件管理意义上的设备。
链路是两个物理层接口之间的活动连接。在像过时的 10BASE5 这样的总线网络上,可以“链接”两个以上的接口。
在特殊上下文中,这些术语可能具有其他含义,但以上是本质。
小智 5
与其他成熟的工程学科不同,网络没有明确定义的术语。许多是从电气工程或计算机科学借用的,但用法略有不同。其中很大一部分是由制造商的营销部门创造的。这些术语的意思就是营销人员想要的意思。所以你永远无法拥有每个人都同意的定义。
要添加到 @Zac67 的答案,术语链接可以有许多定义,具体取决于上下文。链接可以是物理连接(两个设备之间的电缆),也可以是逻辑或抽象概念:如数据库和遥测模块之间的链接。
设备的含义还取决于上下文。从计算机操作系统的角度来看,外围设备(网络接口、存储、输入/输出)都是设备。从更大的角度来看,设备是连接到网络的系统。
软件工程师使用设备的方式可能与网络工程师不同。您只需要了解上下文即可。