IP 在 TCP/IP 参考模型中处于第三层,也就是网络层。
⽹络层的主要作⽤:实现主机与主机之间的通信,也叫点对点(end to end)通信。
网络层与数据链路层有什么关系呢?
在上⾯我们知道 IP 的作⽤是主机之间通信⽤的,⽽ MAC 的作⽤则是实现「直连」的两个设备
之间通信,⽽ IP 则负责在「没有直连」的两个⽹络之间进⾏通信传输。
在区间内移动相当于数据链路层,充当区间内两个节点传输的功能,区间内的出发点好⽐源 MAC 地址,⽬标地点好⽐⽬的 MAC 地址。
如果只有⾏程表⽽没有⻋票,就⽆法搭乘交通⼯具到达⽬的地。相反,如果除了⻋票⽽没有⾏程表,恐怕也很难到达⽬的地。因为不知道该坐什么⻋,也不知道该在哪⾥换乘。
因此,只有两者兼备,既有某个区间的⻋票⼜有整个旅⾏的⾏程表,才能保证到达⽬的地。与此类似,计算机⽹络中也需要「数据链路层」和「⽹络层」这个分层才能实现向最终⽬标地址的通信。
还有很重要⼀的点,旅⾏途中我们虽然不断变化了交通⼯具,但是旅⾏⾏程的起始地址和⽬的地址始终都没变。
其实,在⽹络中数据包传输中也是如此,源IP地址和⽬标IP地址在传输过程中是不会变化的,只有源 MAC 地址和⽬标MAC ⼀直在变化。