ARP网络协议工作原理
发布时间:2008/12/31 0:00:00 访问次数:819
假设网络中有两个节点a和b,如果a需要把ip数据包通过网络发送到b,那么a首先在自己的缓存中搜索和b关联的表目,如果查找成功,就使用表中对应的mac地址来发送数据;如果查找关联表目失败,a就生成一个以太网的广播帧,并在帧中填入a的ip地址、a的mac地址、b的ip地址、协议类型等字段,形成一个arp请求帧。
b接收到a发出的arp请求(广播)帧后,首先根据a的信息刷新自己的arp缓存,以节省不必要的arp通信,然后生成一个arp应答帧,在其中填入b的mac地址,并把应答帧通过以太网发送回a。a将b的arp信息写入高速缓存,完成一次arp请求和应答过程。
即使没有发送arp请求,当收到任何格式正确的arp应答帧时,也要对此帧作出响应,刷新自己arp缓存中的相应表。
arp报文格式如表所示。
表中每行为32个二进制位,也就是4个8位组。硬件类型字段(2字节)指明了发送方想知道的硬件接口类型,以太网对应数值为十六进制“0001”。协议类型字段(2字节)指明了发送方提供的高层协议类型,p协议对应数值为十六进制“0806”。硬件地址长度字段(1字节)和逻辑地址长度字段(1字节)指明了硬件(2字节)地址和高层协议地址的长度,这样arp报文就可以在任意硬件和任意高层协议的网络中使用。操作字段(2字节)指明了arp帧所进行的操作类型,arp请求为1,arp响应为2,rarp请求为3,rarp响应为4。发送和接收端硬件地址字段(6字节)为相应机器的物理mac地址,发送和接收端ip地址字段(4字节)为相应的高层ip地址。
以下是捕获的一个arp请求帧和一个arp应答帧,它显示了当ip地址为192.168.1.23的a访问ip地址为192.168.1.1的b时,a通过广播帧发出arp请求并得到b的应答帧的过程。
****a(192.168,1.17)的arp请求报文
欢迎转载,信息来源维库电子市场网(www.dzsc.com)
假设网络中有两个节点a和b,如果a需要把ip数据包通过网络发送到b,那么a首先在自己的缓存中搜索和b关联的表目,如果查找成功,就使用表中对应的mac地址来发送数据;如果查找关联表目失败,a就生成一个以太网的广播帧,并在帧中填入a的ip地址、a的mac地址、b的ip地址、协议类型等字段,形成一个arp请求帧。
b接收到a发出的arp请求(广播)帧后,首先根据a的信息刷新自己的arp缓存,以节省不必要的arp通信,然后生成一个arp应答帧,在其中填入b的mac地址,并把应答帧通过以太网发送回a。a将b的arp信息写入高速缓存,完成一次arp请求和应答过程。
即使没有发送arp请求,当收到任何格式正确的arp应答帧时,也要对此帧作出响应,刷新自己arp缓存中的相应表。
arp报文格式如表所示。
表中每行为32个二进制位,也就是4个8位组。硬件类型字段(2字节)指明了发送方想知道的硬件接口类型,以太网对应数值为十六进制“0001”。协议类型字段(2字节)指明了发送方提供的高层协议类型,p协议对应数值为十六进制“0806”。硬件地址长度字段(1字节)和逻辑地址长度字段(1字节)指明了硬件(2字节)地址和高层协议地址的长度,这样arp报文就可以在任意硬件和任意高层协议的网络中使用。操作字段(2字节)指明了arp帧所进行的操作类型,arp请求为1,arp响应为2,rarp请求为3,rarp响应为4。发送和接收端硬件地址字段(6字节)为相应机器的物理mac地址,发送和接收端ip地址字段(4字节)为相应的高层ip地址。
以下是捕获的一个arp请求帧和一个arp应答帧,它显示了当ip地址为192.168.1.23的a访问ip地址为192.168.1.1的b时,a通过广播帧发出arp请求并得到b的应答帧的过程。
****a(192.168,1.17)的arp请求报文
欢迎转载,信息来源维库电子市场网(www.dzsc.com)