<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"><wml><card  id="index"  title="驽鸟公寓  &raquo; Blog Archive  什么是“ARP”？ | 驽鸟公寓"  ><p>
			标题：什么是“ARP”？<br/>
			时间：2007-10-18 (1:05 下午)<br/>
			分类：<a href="index-wap.php?cat=9" title="View all posts in 电脑网络" >电脑网络</a><br/>
            标签：<a href="index-wap.php?tag=arp">ARP</a><br/>
			作者：驽鸟<br/> 
            <br/>
            ARP
我们知道，当我们在浏览器里面输入网址时，DNS服务器会自动把它解析为IP地址，浏览器实际上查找的是IP地址而不是网址。那么IP地址是如何转换为第二层物理地址（即MAC地址）的呢？在局域网中，这是通过ARP协议来完成的。ARP协议对网络安全具有重要的意义。通过伪造IP地址和MAC地址实现ARP欺骗，能够在网络中产生大量的ARP通信量使网络阻塞。所以网管们应深入理解ARP协议。
一、什么是ARP协议
ARP协议是&#8220;Address Resolution Protocol&#8221;（地址解析协议）的缩写。在局域网中，网络中实际传输的是&#8220;帧&#8221;，帧里面是有目标主机的MAC地址的。在以太网中，一个主机要和另一个主机进行直接通信，必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢？它就是通过地址解析协议获得的。所谓&#8220;地址解析&#8221;就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址，查询目标设备的MAC地址，以保证通信的顺利进行。
二、ARP协议的工作原理
在每台安装有TCP/IP协议的电脑里都有一个ARP缓存表，表里的IP地址与MAC地址是一一对应的，如附表所示。
附表
我们以主机A（192.168.1.5）向主机B（192.168.1.1）发送数据为例。当发送数据时，主机A会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到了，也就知道了目标MAC地址，直接把目标MAC地址写入帧里面发送就可以了；如果在ARP缓存表中没有找到相对应的IP地址，主机A就会在网络上发送一个广播，目标MAC地址是&#8220;FF.FF.FF.FF.FF.FF&#8221;，这表示向同一网段内的所有主机发出这样的询问：&#8220;192.168.1.1的MAC地址是什么？&#8221;网络上其他主机并不响应ARP询问，只有主机B接收到这个帧时，才向主机A做出这样的回应：&#8220;192.168.1.1的MAC地址是00-aa-00-62-c6-09&#8221;。这样，主机A就知道了主机B的MAC地址，它就可以向主机B发送信息了。同时它还更新了自己的ARP缓存表，下次再向主机B发送信息时，直接从ARP缓存表里查找就可以了。ARP缓存表采用了老化机制，在一段时间内如果表中的某一行没有使用，就会被删除，这样可以大大减少ARP缓存表的长度，加快查询速度。
三、如何查看ARP缓存表
ARP缓存表是可以查看的，也可以添加和修改。在命令提示符下，输入&#8220;arp -a&#8221;就可以查看ARP缓存表中的内容了，如附图所示。
用&#8220;arp -d&#8221;命令可以删除ARP表中某一行的内容；用&#8220;arp -s&#8221;可以手动在ARP表中指定IP地址与MAC地址的对应。
四、ARP欺骗
其实，此起彼伏的瞬间掉线或大面积的断网大都是ARP欺骗在作怪。ARP欺骗攻击已经成了破坏网吧经营的罪魁祸首，是网吧老板和网管员的心腹大患。 
从影响网络连接通畅的方式来看，ARP欺骗分为二种，一种是对路由器ARP表的欺骗；另一种是对内网PC的网关欺骗。 
第一种ARP欺骗的原理是&#8212;&#8212;截获网关数据。它通知路由器一系列错误的内网MAC地址，并按照一定的频率不断进行，使真实的地址信息无法通过更新保存在路由器中，结果路由器的所有数据只能发送给错误的MAC地址，造成正常PC无法收到信息。第二种ARP欺骗的原理是&#8212;&#8212;伪造网关。它的原理是建立假网关，让被它欺骗的PC向假网关发数据，而不是通过正常的路由器途径上网。在PC看来，就是上不了网了，&#8220;网络掉线了&#8221;。 
一般来说，ARP欺骗攻击的后果非常严重，大多数情况下会造成大面积掉线。有些网管员对此不甚了解，出现故障时，认为PC没有问题，交换机没掉线的&#8220;本事&#8221;，电信也不承认宽带故障。而且如果第一种ARP欺骗发生时，只要重启路由器，网络就能全面恢复，那问题一定是在路由器了。为此，宽带路由器背了不少&#8220;黑锅&#8221;。 
作为网吧路由器的厂家，对防范ARP欺骗不得已做了不少份内、份外的工作。一、在宽带路由器中把所有PC的IP-MAC输入到一个静态表中，这叫路由器IP-MAC绑定。二、力劝网管员在内网所有PC上设置网关的静态ARP信息，这叫PC机IP-MAC绑定。一般厂家要求两个工作都要做，称其为IP-MAC双向绑定。 
显示和修改&#8220;地址解析协议&#8221;(ARP) 所使用的到以太网的 IP 或令牌环物理地址翻译表。该命令只有在安装了 TCP/IP 协议之后才可用。 
&#160;&#160;&#160; arp -a [inet_addr] [-N [if_addr] 
&#160;&#160;&#160; arp -d inet_addr [if_addr] 
&#160;&#160;&#160; arp -s inet_addr ether_addr [if_addr] 
&#160;&#160;&#160; 参数 
&#160;&#160;&#160; -a 
&#160;&#160;&#160; 通过询问 TCP/IP 显示当前 ARP 项。如果指定了 inet_addr，则只显示指定计算机的 IP 和物理地址。 
&#160;&#160;&#160; -g 
&#160;&#160;&#160; 与 -a 相同。 
&#160;&#160;&#160; inet_addr 
&#160;&#160;&#160; 以加点的十进制标记指定 IP 地址。 
&#160;&#160;&#160; -N 
&#160;&#160;&#160; 显示由 if_addr 指定的网络界面 ARP 项。 
&#160;&#160;&#160; if_addr 
指定需要修改其地址转换表接口的 IP 地址（如果有的话）。如果不存在，将使用第一个可适用的接口。 
&#160;&#160;&#160; -d 
删除由 inet_addr 指定的项。 
&#160;&#160;&#160; -s 
在 ARP 缓存中添加项，将 IP 地址 inet_addr 和物理地址 ether_addr 关联。物理地址由以连字符分隔的6 个十六进制字节给定。使用带点的十进制标记指定 IP 地址。项是永久性的，即在超时到期后项自动从缓存删除。 
&#160;&#160;&#160; ether_addr 
指定物理地址。
五、ARP攻击
ARP协议的基本功能就是通过目标设备的IP地址，查询目标设备的MAC地址，以保证通信的进行。 
基于ARP协议的这一工作特性，黑客向对方计算机不断发送有欺诈性质的ARP数据包，数据包内包含有与当前设备重复的Mac地址，使对方在回应报文时，由于简单的地址重复错误而导致不能进行正常的网络通信。一般情况下，受到ARP攻击的计算机会出现两种现象： 
1.不断弹出&#8220;本机的XXX段硬件地址与网络中的XXX段地址冲突&#8221;的对话框。 
2.计算机不能正常上网，出现网络中断的症状。 
因为这种攻击是利用ARP请求报文进行&#8220;欺骗&#8221;的，所以防火墙会误以为是正常的请求数据包，不予拦截。因此普通的防火墙很难抵挡这种攻击。
            <br/>	
            <span class="stamp">上一篇：</span><a href="index-wap.php?p=132">2008年山东专升本考试跨校和面向社会专升本拟招生专业</a><br/>            <span class="stamp">下一篇：</span><a href="index-wap.php?p=130">山东省物价局、山东省财政厅、山东省教育厅关于我省专升本学生收费问题的通知</a><br/>    
                        
			<br/><a href="index-wap.php">返回首页</a>
<br/>切换访问：<a href="index-wap2.php">2.0版</a> | 1.1版
</p></card></wml>