arp的工作原理(arp的工作原理是什么)

      最后更新:2024-02-03 20:14

      代理ARP的原理是什么?

      代理ARP原理:对于没有配置缺省网关的计算机要和其他网络中的计算机实现通信,网关收到源计算机的 ARP 请求会使用自己的 MAC 地址与目标计算机的 IP地址对源计算机进行应答。代理ARP就是将一个主机作为对另一个主机ARP进行应答。它能使得在不影响路由表的情况下添加一个新的Router,使得子网对该主机来说变得更透明化。同时也会带来巨大的风险,除了ARP欺骗,和某个网段内的ARP增加,最重要的就是无法对网络拓扑进行网络概括。代理ARP的使用一般是使用在没有配置默认网关和路由策略的网络上的。 代理ARP是ARP协议的一个变种。 原理是: 对于没有配置缺省网关的计算机要和其他网络中的计算机实现通信,网关收到源计算机的 ARP 请求会使用自己的 MAC 地址与目标计算机的 IP地址对源计算机进行应答。代理ARP就是将一个主机作为对另一个主机ARP进行应答。它能使得在不影响路由表的情况下添加一个新的Router,使得子网对该主机来说变得更透明化。同时也会带来巨大的风险,除了ARP欺骗,和某个网段内的ARP增加,最重要的就是无法对网络拓扑进行网络概括。代理ARP的使用一般是使用在没有配置默认网关和路由策略的网络上的。
      代理ARP是ARP协议的一个变种。 原理是: 对于没有配置缺省网关的计算机要和其他网络中的计算机实现通信,网关收到源计算机的 ARP 请求会使用自己的 MAC 地址与目标计算机的 IP地址对源计算机进行应答。代理ARP就是将一个主机作为对另一个主机ARP进行应答。它能使得在不影响路由表的情况下添加一个新的Router,使得子网对该主机来说变得更透明化。同时也会带来巨大的风险,除了ARP欺骗,和某个网段内的ARP增加,最重要的就是无法对网络拓扑进行网络概括。代理ARP的使用一般是使用在没有配置默认网关和路由策略的网络上的。
      代理ARP是ARP协议的一个变种。 对于没有配置缺省网关的计算机要和其他网络中的计算机实现通信,网关收到源计算机的 ARP 请求会使用自己的 MAC 地址与目标计算机的 IP地址对源计算机进行应答。代理ARP就是将一个主机作为对另一个主机ARP进行应答。它能使得在不影响路由表的情况下添加一个新的Router,使得子网对该主机来说变得更透明化。同时也会带来巨大的风险,除了ARP欺骗,和某个网段内的ARP增加,最重要的就是无法对网络拓扑进行网络概括。代理ARP的使用一般是使用在没有配置默认网关和路由策略的网络上的。
      ARP高速缓存中的某一项内容(这个命令格式可以在运行一些例子之前使用,以让我们看清楚ARP的交换过程)。 另外,可以通过选项- s来增加高速缓存中的内容。这个参数需要主机名和以太网地址:对应于主机名的IP地址和以太网地址被增加到高速缓存中。新增加的内容是永久性的(比如,它没有超时值),除非在命令行的末尾附上关键字temp。位于命令行末尾的关键字pub和-s选项一起,可以使系统起着主机ARP代理的作用。系统将回答与主机名对应的IP地址的ARP请求,并以指定的以太网地址作为应答。如果广播的地址是系统本身,那么系统就为指定的主机名起着委托ARP代理的作用。在大多数的TCP/IP实现中,ARP是一个基础协议,但是它的运行对于应用程序或系统管理员来说一般是透明的。ARP高速缓存在它的运行过程中非常关键,我们可以用ARP命令对高速缓存进行检查和操作。高速缓存中的每一项内容都有一个定时器,根据它来删除不完整和完整的表项。ARP命令可以显示和修改ARP高速缓存中的内容。
      内网的机器想要知道外网的IP主机的MAC地址,但是我们知道MAC是工作在数据链路层,MAC是不可能跨路由的,所以,可以通过网关的MAC绑定源主机的IP来实现通信!这就是代理ARP。
      代理ARP的原理是什么?

      ARP的工作原理?

      arp攻击的原理 arp在目前看来可以分为7中之多。1、arp欺骗(网关、pc)2、arp攻击3、arp残缺4、海量arp5、二代arp(假ip、假mac)因为二代的arp最难解决,现在我就分析一下二代arp的问题。现象 ARP出现了新变种,二代ARP攻击已经具有自动传播能力,已有的宏文件绑定方式已经被破,网络有面临新一轮的掉线和卡滞盗号的影响!原理二代ARP主要表现在病毒通过网络访问或是主机间的访问互相传播。由于病毒已经感染到电脑主机,可以轻而易举的清除掉客户机电脑上的ARP静态绑定(首先执行的是arp -d然后在执行的是arp -s ,此时绑定的是一个错误的MAC)伴随着绑定的取消,错误的网关IP和MAC的对应并可以顺利的写到客户机电脑,ARP的攻击又畅通无阻了。通过对arp原理的分析:arp攻击的一般解决办法如下 :1)部分用户采用的“双/单项绑定”后,ARP攻击得到了一定的控制。面临问题双绑和单绑都需要在客户机上绑定。二代ARP攻击会清除电脑上的绑定,使得电脑静态绑定的方式无效。(2)部分用户采用一种叫作“循环绑定”的办法,就是每过一段“时间”客户端自动绑定一个“IP/MAC”。面临问题如果我们“循环绑定”的时间较长(比arp清除的时间长)就是说在“循环绑定”进行第二次绑定之前就被清除了,这样对arp的防范仍然无效。如果“循环绑定”的时间过短(比arp清除时间短)这块就会暂用更多的系统资源,这样就是“得不偿失”(3)部分用户采用一种叫作“arp防护”,就是网关每过一段时间按照一定的“频率”在内网发送正确网关“IP/MAC”面临问题如果发送的“频率”过快(每秒发送的ARP多)就会严重的消耗内网的资源(容易造成内网的堵塞),如果发送“频率”太慢(没有arp协议攻击发出来频率高)在arp防范上面没有丝毫的作用。最彻底的解决办法(4)arp是个“双头怪”要想彻底解决必须要“首尾兼顾”有两种方式可以实现第一 采用“看守式绑定”的方法,实时监控电脑ARP缓存,确保缓存内网关MAC和IP的正确对应。在arp缓存表里会有一个静态的绑定,如果受到arp的攻击,或只要有公网的请求时,这个静态的绑定又会自动的跳出,所以并不影响网络的正确的访问。这种方式是安全与网卡功能融合的一种表现,也叫作“终端抑制” 第二就是在网络接入架构上要有“安全和网络功能的融合”就是在接入网关做NAT的时候不是按照传统路由那样根据“MAC/IP”映射表来转发数据,而是根据他们在NAT表中的MAC来确定(这样就会是只要数据可以转发出去就一定可以回来)就算ARP大规模的爆发,arp表也混乱了但是并不会给我们的网络造成任何影响。(不看IP/MAC映射表)这种方法在现有控制ARP中也是最彻底的。也被称为是“免疫网络”的重要特征。
      ARP协议工作原理
      在任何时候,当主机或路由器有数据报要发送给另一个主机或路由器时,它必须有接收站的逻辑(IP)地址。但是IP数据报必须封装成帧才能通过物理网络。这就表示,发送站必须有接收站的物理地址。因此需要一个从逻辑地址到物理地址的映射。 如我们在前面讲过的,使用静态映射和动态映射都可以做到这点。逻辑地址和物理地址之间的关联可以静态的存储在一个表中,发送站可在表中查找出对应于逻辑地址的物理地址,但我们在前面已讨论过,这不是一个很好的解决方法。每当物理地址发生变化时,这个表就必须更新。频繁的在所有机器上对表进行更新是非常麻烦的任务。但这种映射可以做成为动态的,即发送站在需要时可以请求接收站宣布其物理地址。ARP就是为此目的而设计的。ARP将一个IP地址与其物理地址关连起来。在典型的物理网络上,如局域网,链路上的每一个设备通常是用写在NIC(网络接口卡)中的物理地址来标识。任何时候当主机或路由器需要找出另一个主机或路由器在此网络上的物理地址时,它就发送一个ARP查询分组。这个分组包括发送站的物理地址和IP地址,以及接收站的IP地址。因为发送站不知道接收站的物理地址,查询就在网络上广播。每一个在网络上的主机或路由器都接收和处理这个ARP查询分组,但只有目的接受者才识别其IP地址,并发回ARP响应分组。这个分组直接用单播发送给查询者,并使用接收到的查询分组中所用的物理地址。这里有一点要注意:每个ARP广播中都包含发送方的IP地址到物理地址的绑定;接收方在处理ARP分组之前,先更新它们缓存中的IP到物理地址的绑定信息。左边的系统(A)有一个分组要交付给IP地址为141.23.56.23的另一个系统(B)。系统A需要将分组传递给它的数据链路层进行实际的交付,但它不知道接收者的物理地址。它使用ARP的服务,请求ARP协议发送一个广播ARP请求分组,以查询IP地址为141.23.56.23的系统的物理地址。 在该物理网络上的每一个系统都接收到此分组,但只有系统B才回答。现在系统A就可以使用接收到的物理地址来发送所有的到此目的地的分组。
      ARP的工作原理?

      ARP防火墙的工作原理

      ARP是Address Resolution Protocol(地址转换协议)的简称,是TCP/IP协议中最底层的协议之一。它的作用是完成IP地址到MAC(物理地址)的转换。在局域网中两台计算机之间的通讯,或者局域网中的计算机将IP数据包转发给网关的时候,网卡都需要知道目标计算机的物理地址,以填充物理帧中的目的地址。假设同一以太网中的计算机A(192.168.0.1)需要向计算机B(192.168.0.2)发送数据报,而此时A尚不知道B的物理地址。为了获得B的物理地址,A在局域网上发送ARP广播,查询192.168.0.2这个物理地址,同时在ARP包中填入自己的物理地址Ma,相当于发出这样的询问“谁拿了192.168.0.2这个地址?请回Ma这个物理地址。”计算机B在收到了这个查询以后,以Ma为目的地址发回一个ARP包,里面包含了自己的物理地址。这样通讯的双方都了解了对方的物理地址,通讯过程正式建立。通常ARP协议都在支持广播的网络上使用,比方以太网,这种数据包不能跨物理网段使用,即不能跨越一个路由器(除路由器本身还用作ARP代理以外)。在实际的ARP协议软件的实现中还有一些应该注意的事项:每台计算机上都有一个ARP缓冲,它保存了一定数量的从IP地址到MAC地址的映射,同时当一个ARP广播到来时,虽然这个ARP广播可能与它无关,但ARP协议软件也会把其中的物理地址与IP地址的映射记录下来,这样做的好处是能够减少ARP报在局域网上发送的次数。同时,ARP缓冲中IP地址与物理地址之间的映射并不是一但生成就永久有效,每一个ARP映射表项都有自己的时延,如果过了一定的时间还没有新的ARP到来,那么这个ARP映射就从缓冲中被删除了。那么下一次计算机向这个IP地址发送数据包的时候必须来一次新的查询。本地网络IP 查找的原理。事实上Windows 本身就用ARP来确定自己的IP地址是否与网络上的另一台计算机发生了冲突。当一个ARP包到来时,Windows 如果检查到其中的IP地址与本机上的相同,而物理地址不同,这时Windows 就会向用户报告这个IP地址已经被别人占用。非常有意思的是,Windows 对待IP地址是以先来后到的顺序分配,如果已经有人先占了,那么本机的网络接口就会被禁用。这也是非常恼人的“特色”因为一旦开机后有了第一次冲突,以后的任何网络操作就都无效了。Windows XP 有了一定的进步,它在发现冲突以后并不禁用接口,而是允许用户进行修复。其实用sniffer可以看到所谓的“修复”也不过是发了几个ARP包出去,把IP“抢”回来。在以前的文章中我描述了一个用ICMP 回送请求(类似PING)进行IP查找的程序。这个程序用并发的几十个线程同时PING网络上的多台计算机,如果回送请求被正确的应答了,那么可以认为这个IP地址已经被占用,如果没有,我们就宣称它是空闲的。然而它有优点也有缺点,其优点是能够PING很远的计算机,即使不在同一个物理网段上,缺点是当目标计算机上安装了防火墙并禁止了ICMP包,或者采用了防ICMP flood 攻击的规则以后都有可能让ICMP回送请求得不到应答。ARP的优点与缺点正好与ICMP相反。它无法跨物理网段进行IP查找,但是由于没有防火墙禁止ARP包的通过(想想看,如果禁止了ARP包,也就等于不让人家知道你的物理地址,那么实际上也就是将自己的计算机同网络断开了),所以ARP包的IP查找结果一定是非常精准的。在实现了一个原始的ARP IP查找版本以后,我发现其结果并不准确,有些已经没有人使用的IP地址被错误的报成有人占用了,难道我的判断是错误的?当然不,这种错误的原因是在Windows 的ARP缓冲中。实际上,在发送一个ARP报文的时候,Windows会首先检查本机的ARP缓冲,如果发现了已经有对应的ARP表项,而且还没有过期的话,Windows 并不会发送这个报文,而是直接返回给调用者这个ARP表项的内容。这样一来,假设有计算机中途掉网,而它的ARP表项还没有过期,那么这个程序仍然能够得到它的IP到MAC的映射,自然也就会错误的宣称这个IP地址还在使用中了。在运行这个程序前,我使用arp –d(事实上,在看了本文以后,你就可以实现一个这样的arp程序了)这个命令来删除缓冲中所有的ARP表项,然后得到的结果就非常准确了。IP Helper API 提供了管理ARP缓冲的过程,所以我修改了这个程序,把arp –d的功能集成到了自己的程序中来。如果看看《使用TCP/IP协议实际网际互连(第二卷)》你就会明白ARP协议软件中的诸多问题。IP Helper API GetIpNetTable 函数能够提取出本机上的所有ARP表项。使用它的方法与上一篇文章中使用的函数相当的类似,你也必须两次使用它,第一次获得缓冲的大小,而第二次获得实际的ARP表。这个映射表是以数组的方式指出的。其结构如下:typedef struct _MIB_IPNETTABLE {DWORD dwNumEntries; //数组的大小MIB_IPNETROW table[ANY_SIZE]; //数组本身} MIB_IPNETTABLE, *PMIB_IPNETTABLE;而MIB_IPNETROW 的定义:typedef struct _MIB_IPNETROW {DWORD dwIndex; // 网络接口的索引号DWORD dwPhysAddrLen; // 物理地址长度BYTE bPhysAddr[MAXLEN_PHYSADDR]; // 物理地址DWORD dwAddr; // IP地址DWORD dwType; // ARP表项类型} MIB_IPNETROW, *PMIB_IPNETROW;其中dwType 即ARP表项类型是比较重要的东西,因为某些ARP表项一但设定就不再改变,比方本机地址的ARP表项和默认网关的地址表项等等,这些ARP表项并不会“过期”,除非网络故障或者设置改变了以后,会重新生成一次ARP查询。这种表项被称为“静态”的。此时dwType的值为4。在程序中,我们不必删除这类表项(虽然删了它们也不会造成什么后果)。然而在实际的程序中,我使用了FlushIPNetTable这个函数来删除特定网卡上的ARP缓冲。然后是删除一个表项的DeleteIpNetEntry,修改表项的SetIpNetEntry 和添加表项的CreateIpNetEntry 。还有两个管理代理ARP表项的函数,关于代理ARP,可以看看《使用TCP/IP 协议实现网际互连(第一卷)》关于ARP代理的部分,由于与我们的程序无关,就不做介绍了。最后需要详述的函数是SendARP。它的原型如下:DWORD SendARP(IPAddr DestIP, // 目的IP 地址IPAddr SrcIP, // 源IP地址,可选参数,把它填成0不会有问题PULONG pMacAddr, // 返回的物理地址PULONG PhyAddrLen // 物理地址的长度
      ARP防火墙的工作原理

      ARP将IP地址转化成物理地址协议的主要原理是什么?

      ARP--地址解析协议,其实ARP包括两个协议,即ARP和RARP。前者是地址解析协议,即将物理地址转化为IP地址,这个是给电脑用的;后者是反地址解析协议,即将IP地址转化为物理地址,这个主要方便人来记忆的! 这里面用到的原理主要还是数学上面的映射原理,即一个IP地址与一个物理地址一一对应,解析通过DNS服务器,层层查找地址,最后,找到该地址正确的位置!
      ARP欺骗的攻击以其特有的灵活性和高成功率被入侵者所青眯,并且在内网中,这种方法被广泛应用,以至于ARp被称为局域网杀手。 知道网络上的两个节点之间要通信的话都必须遵循一个规则,这个规则是协议,比如最常见的Tcp/IP。其中TCp保证连接以及数据传送的可靠性,而IP则保证把数据包发送到指定位置,因此可以接受数据包的节点必须有个地址,在TCP/IP网络中这个地址就是IP地址,数据就是根据这个地址在网络上传送的。而数据包在到达了最基层的局域网或直接在局域网中传送的时候,寻找目的地不仅仅要依靠Ip地址来识别了。在局域网中,或者我们更精确地说在以太网中,网卡和双绞线组成了数据传送物理终点和传送介质,一个数据包要想到达某台计算机,它必须找到这台计算机的网卡。网卡也有一个地址的,我们称作MAC地址。每一个网卡在被生产出厂的时候都被分配给一个MAC地址,而理论上这个地址是唯一确定的。MAC地址是以-符号分割的六组两个十六进制数组合的一个字符串,如34-C9-08-AE-E9-21,这是MAC的标准式书写,以太网中就是基于MAC地址通信的。在TCP/IP网络中,IP地址是不可少的,遵循TCP/IP协议的软件在发送数据的时候指定地址都必须是一个IP地址,这就要求以太网具有把IP地址转换为MAC地下的能力,这样TCP/IP通信才能正常进行,ARP协议由些而生。ARP即地址解析协议,它负责把IP地址转换为相应的MAC地址。说是相应的,因为每个局域网的计算机在最初进行网络设置的时候,设置一个静态IP,操作系统就会把这个IP和网卡的MAC地址绑定在一起,而如果使用了DHCP服务器分配动态的IP,则在分配到IP的时候,这个IP也就和MAC地址绑定了,也就是形成了一种IP地址和MAC地址对应关系。 看大家最近受ARP攻击的板友不少,查了一些资料整理出来了一些关于ARP方面的知识,希望大家能了解ARP,随后还有一些,今天发上这点,随时整理随时加上,全面的了解ARP工作原理从根本上去解决它。
      ARP将IP地址转化成物理地址协议的主要原理是什么?

      ARP协议的工作原理?

      首先,每台主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC地址的对应关系。当源主机需要将一个数据包要发送到目的主机时,会首先检查自己ARP列表中是否存在该IP地址对应的MAC地址,如果有,就直接将数据包发送到这个MAC地址;如果没有,就向本地网段发起一个ARP请求的广播包,查询此目的主机对应的MAC地址。此ARP请求数据包里包括源主机的IP地址、硬件地址、以及目的主机的IP地址。网络中所有的主机收到这个ARP请求后,会检查数据包中的目的IP是否和自己的IP地址一致。如果不相同就忽略此数据包;如果相同,该主机首先将发送端的MAC地址和IP地址添加到自己的ARP列表中,如果ARP表中已经存在该IP的信息,则将其覆盖,然后给源主机发送一个ARP响应数据包,告诉对方自己是它需要查找的MAC地址;源主机收到这个ARP响应数据包后,将得到的目的主机的IP地址和MAC地址添加到自己的ARP列表中,并利用此信息开始数据的传输。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。例如:A的地址为:IP:192.168.10.1MAC:AA-AA-AA-AA-AA-AA B的地址为:IP:192.168.10.2MAC:BB-BB-BB-BB-BB-BB根据上面的所讲的原理,我们简单说明这个过程:A要和B通讯,A就需要知道B的以太网地址,于是A发送一个ARP请求广播(谁是192.168.10.2,请告诉192.168.10.1),当B收到该广播,就检查自己,结果发现和自己的一致,然后就向A发送一个ARP单播应答(192.168.10.2在BB-BB-BB-BB-BB-BB)。
      ARP协议工作原理
      在TCP/IP协议中,每一个网络结点是用IP地址标识的,IP地址是一个逻辑地址。而在以太网中数据包是靠48位MAC地址(物理地址)寻址的。因此,必须建立IP地址与MAC地址之间的对应(映射)关系,ARP协议就是为完成这个工作而设计的。 TCP/IP协议栈维护着一个ARP cache表,在构造网络数据包时,首先从ARP表中找目标IP对应的MAC地址,如果找不到,就发一个ARP request广播包,请求具有该IP地址的主机报告它的MAC地址,当收到目标IP所有者的ARP reply后,更新ARP cache。ARP cache有老化机制。
      ARP协议的工作原理?

      本文由 在线网速测试 整理编辑,转载请注明出处。

          热门文章

          文章分类