实验6获取以太网中IP地址与MAC地址的对应关系备课讲稿_第1页
实验6获取以太网中IP地址与MAC地址的对应关系备课讲稿_第2页
实验6获取以太网中IP地址与MAC地址的对应关系备课讲稿_第3页
实验6获取以太网中IP地址与MAC地址的对应关系备课讲稿_第4页
实验6获取以太网中IP地址与MAC地址的对应关系备课讲稿_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验6:获取以太网中IP地址与MAC地址的对应关系ARP协议问题的提出互联层通过IP地址指定报文的始发地和目的地低层物理网络使用物理地址表达帧的源和宿地址解析协议ARP以太网使用ARP将IP地址与MAC地址进行动态映射以太网具有固定长度的MAC地址和广播能力ARP协议的基本思想RP协议的改进高速缓存技术高速缓存区中保存最近获得的ARP表项高速缓冲区中ARP表项新鲜性的保持:计时器实验表明高速缓冲区的使用可以大大提高ARP的效率其他改进技术目的主机接收到ARP请求后将源主机的IP地址与物理地址映射关系存入自己的高速缓冲区ARP请求是广播发送的,网络中的所有主机接收到ARP请求后都可以将源主机的IP地址与物理地址映射关系存入自己的高速缓冲区主机启动时主动广播自己的IP地址与物理地址的映射关系以太网中ARP的报文格式ARP报文中各字段的意义硬件类型:以太网接口类型为1协议类型:IP协议类型为080016操作:ARP请求为1,ARP应答为2硬件地址长度:MAC地址长度为6B协议地址长度:IP地址长度为4B源MAC地址:发送方的MAC地址源IP地址:发送方的IP地址目的MAC地址:ARP请求中该字段没有意义;ARP响应中为接收方的MAC地址目的IP地址:ARP请求中为请求解析的IP地址;ARP响应中为接收方的IP地址ARP命令功能:用于查看、添加和删除高速缓存区中的ARP表项高速缓冲区中的ARP表项动态表项:随时间推移自动添加和删除静态表项:一直保留,直到人为删除或重新启动计算机Windows中ARP表项的潜在生命周期:10分钟新表项加入时定时器开始计时表项添加后两分钟内没有被再次使用:删除表项被再次使用:增加2分钟的生命周期表项始终在使用:最长生命周期为10分钟显示高速cache中的ARP表添加和删除ARP表项添加命令:arp–sinet_addreth_addr人为增加ARP表项一定要确保IP地址与MAC地址的对应关系是正确的删除命令:arp–dinet_addrInet_addr为“*”时删除所有表项利用WinPcap获取IP-MAC的对应关系获取本机网卡的MAC和IP地址NetBIOS编程接口与winsock的gethostbyname函数获取的MAC地址和IP地址很难与WinPcap获取的设备接口名对应pcap_findalldevs_ex可以获取本机的网络接口设备列表包含了本机所有网络接口和接口上绑定的IP地址不包含接口的物理地址获取本机网卡的MAC和IP地址获取本机网络接口和接口上绑定的IP地址发送ARP请求,请求本机网络接口上绑定的IP地址与MAC地址的对应关系:本地主机模拟一个远端主机,发送一个ARP请求报文,该请求报文请求本机网络接口上绑定的IP地址与MAC地址的对应关系捕获本机的ARP响应,获取本机网络接口卡的MAC地址发送数据包intpcap_sendpacket( pcap_t *p, u_char buf, int size};发送ARP请求的例子(1)#pragma

pack(1)typedef

structFrameHeader_t{ //帧首部BYTE DesMAC[6]; BYTE SrcMAC[6];WORD FrameType;}FrameHeader_t;typedef

structARPFrame_t{ //ARP帧 FrameHeader_t FrameHeader;WORD HardwareType; WORD ProtocolType; BYTE HLen; BYTE PLen; WORD Operation; BYTE SendHa[6]; DWORD SendIP; BYTE RecvHa[6]; DWORD RecvIP;}ARPFrame_t;#pragma

pack()发送ARP请求的例子(2)ARPFrame_tARPFrame; //将ARPFrame.FrameHeader.DesMAC设置为广播地址。//将ARPFrame.FrameHeader.SrcMAC设置为本机网卡的MAC地址。ARPFrame.FrameHeader.FrameType=htons(0x0806); //帧类型为ARPARPFrame.HardwareType=htons(0x0001); //硬件类型为以太网ARPFrame.ProtocolType=htons(0x0800); //协议类型为IPARPFrame.HLen=6; //硬件地址长度为6ARPFrame.PLen=4; //协议地址长度为4ARPFrame.Operation=htons(0x0001); //操作为ARP请求//将ARPFrame.SendHa设置为本机网卡的MAC地址。//将ARPFrame.SendIP设置为本机网卡上绑定的IP地址。//将ARPFrame.RecvHa设置为0。 //将ARPFrame.RecvIP设置为请求的IP地址;if(pcap_sendpacket(adhandle,(u_char*)&ARPFrame,

sizeof(ARPFrame_t)!=0){ ……//发送错误处理}else{ ……//发送成功}练习和思考

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论