注册通行证 用户名 密码
  • 文章投稿
  • 博客
  • 论坛
  • 设为首页
  • 加入收藏
jztop.com网络技术
  • 首页
  • | iT新闻
  • | 操作系统
  • | 组网建网
  • | 网络安全
  • | 程序开发
  • | 办公一族
  • | 工具软件
  • | 网页制作
  • | 多媒体制作
  • | 网吧技术
  • | 服务器
  • | 专题教程
Vista | 软件评测 | 系统备份 | 优化 | 进程 | 聊天 | 病毒 | Linux | 黑客 | 防火墙 | 数据库 | Web开发 | Java | Word | 游戏 | 32位开发 | 移动开发
当前位置:首页 > 组网建网 > 组网架设 > 内容正文

使用ARP命令来绑定IP和MAC地址

发布时间:2006-10-16 14:23:36 来源:友佳学院 网友评论 0 条
点击进入《友佳学院》ARP攻击与防范专区(www.jztop.com)
+转载自微软MVP风间子技术文档

前言:我本来没有想过写关于ARP绑定的文章,坦白的说一句,在你理解ARP工作的原理时,这其实比较简单。只是看到最近论坛很多人在问关于绑定IP和MAC地址的问题,

所以才决定写这个文章,希望能一劳永逸

。


作为企业级的路由防火墙,ISA Server并没有提供对于MAC地址的控制功能。不过,你可以使用Windows的命令ARP来实现IP地址和MAC地址的绑定。这篇文章介绍了Windows下ARP协议工作的原理,以及如何使用ARP命令来静态绑定IP地址和MAC地址。

 

ISA Server中没有提供对于MAC地址的控制功能,Why?这是因为MAC地址只能在本地网络中使用,当数据包跨越路由器时,数据包中主机的源MAC地址就会被路由器的出站接口的MAC地址所代替,这个时候,使用MAC地址来进行控制就不适用了。所以只要是企业级的硬件或者软件防火墙,都基本没有提供对MAC地址的控制功能。

不过微软也早就考虑到了这点,在Windows中,如果你安装了TCP/IP网络协议组件,那么你就可以执行命令ARP。ARP命令的作用是查看本机的ARP缓存、静态绑定IP地址和MAC地址和删除静态绑定项。其实绑定IP地址和MAC地址的本意是为了减少ARP广播流量,只是可以利用这一功能来控制IP地址的使用。

在这里我还是先简单的描述一下Windows下ARP协议的工作原理。ARP协议(Address Resolve Protocol,地址解析协议)工作在TCP/IP协议的第二层-数据链路层,用于将IP地址转换为网络接口的硬件地址(媒体访问控制地址,即MAC地址)。

无论是任何高层协议的通讯,最终都将转换为数据链路层硬件地址的通讯。

每台主机都具有一个用于缓存MAC地址的ARP缓存列表,你可以使用命令ARP -a或ARP -g来查看当前的ARP缓存列表。此ARP缓存列表是动态更新的,默认情况下,当其中的缓存项超过两分钟没有活动时,此缓存项就会超时被删除。你可以使用ARP -s来静态绑定IP地址和MAC地址,不过在Windows server 2003和XP以前的Windows系统中,就算你设置了静态MAC地址绑定项,同样会通过接收其他主机的数据包而更新已经绑定的项。

在Windows server 2003和XP中,静态绑定的项不会被动态更新,直到TCP/IP协议终止为止,例如重启计算机

。如果要创建永久的静态MAC地址绑定项,你可以写一个脚本文件来执行ARP静态绑定,然后使用计划任务在启动计算机时执行该脚本即可。

例如A主机的IP地址为192.168.0.1,它现在需要与IP为192.168.0.8的主机(主机B)进行通讯,那么将进行以下动作:

A主机查询自己的ARP缓存列表, 如果发现具有对应于目的IP地址192.168.0.8的MAC地址项,则直接使用此MAC地址项构造并发送以太网数据包,如果没有发现对应的MAC地址项则继续下一步;

A主机发出ARP解析请求广播,目的MAC地址是FF:FF:FF:FF:FF:FF,请求IP为192.168.0.8的主机回复MAC地址;

B主机收到ARP解析请求广播后,回复给A主机一个ARP应答数据包,其中包含自己的IP地址和MAC地址;

A接收到B主机的ARP回复后,将B主机的MAC地址放入自己的ARP缓存列表,然后使用B主机的MAC地址作为目的MAC地址,B主机的IP地址(192.168.0.8)作为目的IP地址, 构造并发送以太网数据包;

如果A主机还要发送数据包给192.168.0.8, 由于在ARP缓存列表中已经具有IP地址192.168.0.8的MAC地址,所以A主机直接使用此MAC地址发送数据包,而不再发送ARP解析请求广播;当此缓存地址项超过两分钟没有活动(没有使用)后,此ARP缓存将超时被删除。

