ARP协议数据包的分析 
ARP也就是地址解析协议,我们要访问外网,不知道对方的mac地址就需要arp来进行请求然后知道后就可以请求网关来进行通信。

复制代码
  1. 地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。地址解析协议是建立在网络中各个主机互相信任的基础上的,网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存;由此攻击者就可以向某一主机发送伪ARP应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,这就构成了一个ARP欺骗。ARP命令可用于查询本机ARP缓存中IP地址和MAC地址的对应关系、添加或删除静态对应关系等。相关协议有RARP、代理ARP。NDP用于在IPv6中代替地址解析协议。

他的工作过程如下:

复制代码
  1. 主机A的IP地址为192.168.1.1,MAC地址为0A-11-22-33-44-01;
  2. 主机B的IP地址为192.168.1.2,MAC地址为0A-11-22-33-44-02;
  3. 当主机A要与主机B通信时,地址解析协议可以将主机B的IP地址(192.168.1.2)解析成主机B的MAC地址,以下为工作流程:
  4. 第1步:根据主机A上的路由表内容,IP确定用于访问主机B的转发IP地址是192.168.1.2。然后A主机在自己的本地ARP缓存中检查主机B的匹配MAC地址。
  5. 第2步:如果主机A在ARP缓存中没有找到映射,它将询问192.168.1.2的硬件地址,从而将ARP请求帧广播到本地网络上的所有主机。源主机A的IP地址和MAC地址都包括在ARP请求中。本地网络上的每台主机都接收到ARP请求并且检查是否与自己的IP地址匹配。如果主机发现请求的IP地址与自己的IP地址不匹配,它将丢弃ARP请求。
  6. 第3步:主机B确定ARP请求中的IP地址与自己的IP地址匹配,则将主机A的IP地址和MAC地址映射添加到本地ARP缓存中。
  7. 第4步:主机B将包含其MAC地址的ARP回复消息直接发送回主机A。
  8. 第5步:当主机A收到从主机B发来的ARP回复消息时,会用主机B的IP和MAC地址映射更新ARP缓存。本机缓存是有生存期的,生存期结束后,将再次重复上面的过程。主机B的MAC地址一旦确定,主机A就能向主机B发送IP通信了。

平时在解决网站问题排查上,讲到的这些是否用到了呢? 
如果想查看ARP缓存表可以ctrl+r 输入cmd  打开命令提示符然后输入arp -a 
 
 
相信大家都听到过arp欺骗,其实就是欺骗了mac当请求的时候就到了hack手里,这样我们看什么都由他们进行控制,你的信息也完全可以被监控到。 
那么怎么去解决呢?ARP绑定,在路由器上把IP和mac地址进行绑定即可。 
 
 
 
图片中就是我们不知道对方mac时发起的全F广播请求,这样来获得地址。 
 
 
看了本节是否有收获呢?

wireshark从入门到精通(协议排错安全篇)4相关推荐

  1. 视频教程-2019版抓包分析-Wireshark从入门到精通【进阶篇】-其他

    2019版抓包分析-Wireshark从入门到精通[进阶篇] G-LAB IT实验室创始人.知名讲师.同时拿到路由交换.网络安全.数据中心3个方向的CCIE专家级别认证.教学风趣幽默,广受学员好评 郭 ...

  2. Android Studio2.0 教程从入门到精通MAC版 - 安装篇

    来自:http://www.open-open.com/lib/view/open1466430392743.html 前言 这个教程你将学会如何使用Android Studio2.0开发Androi ...

  3. SpringBoot入门到精通_第6篇 _必知必会

    接上一篇:SpringBoot入门到精通_第5篇 _SpringBoot Actuator监控 https://blog.csdn.net/weixin_40816738/article/detail ...

  4. SpringBoot入门到精通_第5篇 _SpringBoot Actuator监控

    接上一篇:SpringBoot入门到精通_第4篇 _开发三板斧 https://blog.csdn.net/weixin_40816738/article/details/101097161 文章目录 ...

  5. SpringBoot入门到精通_第4篇 _开发三板斧

    接上一篇:SpringBoot入门到精通_第3篇 _应用组件分析 https://blog.csdn.net/weixin_40816738/article/details/101096218 文章目 ...

  6. SpringBoot入门到精通_第3篇 _应用组件分析

    接上一篇:SpringBoot入门到精通_第2篇 _1分钟实战需求项目 https://blog.csdn.net/weixin_40816738/article/details/101095964 ...

  7. SpringBoot入门到精通_第2篇 _1分钟实战需求项目

    接上一篇:SpringBoot入门到精通_第1篇 _核心概念 https://blog.csdn.net/weixin_40816738/article/details/94916051 文章目录 一 ...

  8. SpringBoot入门到精通_第7篇 _必知必会总结

    接上一篇:SpringBoot入门到精通_第6篇 _必知必会

  9. SpringBoot入门到精通_第1篇 _核心概念

    SpringBoot 必知必会 核心精粹 文章目录 一.SpringBoot必知必会 1. 是什么?能做什么? 2. 有哪些特性? 一.SpringBoot必知必会 1. 是什么?能做什么? 是什么? ...

  10. MySQL零基础从入门到精通(多表篇)

    MySQL零基础从入门到精通(多表篇) MySQL零基础从入门到精通(多表篇) 实际开发中,一个项目通常需要很多张表才能完成.例如:一个商城项目就需要分类表(category).商品表(product ...

最新文章

  1. 多级反馈队列调度算法事例
  2. 从火热到理性,2019年AI芯片行业发展的怎么样了?【附PPT下载】
  3. 【颠覆认知】为什么YouTube广告只看五秒更赚钱,微博商业产品经理深度剖析。...
  4. FPGA笔录(2)-触发器与锁存器原理
  5. java 从数据库取值_java 连接数据库取值问题
  6. pytorch的nn.CrossEntropyLoss()函数使用方法
  7. java web tomcat 实例_Java Web应用开发实例
  8. 多态计算器的开发 c# 1614095334
  9. android 字体荧光效果,Android-荧光效果
  10. Java8新特性总结 -7.新API和工具
  11. win10系统怎么写java_win10系统制作java文本的操作方法
  12. 【文文殿下】[BZOJ4008] [HNOI2015] 亚瑟王
  13. Oracle快速运行一指禅
  14. MySQL5 使用概要
  15. 2021全国大学生电子设计竞赛论文(智能送药小车(F题))(电赛论文模板)
  16. 《深入浅出统计学》总结
  17. ASP.NET 省市区联级
  18. 屏幕取色器,windows
  19. 关于区块链在存证方面的应用
  20. ORA-12154: TNS: 无法解析指定的连接“/one card”应用程序中的服务器错误

热门文章

  1. 内存映射文件(File Mapping)API
  2. python中map函数运行原理_Python中map函数的解释和可视化
  3. MAC Opencv include选择
  4. 函数 —— fork()将运行着的程序分成2个(几乎)完全一样的进程
  5. 后台返回的数据换行显示
  6. Hadoop- MapReduce分布式计算框架原理
  7. iOS开发资源(持续更新)
  8. 分治法求一个N个元素数组的逆序数
  9. 把磁盘崩溃了,总是进去维护模式,却删除不了fstab文件中的内容
  10. MapString, Object map 集合转 json数组, json数组转list ,按条输出到es