网络协议的工作原理

ARP协议工作原理

  
    ARP这个协议的作用是:当源主机知道目的主机的IP地址而不知道对方的MAC地址的话可以使用ARP这个广播协议来获得对方的MAC地址,获得硬件地址的原因是主机通信是通过MAC地址来实现的。
这是以太网中的ARP报文格式。
      (1):以太网目的地址:是硬件地址,包含六个字节的地址。例如: 00 1f 3c d1 b6 7d 。
      (2):以太网源地址:  是发出给ARP包的主机地址。格式与目的地址相同 。
      (3):以太帧类型: 用来表明上层协议的类型,如果是ARP协议的话就为:0806 。
      以上者三部分为数据链路层中以太帧的首部格式,其实在以太帧的尾部还有一个字段(图中未标出)是:
      (4):帧检查序列:用于对数据帧中数据的差错检查的 。
如图所示的ARP帧结构中:
      硬件类型:如果是以太网则硬件类型为:0001 。
      协议类型:这里一般写的是:0800 表示IP类型,ARP是IP协议族中的一个。 
      硬件地址长度:指的是MAC地址的长度,长度为6 单位是字节 。
      协议地址产度:如果是IP4则这个值为4,单位是字节 。
      op为操作符:如果为1则为请求包;如果为2则为回应包。
这里假设源主机为:A ,目的主机为:B 。其请求和回应这个都不变。
如果是请求包的话:
      以太网首部的目的MAC地址为:FF:FF:FF:FF:FF:FF表示广播包。
      ARP字段中的目的主机MAC地址字段为:00:00:00:00:00:00(十六进制表示) 起到填充的作用。
      op操作符字段为:0001
如果是回应包的话:  
     以太网首部的目的MAC地址为:源主机的MAC地址。
     ARP字段中的源主机MAC地址字段为:目的主机的MAC地址。
     op操作符字段为:0002。    
      参考文献:http://blog.sina.com.cn/s/blog_66a13c610100hqr6.html

 一次完整的ARP欺骗

A的地址为:IP:192.168.10.1 MAC: AA-AA-AA-AA-AA-AA

B的地址为:IP:192.168.10.2 MAC: BB-BB-BB-BB-BB-BB

C的地址为:IP:192.168.10.3 MAC: CC-CC-CC-CC-CC-CC
A和C之间进行通讯.但是此时B向A发送一个自己伪造的ARP应答,而这个应答中的数据为发送方IP地址是192.168.10.3(C的IP地址),MAC地址是BB-BB-BB-BB-BB-BB(C的MAC地址本来应该是CC-CC-CC-CC-CC-CC,这里被伪造了)。当A接收到B伪造的ARP应答,就会更新本地的ARP缓存(A被欺骗了),这时B就伪装成C了。同时,B同样向C发送一个ARP应答,应答包中发送方IP地址四192.168.10.1(A的IP地址),MAC地址是BB-BB-BB-BB-BB-BB(A的MAC地址本来应该是AA-AA-AA-AA-AA-AA),当C收到B伪造的ARP应答,也会更新本地ARP缓存(C也被欺骗了),这时B就伪装成了A。这样主机A和C都被主机B欺骗,A和C之间通讯的数据都经过了B。主机B完全可以知道他们之间说的什么:)。这就是典型的ARP欺骗过程。
掐断A 与 c的通讯,实现原理:b 向A 发送一条ARP 数据包,内容为:c的地址是00:00:00:00:00:00 (一个错误的地址),那么A 此后向c发的数据包都会发到00,而这个地址是错误的,所以通讯中断了,但是要注意了,这里只是A --> c 中断了,c --> A 没有中断,所以这个叫单向欺骗。
掐断c与A 的通讯,实现原理和第一条一样,如果和第一条一起发,那么A 和c 的通讯就完全中断了,即:A <-- ×--> c.
嗅探A 与c 的通讯,实现原理:b 向A 发送一条ARP 数据包,内容为:c的地址是AA:BB:CC:DD:EE:FF (b自己的地址),也就是说,b 对 A 说:我才是c,于是A 把向c发送的数据都发给b 了,b得到数据后就可以为所欲为了,可以直接丢弃,那么通讯中断,也可以再次转发给c,那么又形成回路,B当了个中间人,监视A 和c 的通讯.此时你就可以用CAIN等任何抓包工具进行本地嗅探了.

参考文献:

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值