IT资讯/综合软件下载站!┆ 最新软件 最新文章 最新手机 UFO外星人 网站分类

您当前的位置→图文中心ARP文章ARP防范使用ARP命令来绑定IP和MAC地址

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


2008/11/10 7:38:44 编辑:佚名 来源:本站整理 
今天给大家分享使用ARP命令来绑定IP和MAC地址ARP防范文章。喜欢使用ARP命令来绑定IP和MAC地址的可以分享使用ARP命令来绑定IP和MAC地址给你的好友。

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

喜欢ARP防范的网友不妨去看看下面的文章:
  •   所以才决定写这个文章, 希望能一劳永逸。

      作为企业级的路由防火墙, 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_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

      修改的键值:

      键值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来上网。

      


    ▼使用ARP命令来绑定IP和MAC地址使用ARP命令来绑定IP和MAC地址_arp联盟

      各计算机的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上的绑定就成功了。

      

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

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

      C:\Documents and Settings\admin>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 Settings\admin>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 windowCTRL+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 windowCTRL+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 windowCTRL+Mouse wheel to zoom in/out

      最后说一下,

      我不推荐大家使用静态IP地址和MAC地址的绑定, 这会带来更多的管理负荷。 你可以利用ISA Server强大的身份验证功能, 结合IP地址来进行管理, 这样具有更好的效果。 也请不要在论坛问我ARP命令是如何使用的, Windows的帮助是最好的老师。

    12下一页

    相关文章
  • 全民k歌歌房使用教程,怎么用
  • 支付宝和余额宝有使用风险吗
  • 爱奇艺视频助手将电脑视频传输到手机使用教程
  • 搜狗输入法V模式的使用方法?搜狗输入法如何使用V模式教程
  • 出现福利:使用支付宝扫码乘坐公交免费领保险
  • 闪念邮件是什么?怎么使用
  • qq音乐的分享功能使用介绍?qq音乐怎么分享到微博
  • 老夫子使用3技能圣人之威后会将目标捆在明灯上多少秒?
  • 相关推荐
  • 清壹球球代点插件 绿色版 附使用教程 1.0.0
  • line6 pod hd500x使用教程 pdf免费版 最新版
  • 迅雷9完全去浏览器保留设置补丁 2017免费版【附使用教程】 最新版
  • ec修改器2014(emucheat2014) 中文版_附ec修改器使用教程
  • braun耳温枪6020使用说明书word文档(braun耳温枪6020使用说明书) 完整版 最新版
  • 《巫师3狂猎》可以使用的盾牌+更好的火把MOD 最新版
  • geogebra基础使用教程_geogebra中文版基础使用教程 绿色免费版
  • 关于微信网络投票刷票/网络投票刷票器2017使用方法 4.8 最新版
  • 发表评论
    栏目列表
    阅读排行
    网站帮助 - 广告合作 - 下载声明 - 网站地图