夜光:计算机网络笔记(三十二)

版权声明:Genius https://blog.csdn.net/weixin_41987706/article/details/91605327

夜光序言:

 

 

花落尘埃,等一人归来,静听雨打窗台。

朱门微开,留倩影徘徊,遥寄千里之外。

 

正文:

链路层编址

节点(即主机和路由器)的端口(包括有线、无线的)都有链路层地址。


1 MAC 地址

事实上,并不是节点(即主机或路由器)具有 MAC 地址,而是节点的网卡具有链路层地

址。LAN 地址有各种不同的称呼:LAN 地址、物理地址、MAC 地址、以太网地址

MAC 地址长度为 6 字节,共有 248个可能的 LAN 地址。

IEEE 在管理着该 MAC 地址空间。当一个公司要生产网卡时,它支付象征性的费用购买组成上述 248个地址的一块地址空间。


IEEE 分配给这个公司一个前24 比特固定的MAC 地址, 让公司自己为每个网卡生成后 24 比特。

用软件可以改变一块网卡的 MAC 地址。

当某网卡要向某些目的网卡发送一个帧时,发送方将接收方的 MAC 地址插人到该帧中, 并将该帧发送到 LAN 上。接收到该帧的每个网卡将检查帧中的目的 MAC 地址是否与它自己的 MAC 地址匹配。如果匹配,该网卡提取出封装的数据报,并将该数据报沿协议层次向上传递给上层协议。如果不匹配,该网卡丢弃该帧。


有时发送方要让 LAN 上所有人来接收并处理它发送的帧。在这种情况下,发送方需要 使用特殊的 MAC 广播地址。对于使用 6 字节地址的 LAN(例如以太网和令牌传递 LAN)来说,

广播地址是 48 个连续的 1 组成的字符串(即十六进制表示的 FF-FF-FF-FF-FF-FF)


2 地址解析协议 ARP

因为存在网络层地址(IP 地址)和链路层地址(MAC 地址),所以需要在它们之间进行转换。

为了发送数据报,源节点不仅必须要向它的网卡提供 IP 数据报,而且要提供目的节点的 MAC 地址。

但是发送节点如何确定目的 IP 地址的 MAC 地址呢? 它使用 ARP

在发送节点中的 ARP 协议模块将使用一个 ARP 表,取 IP 地址作为输入,查表得到相应的 MAC 地址。

ARP 表包含 IP 地址到 MAC 地址的映射关系。每个表项还包含一个生存期(TTL)值,它表示表项的有效时间。

如果 ARP 表中没有 IP 地址对应的 MAC 地址,发送节点用 ARP 协议查询来解析这个地址。

首先,发送节点构造一个 ARP 查询分组,并且指示要求网卡用 MAC 广播地址(即 FF-FF-FF-FF-FF-FF)来发送这个分组。其他节点收到查询请求后,每个节点都会检查它的 IP 地址是否与 ARP 查询中的目的 IP 地址相匹配。

一个匹配的节点给查询节点发送回带 IP 地址的 ARP 分组。

查询 ARP 消息是在广播帧中发送的,而响应 ARP 消息在一个标准帧中发送。

一个节点接口的 ARP 表是自动建立的(它不需要系统管理员来配置),在主机中可以使用ARP 命令查看。

同一个子网中,数据报是直接交付的;当需要发送数据报到子网以外的节点时:

首先数据报必须发送给路由器端口(网关)。

路由器在确定该数据报要被转发的正确端口后,通过查询路由器中的转发表来找到输出端口。

输出端口把这个数据报封装到一个新的帧中,并将帧发送进入下一个子网。

也就是说数据报是被重新封装(具有不同目的/MAC 地址的帧)后发送出去的。

猜你喜欢

转载自blog.csdn.net/weixin_41987706/article/details/91605327