网络层--硬件地址

Posted 明说

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络层--硬件地址相关的知识,希望对你有一定的参考价值。

硬件地址

前文学习了IP地址,现在我们来看下硬件地址,以及与IP地址的区别。

IP地址与硬件地址的区别

从层次的角度来看,物理地址是数据链路层和物理层使用的地址,而IP地址是网络层和以上各层使用的地址,是一种逻辑地址。

在发送数据时,数据从高层下到低层,然后才到通信链路上传输。使用IP地址的IP数据报一旦交给了数据链路层,就被封装成MAC帧了。MAC帧在传送时使用的源地址和目的地址都是硬件地址,这两个硬件地址都写在了MAC帧的首部中。

连接在通信链路上的设备(主机或路由器)在收到MAC帧时,根据MAC帧首部中的硬件地址决定收下或丢弃。只有在剥去MAC帧的首部和尾部,把MAC层的数据上交给网络层后,网络层才能在IP数据报的首部中找到源IP地址和目的IP地址。

总之,IP地址放在IP数据报的首部,而硬件地址则放在MAC帧的首部。在网络层和网络层以上使用的是IP地址,而数据链路层及以下使用的是硬件地址。

强调以下几点:

  • 在IP层抽象的互联网上只能看到IP数据报。

  • 虽然在IP数据报首部有源IP地址,但路由器只根据目的站IP地址的网络号进行路由选择。

  • 在局域网的链路层,只能看见MAC帧,IP数据报被封装在MAC帧中。MAC帧在不同网络上传送时,其MAC帧首部中的源地址和目的地址在发生变化。

  • 尽管互连在一起的网络的硬件地址体系各不相同,但IP层抽象的互联网却屏蔽了下层这些很复杂的细节。只要我们在网络层上讨论问题,就能够使用统一的、抽象的IP地址研究主机和主机或路由器之间的通信。“屏蔽”是一个很有用,很普遍的基本概念。

思考两个问题:
(1)主机或路由器怎样知道应当在MAC帧的首部填入什么样的硬件地址?
(2)路由器中的路由表是怎样得出的?

以上是关于网络层--硬件地址的主要内容,如果未能解决你的问题,请参考以下文章

网络层--地址解析协议ARP

网络协议笔记-网络层-ARP协议

计算机网络体系结构 - 网络层(补)

Linux 网络基础--网络层+数据链路层

网络层ARP和RARP协议

ARP请求详解