1.ARP 协议介绍
ARP 是地址解析协议(Reverse Address Resolution Protocol)的缩写,负责实现从IP 地址到物理地址(如以太网MAC 地址)的映射。在实际通信中,物理网络使用硬件地址进行报文传输。IP报文在封装为数据链路层帧进行传送时,就有必要把 IP地址转换为对应的硬件地址,ARP正是动态地完成这一功能的。
(1)ARP 报文格式
图1 ARP 报文格式
ARP 协议报文是定长的,其格式如图1 所示,报文中每一字段的含义如下:
* 硬件类型:表示物理网络的类型,“0X0001”表示以太网;
* 协议类型:表示网络网络协议类型,“0X0800”表示IP 协议;
* 硬件地址长度:指定源/ 目的站物理地址的长度,单位为字节;
* 协议地址长度:指定源/ 目的站IP 地址的长度,单位为字节;
* 操作:指定该报文的类型,“1”为ARP 请求报文,“2”为ARP 响应报文;
* 源端硬件/IP 地址:由ARP 请求者填充;
* 目的站物理地址:在请求报文中为0,在响应报文中,由由发送响应报文的主机填写接收该报文的目的主机的物理地址;
* 目的站IP 地址:由ARP 请求者填充,指源端想要知道的主机的IP 地址。只有IP 地址等于该IP 地址的主机才向源主机发送相应报文。
(2)ARP 的工作方式
在以太网中,每台使用ARP 协议实现地址解析的主机都在自己的高速缓存中维护着一个 地址映射表,这个ARP表中存放着最近和它通信的同网络中的计算机的 IP 地址和对应的MAC 地址。
注意:不同网络中的IP地址将对应网关。
当两台计算机通信时,源主机首先查看自己的ARP表中是否有目的主机的 IP 地址项,若有则使用对应的MAC 地址直接向目的主机发送信息;否则就向网络中广播一个ARP请求报文,当网络中的主机收到该ARP请求报文时,首先查看报文中的目的IP 地址是否与自己的IP 地址相符,若相符则将请求报文中的源IP 地址和MAC 地址写入自己的ARP表中;然后,创建一个ARP响应报文,将自己的MAC 地址填入该响应报文中,发送给原主机。
注意:ARP响应报文不再广播,而是直接发送给请求者。
源主机收到响应报文后,取出目的IP 地址和 MAC 地址加入到自己的 ARP 表中,并利用获得的目的MAC 地址向目的端主机发送信息。
在实际中,为了节省内存空间和ARP 表的查询时间,若某一个ARP 地址项很久没有使用,则会从地址映射表中删除。
2.Arp 命令简介
本次实验使用的Windows自带的Arp命令提供了显示和修改地址解析协议所使用的地址映射表的功能。
Arp 命令的格式要求如下:
ARP -s inet_addr eth_addr [if_addr]
ARP -d inet_addr [if_addr]
ARP -a [inet_addr] [-N if_addr]
其中:
* -s:在ARP 缓存中添加表项:将 IP地址 inet_addr 和物理地址ether_addr关联,物理地址由以连字符分隔的6个十六进制数给定,使用点分十进制标记指定IP地址,添加项是永久性的;
* -d:删除由inet_addr指定的表项;
* -a:显示当前ARP表,如果指定了inet_addr则只显示指定计算机的IP和物理地址;
* inet_addr:以点分十进制标记指定IP地址;
* -N:显示由if_addr指定的ARP表项;
* if_addr:指定需要选择或修改其地址映射表接口的IP地址;
* ether_addr:指定物理地址;
3.实验环境与说明
(1)实验目的
分析ARP 协议的报文格式,理解ARP 协议的解析过程。
(2)实验设备和连接
实验设备和连接图如图2所示,一台S2126G交换机连接了2台PC机,分别命名为PC1、PC2,交换机命名为Switch。
图2 ARP 协议分析实验连接图
4.实验步骤
步骤1:按照如图2所示连接好设备,配置PC1和PC2的IP地址;
步骤2:在: PC1、PC2两台计算机上执行如下命令,清除ARP缓存: ARP –d

步骤3:在PC1、PC2两台计算机上执行如下命令,查看高速缓存中的ARP地址映射表的内容: ARP –a