默认情况下ARP缓存的超时时限是两分钟,你可以在注册表中进行修改。可以修改的键值有两个,都位于

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters

修改的键值:

键值1:ArpCacheLife,类型为Dword,单位为秒,默认值为120

键值2:ArpCacheMinReferencedLife,类型为Dword,单位为秒,默认值为600

注意:这些键值默认是不存在的,如果你想修改,必须自行创建;

修改后重启计算机后生效

。

如果ArpCacheLife的值比ArpCacheMinReferencedLife的值大,那么ARP缓存的超时时间设置为ArpCacheLife的值;如果ArpCacheLife的值不存在或者比ArpCacheMinReferencedLife的值小,那么对于未使用的ARP缓存,超时时间设置为120秒;对于正在使用的ARP缓存,超时时间则设置为ArpCacheMinReferencedLife的值。

下图是我们的试验网络结构,ISA Server作为一个边缘防火墙,内部局域网(192.168.0.0/24)通过ISA Server接入Internet。在这个试验中,我将在ISA Server上绑定内部客户True的IP地址192.168.0.8和MAC地址,这样,当True不在线时,另外一个内部客户Fake就算修改自己的IP地址为True的IP地址192.168.0.8,也不能通过ISA Server来上网。



各计算机的TCP/IP设置如下,本次试验不涉及DNS解析,各服务器的DNS服务器设置为空,在试验之前已经确认了网络连接工作正常:



ISA 2004 Firewall:



LAN Interface:

IP:192.168.0.1/24

DG:None

MAC:00:03:47:F4:FC:E7

 



True(将离线):



IP:192.168.0.8/24

DG:192.168.0.1

MAC:00:0D:60:C3:05:34

 



Fake(将修改IP地址为192.168.0.8):



IP:192.168.0.8/24

DG:192.168.0.1

MAC:00:06:D0:06:05:47

 

 

首先,我在ISA Server上使用ARP -S来绑定True的IP地址和MAC地址,运行命令:

ARP -s 192.168.0.8 00-0D-60-C3-05-34

然后执行ARP -a来查看ARP缓存列表,结果如下图所示。你可以看到在ARP缓存列表中IP地址192.168.0.8的类型为static,这表明它是静态项。此时,我们在ISA Server上的绑定就成功了。



现在我们在客户机Fake上,将自己的IP地址修改为192.168.0.8,然后Ping ISA Server:

C:Documents and Settingsadmin>ipconfig /all

Windows IP Configuration

Host Name . . . . . . . . . . . . : anonymous

Primary Dns Suffix . . . . . . . :

Node Type . . . . . . . . . . . . : Unknown

IP Routing Enabled. . . . . . . . : No

WINS Proxy Enabled. . . . . . . . : No

Ethernet adapter 本地连接:

Connection-specific DNS Suffix . :

Description . . . . . . . . . . . : Intel(R) PRO/100 VE Network Connection

Physical Address. . . . . . . . . : 00-06-D0-06-05-47

Dhcp Enabled. . . . . . . . . . . : No

IP Address. . . . . . . . . . . . : 192.168.0.8

Subnet Mask . . . . . . . . . . . : 255.255.255.0

Default Gateway . . . . . . . . . : 192.168.0.1

DNS Servers . . . . . . . . . . . : 192.168.0.1

C:Documents and Settingsadmin>ping 192.168.0.1 -n 2

Pinging 192.168.0.1 with 32 bytes of data:

Request timed out.

Request timed out.

Ping statistics for 192.168.0.1:

Packets: Sent = 2, Received = 0, Lost = 2 (100% loss),

 

Ping超时,Why?从Sniffer上捕获的数据包可以更清楚的进行说明:

下图是捕获的数据包,它描述了Fake(192.168.0.8) Ping 192.168.0.1的全部过程:

Click here to open new window
CTRL+Mouse wheel to zoom in/out

由于Fake(00:06:D0:06:05:47)没有192.168.0.1的MAC地址,所以Fake发送ARP地址解析请求广播,询问192.168.0.1的MAC地址是什么;

ISA Server(00:03:47:F4:FC:E7)使用ARP应答回复Fake(00:06:D0:06:05:47),告诉Fake自己的IP地址(192.168.0.1)和MAC地址;

获得192.168.0.1的MAC地址后,Fake(192.168.0.8)向192.168.0.1发送PING请求数据包;

192.168.0.1向192.168.0.8回复PING回复数据包;

Fake(192.168.0.8)再次向192.168.0.1发送PING请求数据包;

192.168.0.1再次向192.168.0.8回复PING回复数据包;

这一切看起来没有任何问题?那为什么Fake的Ping会超时呢?

这一切从表明上看是没有任何问题,但是仔细看捕获的数据包的以太网头部,你就会发现问题所在:

首先,我们看第三个数据包,Fake(192.168.0.8)向192.168.0.1发送的Ping请求,如下图所示,Fake以自己的MAC地址为源MAC地址、192.168.0.1的MAC地址(00:03:47:F4:FC:E7)为目的MAC地址发送数据包,这没有任何问题。

