TCP/IP-ARP
作者:Danbo 2015-8-21
当一台主机把以太网数据帧发送到位于同一局域网上的另一台主机时,是根据48bit的以太网地址来确定目的接口的。设备驱动程序从不检查IP数据报中的目的IP地址。
地址解析为这两种不同的地址形式提供映射: 32 bit的I P地址和数据链路层使用的任何类型的地址。
A R P为I P地址到对应的硬件地址之间提供动态映射。我们之所以用动态这个词是因为这个过程是自动完成的,一般应用程序用户或系统管理员不必关心。
R A R P是被那些没有磁盘驱动器的系统使用(一般是无盘工作站或X终端),它需要系统管理员进行手工设置。
ARP操作的一个例子:
以太网中的ARP请求或应答分组的格式
以太网报头中的前两个字段是以太网的源地址和目的地址。目的地址为全1的特殊地址是广播地址。电缆上的所有以太网接口都要接收广播的数据帧。
两个字节长的以太网帧类型表示后面数据的类型。对于A R P请求或应答来说,该字段的值为0 x 0 8 0 6。
形容词h a r d w a r e (硬件)和p r o t o c o l (协议)用来描述A R P分组中的各个字段。例如,一个A R P请求分组询问协议地址(这里是I P地址)对应的硬件地址(这里是以太网地址)。
硬件类型字段表示硬件地址的类型。它的值为1即表示以太网地址。
协议类型字段表示要映射的协议地址类型。它的值为0 x 0 8 0 0即表示I P地址。
操作字段指出四种操作类型,它们是A R P请求(值为1)、A R P应答(值为2)、R A R P请求(值为3)和R A R P应答(值为4)
其抓包格式如下图:
arp广播请求,单播回应。
二层交换机的工作过程:
1.首先PC1发送一个ARP广播;
2.交换机收到这个包后,首先更新自己的CAM表(接PC1的端口与PC1的MAC地址绑定关系)
3.交换机向所有端口泛洪该广播包。
4.局域网内的所有PC都将更新自己的ARP缓存(IP1--->MAC1)
5.只有目标IP是自己的PC才去回应这个ARP请求包。
6.交换机收到这个回应包后,然后先更新自己的CAM表,然后再去查已经存在的CAM表,然后将其转发到接PC1的端口上。
ARP代理