网站大量收购闲置独家精品文档,联系QQ:2885784924

ping命令的实现详解.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ping命令的实现详解

当实现了对enc28j60的驱动后,我们就可以利用enc28j60来制定自己的TCP/IP协议协议了,本章主要以实现ping命令来实现对arp、ICMP数据包进行封装。 要实现ping命令,主要分为两大步,一是对数据链路层的arp包进行封装,通过被ping主机的ip地址实现对其MAC地址的解析,二是对ICMP的数据包进行封装,实现ping命令。 ARP协议 地址解析协议(ARP)是联系IP协议和LAN协议的桥梁,它的应用范围是局域网(LAN),如以太网、FDDI、令牌网等,它是基于访问共享和广播技术的协议。该协议把节点的IP解析成对应的MAC地址(即物理地址),它可以在局域网内寻找IP所对应的MAC地址,并保持起来以供发送使用。ARP协议是基于数据链路层协议之上的,但它不属于网络层协议,它是数据链路层和网络层之间的通道,他属于数据链路层的一部分。ARP由两种帧组成,一种是请求帧,即在网络里面查找IP地址所对应的MAC地址;另一种是应答帧,即回答该IP地址所对应的MAC地址是多少。请求帧由要发送IP报的节点发出,它是一个广播报,子网中每一个节点都能够收到。各节点收到后,如果目标IP和自己的IP相同,就发送一个ARP应答报,否则就丢弃。当发送请求帧的节点接收到应答报后,就可以知道了对方的MAC地址,即可发送IP报。 ARP帧的以太网类型是0x0806,ARP帧不包括IP帧,总共有28个字节,ARP帧具体结构如图1.1所示: 图1.1ARP帧结构 ARP帧结构各字段含义如表1.1所示: 表1.1 ARP帧各字段含义 字段名称 字节长度 描述 硬件类型 2字节 指出数据链路层的协议,如0x0001表示以太网,0x0006表示令牌网 协议类型 2字节 指出要解析的协议,如0x0800表示该ARP报要解析的协议为IP协议 硬件地址长度 1字节 指出物理地址的长度,如以太网MAC地址长度是6字节,该字段就为0x06 协议地址长度 1字节 指出要解析的协议地址的长度,如IP协议的IP地址长度为4字节,该字段就为0x04 操作 2字节 用于表示该ARP帧的类型,如0x0001表示请求帧,0x0002表示应答帧 发送端MAC地址 6字节 发送端硬件地址 发送端IP地址 4字节 发送端IP地址 接收端MAC地址 6字节 接收端硬件地址 接收端IP地址 4字节 接收端IP地址 ARP帧分为请求帧与应答帧,下面,通过CommView找包软件具体对ARP帧进行分析。 请求帧如下: 分析 由于ARP处于数据链路层,而在数据链路层下还有物理层,所以在发送ARP数据帧时,前面14个字节为以太网帧。 EthernetII网络协议层分析 发送目标的MAC地址为FF:FF:FF:FF:FF:FF,即广播地址,本网段所以节点都能接受到,发送源MAC地址为00:26:82:D0:15:BA,下层协议为0x0806,即为ARP协议。 实际EthernetII网络协议层接受数据 FF FF FF FF FF FF 00 26-82 D0 15 BA 08 06 ARP协议分析 硬件类型为以太网类型0x0001,要解析的协议类型为0x0800,即为IP协议,硬件地址长度为6,协议地址长度为4,操作为请求0x0001,发送端源MAC地址为00:26:82:D0:15:BA,发送端源IP地址为192.168.25.64,目标MAC地址为00:00:00:00:00:00,目标IP地址为192.168.25.6。 实际接受ARP帧数据 00 01 08 00 06 04 00 01 00 26-82 D0 15 BA C0 A8 19 40 00 00 00 00 00 00 C0 A8 19 06 应答帧如下 EthernetII网络协议层分析 发送目标的MAC地址为00:26:82:D0:15:BA,发送源MAC地址为11:22:33:44:55:66,下层协议为0x0806,即为ARP协议。 实际EthernetII网络协议层接受数据 00 26 82 D0 15 BA 11 22-33 44 55 66 08 06 ARP协议分析 硬件类型为以太网类型0x0001,要解析的协议类型为0x0800,即为IP协议,硬件地址长度为6,协议地址长度为4,操作为应答0x0002,发送端源MAC地址为11:22:33:44:55:66,发送端源IP地址为192.168.25.6,目标MAC地址为00:26:82:D0:15:BA,目标IP地址为192.168.25.64。 实际接受ARP帧数据 00 01 08 00 06 04 00 02 11 22-33 44

您可能关注的文档

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档