Click here to open new window
CTRL+Mouse wheel to zoom in/out

 

那么看看第四个ISA Server回复的Ping回复数据包呢,源MAC地址是ISA Server的MAC地址(00:03:47:F4:FC:E7),这也没有问题,但是注意看目的MAC地址,00:0D:60:C3:05:34是离线的客户机True的MAC地址。还记得我们在ISA Server上做的IP地址(192.168.0.8)和MAC地址绑定吗?

ISA Server直接使用自己ARP缓存中的静态绑定项来发送数据,而不是使用收到的Ping请求数据包中的源MAC地址来作为目的地址。

因此,Fake认为此数据包不是发给自己的,不会处理此数据包,所以认为没有Ping回复数据包,自然就是超时了。

Click here to open new window
CTRL+Mouse wheel to zoom in/out

最后说一下,

我不推荐大家使用静态IP地址和MAC地址的绑定,这会带来更多的管理负荷。你可以利用ISA Server强大的身份验证功能,结合IP地址来进行管理,这样具有更好的效果

。也请不要在论坛问我ARP命令是如何使用的,Windows的帮助是最好的老师。
关于 ARP命令 绑定IP MAC地址 ARP 的新闻
  • 专题:ARP攻击防范与解决方案
  • ARP欺骗原理以及路由器的先天免疫
  • 局域网受ARP欺骗攻击后的解决方法(图)
  • 攻击防制:路由器ARP病毒防制方案
  • sniffer帮助理解子网掩码、网关与ARP协议的作用
【评论】【收藏本文】【打印】【关闭】
上一篇文章:网络管理之ARP地址解析协议应用
下一篇文章:网管辞典:网络协议术语-RARP
讨论区
查看
已有 0 位对此新闻感兴趣的网友发表了看法
匿名发表
注册通行证 登陆
图文阅读推荐
[图文]无线攻防:破解WEP密钥
[图文]无线攻防:破解WEP密钥
ADSL用户注意了 防黑客攻击十大秒法
ADSL用户注意了 防黑客攻击十大秒法
全站资源
  • 微软官方入门教程19:轻松掌握Vista系统的快
  • 微软2008大冲击,预借Vista SP1力促Vista市
  • 在收件箱中获得 Windows Vista 的最新更新
  • 微软官方Vista入门教程全集19篇(Vista学院
  • Windows Vista 的成功将势不可挡
  • 快快抛弃Vista,拥抱XP SP3!你觉得呢?
  • 浅谈Vista系统关闭虚拟内存与使用内存盘加速
  • 嘿嘿,按下键盘上面的三个键,马上让你的Vi
  • Windows Vista的盗版率只有Windows XP的一半
  • 3DMark和PCMark Vantage新版将只支持Vista系
阅读排行
  • 网吧频繁掉线(ARP)与解决方法
  • ARP病毒解决办法
  • 局域网受ARP欺骗攻击后的解决方法(图)
  • 网络管理之IP地址篇
  • 局域网内如何防止ARP欺骗
  • 使用ARP命令来绑定IP和MAC地址
  • 网管必读-常用网络命令
  • ARP攻击原理及解决方法
  • ARP病毒问题的处理
  • 一个20岁网管的真情自白书
最新技术文档
  • 宽带路由器性能评判常见误区
  • 如何进入Cisco路由器配置模式
  • Cisco路由器如何定位和装载IOS
  • 如何配置局域网的通信协议(3)
  • 如何配置局域网的通信协议(2)
  • 如何配置局域网的通信协议(1)
  • 小技巧:ADSL多用户共享设置方法
  • [图文]无线攻防:破解WEP密钥
  • 关于网络故障的全面分析排除实战
  • 网络攻击机制和技术发展综述
专题教程
  • 大话G游 专题:手机病毒揭密
  • ARP攻击防范与解决方案 路由故障处理手册
  • Picasa中文版_Picasa教程 专题:清除流氓软件
  • Firefox专题 seo搜索引擎优化专区
  • 重装Windows必知的事情 装机之必备软件大行动
病毒专杀栏
  • 杀毒软件反被病毒杀 连"救命"都不能喊
  • 金山ARP防火墙
  • 还原卡神话破灭“机器狗”病毒来势汹汹
  • cctv经济半小时:你的手机现在安全吗?
  • 新挂马方式开始流行 ARP挂马称雄局域网
  • 木马和病毒清除的通用解法
  • IP地址不再冲突 查找ARP攻击者元凶
  • 教你几招识别和防御Web网页木马
  • 分析:封杀BT只是暂时的止痛药
  • QQ爆危险漏洞,“QQ游戏邀请大盗”邀请你玩病
关于我们 | 诚聘英才 | 联系我们 | 版权声明 | 网站大事 | 网站地图 | 意见建议
CopyRight 2005-2007 Jztop.Com 版权所有 未经许可 请勿转载