步骤 4:在PC1和PC2上运行 Wireshark 截获报文
步骤5:在主机PC1上执行Ping命令向PC2发送数据报;
步骤6:执行完毕,保存截获的报文并命名为arp-1;
步骤7:在PC1、PC2两台计算机上再次执行ARP–a命令,查看高速缓存中的ARP 地址映射表的内容:

1)这次看到的内容和步骤3 的内容相同吗?结合两次看到的结果,理解ARP 高速缓存的作用。
不同,ARP高速缓存里边保存了之前进行ARP会话时返回的ARP应答中的IP地址和MAC地址对应列表。一般一条记录保存20分钟左右。目的是:下次再要访问ARP高速缓存中的IP地址的主机时,不需要再次发送ARP请求去获取MAC地址。直接从高速缓存中读取就可以了。可以有效缓解链路的压力。
2)把这次看到到的高速缓存中的ARP 地址映射表写出来。

步骤8:重复步骤:4—5,将此结果保存为arp-2;
步骤9:打开arp-1,完成以下各题:
1)在截获的报文中由几个ARP报文?在以太帧中,ARP协议类型的代码值是什么?
有两类ARP报文,ARP协议类型的代码值是0x0800
2)打开arp-2,比较两次截获的报文有何区别?分析其原因。
不需要在进行广播ARP了,因为第一次连接时已经广播过了,已经有了记录。
3)分析arp-1中ARP报文的结构,完成表1。

表1 ARP 报文分析
| ARP 请求报文 | ARP 应答报文 | ||
| 字段 | 报文信息及参数 | 字段 | 报文信息及参数 |
| 硬件类型 | 0x0001 | 硬件类型 | 0x0001 |
| 协议类型 | 0x0800 | 协议类型 | 0x0800 |
| 硬件地址长度 | 6 | 硬件地址长度 | 6 |
| 协议地址长度 | 4 | 协议地址长度 | 4 |
| 操作 | Request(0x0001) | 操作 | Reply(0x0002) |
| 源站物理地址 | 48:0f:cf:37:a7:90 | 源站物理地址 | 48:0f:cf:37:a2:6d |
| 源站IP 地址 | 172.27.63.32 | 源站IP 地址 | 172.27.63.33 |
| 目的站物理地址 | 00:00:00_00:00:00 | 目的站物理地址 | 48:0f:cf:37:a2:6d |
| 目的站IP 地址 | 172.27.63.33 | 目的站IP 地址 | 172.27.63.60 |

