赞
踩
网络上的通信会使用到逻辑地址和物理地址。逻辑地址允许不同网络以及间接相连的设备之间相互通信,物理地址则用于同一网段中直接使用交换机相互连接的设备之间进行的通信。在大多数情况下,正常通信需要这两种地址协同工作。
我们假设这样一个场景:你需要和网络中的一个设备进行通信,这个设备可能是某种服务器,或者只是你想与之共享文件的另一个工作站。你用来创建这个通信的应用已经得到了这个远程主机的IP地址,也意味着系统已经拥有了所有其需要的信息,用来构建它想要在第3层到第7层中传递的数据包。这时它所需要的唯一信息就是第2层包含有目标主机MAC地址的数据链路层数据。
之所以需要MAC地址,是因为网络中用于连接各个设备的交换机使用了内容寻址寄存器(CAM)。这个表列出了它在每一个端口的所有连接设备的MAC地址。当交换机收到了一个指向特定MAC地址的流量时,它会使用这个表来确定应该使用哪一个端口发送流量。如果目标的MAC地址是未知的,则这个传输设备会首先在它的缓存中查找这个地址,如果没有找到,那么这个地址就需要在网络上进行额外的通信来进行解析了。
TCP/IP网络(基于IPv4)中用来将IP地址解析为MAC地址的过程称为地址解析协议(Address Resolution Protocol, ARP)。这个协议在RFC826中进行了定义,它的解析过程只使用两种数据包:一个ARP请求与一个ARP响应。
这个传输计算机会发出一个ARP请求,基本上就是问“大家好,我的IP地址是192.168.0.101,MAC地址是f2: f2: f2: f2: f2: f2。我需要向那个IP地址是192.168.0.1的家伙发些东西,但我不知道它的硬件地址,你们谁有这个I
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。