最近在学习CAN,记录一下,也供大家参考交流。推荐几个我觉得很好的CAN学习,本文也是在看了他们的好文之后做的笔记首先是瑞萨的CAN入门,真的通透;秀!靠这篇我竟然2天理解了CAN协议!实战STM32F4CAN!原文链接:https://blog.csdn.net/XiaoXiaoPengBo/article/details/116206252CAN详解(小白教程)原文链接:https://blog.csdn.net/xwwwj/article/details/105372234一篇易懂的CAN通讯协议指南1一篇易懂的CAN通讯协议指南1-知乎(zhihu.com)视频推荐CAN总线个人知识总
尝试通过SSL连接到ImgurAPI时出现错误。这是代码和错误:API_URI=URI.parse('https://api.imgur.com')API_PUBLIC_KEY='Client-ID--'ENDPOINTS={:image=>'/3/image',:gallery=>'/3/gallery'}#Public:Uploadanimage##args-Theimagepathfortheimagetoupload#defupload(image_path)http=Net::HTTP.new(API_URI.host)http.use_ssl=truehttp.verify
目录0专栏介绍1平面2R机器人概述2运动学建模2.1正运动学模型2.2逆运动学模型2.3机器人运动学仿真3动力学建模3.1计算动能3.2势能计算与动力学方程3.3动力学仿真0专栏介绍?附C++/Python/Matlab全套代码?课程设计、毕业设计、创新竞赛必备!详细介绍全局规划(图搜索、采样法、智能算法等);局部规划(DWA、APF等);曲线优化(贝塞尔曲线、B样条曲线等)。?详情:图解自动驾驶中的运动规划(MotionPlanning),附几十种规划算法1平面2R机器人概述如图1所示为本文的研究本体——平面2R机器人。对参数进行如下定义:机器人广义坐标
网站的日志分析,是seo优化不可忽视的一门功课,但网站越大,每天产生的日志就越大,大站一天都可以产生几个G的网站日志,如果光靠肉眼去分析,那可能看到猴年马月都看不完,因此借助网站日志分析工具去分析网站日志,那将会使网站日志分析工作变得更简单。下面推荐两款网站日志分析软件。第一款:逆火网站日志分析器逆火网站日志分析器是一款功能全面的网站服务器日志分析软件。通过分析网站的日志文件,不仅能够精准的知道网站的访问量、网站的访问来源,网站的广告点击,访客的地区统计,搜索引擎关键字查询等,还能够一次性分析多个网站的日志文件,让你轻松管理网站。逆火网站日志分析器下载地址:https://pan.baidu.
一、什么是MQTT协议MessageQueuingTelemetryTransport:消息队列遥测传输协议。是一种基于客户端-服务端的发布/订阅模式。与HTTP一样,基于TCP/IP协议之上的通讯协议,提供有序、无损、双向连接,由IBM(蓝色巨人)发布。原理:(1)MQTT协议身份和消息格式有三种身份:发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)。其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。MQTT传输的消息分为:主题(Topic)和负载(payload)两部分Topic,可以理解为消息的类型,订阅者订阅(Su
一、机器人介绍 此处是基于MATLABRVC工具箱,对ABB-IRB-1200型号的微型机械臂进行正逆向运动学分析,并利Simulink工具实现对机械臂进行具有动力学参数的末端轨迹规划仿真,最后根据机械模型设计Simulink-Adams联合仿真。 图1.ABBIRB 1200尺寸参数示意图ABBIRB 1200提供的两种型号广泛适用于各作业,且两者间零部件通用,两种型号的工作范围分别为700 mm 和 900 mm,大有效负载分别为 7 kg 和5 kg。 IRB 1200 能够在狭小空间内能发挥其工作范围与性能优势,具有全新的设计、小型化的体积、高效的性能、易于集成、便捷的接
目录一.大致如下常见问题:(1)找不到程序所依赖的Qt库version`Qt_5'notfound(requiredby(2)CouldnotLoadtheQtplatformplugin"xcb"in""eventhoughitwasfound(3)打包到在不同的linux系统下,或者打包到高版本的相同系统下,运行程序时,直接提示段错误即segmentationfault,或者Illegalinstruction(coredumped)非法指令(4)ldd应用程序或者库,查看运行所依赖的库时,直接报段错误二.问题逐个分析,得出解决方法:(1)找不到程序所依赖的Qt库version`Qt_5'
我想使用ruby-prof和JMeter分析Rails应用程序。我对分析特定Controller/操作/或模型方法的建议方法不感兴趣,我想分析完整堆栈,从上到下。所以我运行这样的东西:RAILS_ENV=productionruby-prof-fprof.outscript/server>/dev/null然后我在上面运行我的JMeter测试计划。然而,问题是使用CTRL+C或SIGKILL中断它也会在ruby-prof可以写入任何输出之前杀死它。如何在不中断ruby-prof的情况下停止mongrel服务器? 最佳答案
一、RIPV2协议简介 RIP(RoutingInformationProtocol)路由协议是一种相对古老,在小型以及同介质网络中得到了广泛应用的一种路由协议。RIP采用距离向量算法,是一种距离向量协议。RIP-1是有类别路由协议(ClassfulRoutingProtocol),它只支持以广播方式发布协议报文。RIP-1的协议报文无法携带掩码信息,它只能识别A、B、C类这样的自然网段的路由,因此RIP-1不支持非连续子网(DiscontiguousSubnet)。RIP-2是一种无类别路由协议(ClasslessRoutingProtocol),支持路由标记,在路由策略中可根据路由标记对
文章目录认识unity打包目录结构游戏逆向流程Unity游戏攻击面可被攻击原因mono的打包建议方案锁血飞天无限金币攻击力翻倍以上统称内存挂透视自瞄压枪瞬移内购破解Unity游戏防御开发时注意数据安全接入第三方反作弊系统外挂检测思路狠人自爆实战查看目录结构用il2cppdumper例子2-森林whoishe后记认识unity打包目录结构dll一般很大,因为里面是所有的游戏功能编译成的二进制码游戏逆向流程开发人员代码被编译打包到GameAssembly.dll中使用il2ppDumper工具,并借助游戏名_Data\il2cpp_data\Metadata\global-metadata.dat