下面使用 Wireshark 分析 ARP 的工作过程。试验的机器:发送者机器(IP 地址:10.21.28.47,MAC 地址:68:f7:28:0f:32:2e)下文称为 HOSTA;目标机器(IP 地址:10.21.28.110,MAC 地址:54:ee:75:25:33:fd),下文称为 HOSTB。

1. 使用 "arp and eth.addr == 68:f7:28:0f:32:2e" 过滤规则定位数据封包。观察编号为 2370 的数据帧,MAC 地址为 68:f7:28:0f:32:2e 广播了一个 ARP 请求帧,询问 “Who has 10.21.28.110?  Tell 10.21.28.47”。

2. 观察 No.2370 的 Ethernet II 数据帧的内容。源 MAC 地址为 68:f7:28:0f:32:2e,目的 MAC 地址为 ff:ff:ff:ff:ff:ff(广播),数据包类型 ARP(0x0806)。

3. 观察 No.2370 的 ARP 数据包的内容。Opcode 的值为 1,表示这是一个 ARP 请求。源 MAC 地址为 68:f7:28:0f:32:2e,源 IP 地址为 10.21.28.47,目标 IP 地址为 10.21.28.110。这就像是 HOSTA 向网段里的其他主机发出询问 “你们好,我的 MAC 地址是 68:f7:28:0f:32:2e,IP 地址是 10.21.28.47,IP 地址为 10.21.28.110 的主机,请问你的 MAC 地址是多少啊,可以站出来跟我说一下吗?”。

4. 观察编号为 2371 的数据帧,MAC 地址 54:ee:75:25:33:fd 主机回应了 68:f7:28:0f:32:2e:“10.21.28.110 is at 54:ee:75:25:33:fd”。

5. 观察 No.2371 的 ARP 数据包的内容。Opcode 的值为 2,表示这是一个 ARP 应答。源 MAC 地址为 54:ee:75:25:33:fd,源 IP 地址为 10.21.28.110,目标 MAC 地址为 68:f7:28:0f:32:2e,目标 IP 地址为 10.21.28.47。HOSTB 收到 HOSTA 的 ARP 请求后,发现 HOSTA 询问的 IP 地址 10.21.28.110 正是自己的 IP 地址。就回应 HOSTA 说 “10.21.28.110 是我的 IP 地址,我的 MAC 地址是 54:ee:75:25:33:fd。”

6. HOSTA 接收到 HOSTB 的应答后,就可以更新 HOSTA 的 ARP Cache 了。


More

动画 - ARP 地址解析过程

Wireshark - 观察 ARP 地址解析过程的更多相关文章

  1. Linux 使用tcpdump观察arp通信过程

    ARP协议简介: ARP协议能实现任意网络层地址到任意物理地址的转换,此次讨论从IP地址到以太网地址(MAC地址)的转换.其工作原理是:主机向自己所在的网络广播一个ARP请求,该请求包含目标机器的网络 ...

  2. 使用wireshark观察SSL/TLS握手过程--双向认证/单向认证

    SSL/TLS握手过程可以分成两种类型: 1)SSL/TLS 双向认证,就是双方都会互相认证,也就是两者之间将会交换证书.2)SSL/TLS 单向认证,客户端会认证服务器端身份,而服务器端不会去对客户 ...

  3. ARP地址解析协议

    ARP地址解析协议:为IP地址到相应的硬件地址之间提供动态映射. 下面图为例说明地址解析协议的详细工作流程. 结合图中的序号进行说明. client通过FTP协议连接server时,首先解析器会把主机 ...

  4. 网络协议抓包分析——ARP地址解析协议

    前言 计算机之间可以相互通信的前提是要知道对方的地址,才可以发送信息给其他计算机,就像别人要联系你也得先知道你的电话号码一样.这里的地址因为网络分层的原因就包括IP地址和MAC地址(即网卡地址.硬件地 ...

  5. ARP地址解析协议原理

    概述 网络层以上的协议用IP地址来标识网络接口,但以太数据帧传输时,以物理地址来标识网络接口.因此我们需要进行IP地址与物理地址之间的转化. 对于IPv4来说,我们使用ARP地址解析协议来完成IP地址 ...

  6. 【网络协议】ARP地址解析协议

    地址解析协议ARP 在以太网协议中规定,同一局域网中的一台主机要和另一台主机进行直接通信,必须要知道目标主机的MAC地址.而在TCP/IP协议中,网络层和传输层只关心目标主机的IP地址.这就导致在以太 ...

  7. 《TCP/IP详解 卷1:协议》第4章 ARP:地址解析协议

    4.1 引言 本章我们要讨论的问题是只对TCP/IP协议簇有意义的IP地址.数据链路如以太网或令牌环网都有自己的寻址机制(常常为48 bit地址),这是使用数据链路的任何网络层都必须遵从的.一个网络如 ...

  8. Wireshark分析器分析数据流过程

    Wireshark分析器分析数据流过程 分析包是Wireshark最强大的功能之一.分析数据流过程就是将数据转换为可以理解的请求.应答.拒绝和重发等.帧包括了从捕获引擎或监听库到核心引擎的信息.Wir ...

  9. 网络通信协议七之ARP工作过程及工作原理解析

    ARP(地址解析协议) 局域网: ARP地址解析协议用于将计算机的网络IP地址转化为物理MAC地址,ARP协议的基本功能就是通过目标设备的IP地址.查询目标设备的MAC地址,以保证通信的顺利进行.在每 ...

随机推荐

  1. HttpMessageConverter用法

    HttpMessageConverter接口定义 * Strategy interface that specifies a converter that can convert from and t ...

  2. Xdebug的使用

    1.http://www.cnblogs.com/mo-beifeng/articles/2446142.html 2.http://www.cnblogs.com/ximu/articles/200 ...

  3. shared_ptr的简单实现

    前面讲到auto_ptr有个很大的缺陷就是所有权的转移,就是一个对象的内存块只能被一个智能指针对象所拥有.但我们有些时候希望共用那个内存块.于是C++ 11标准中有了shared_ptr这样的智能指针 ...

  4. gradle使用小记

    1.全局排除依赖: allprojects {    apply plugin: 'java'    apply plugin: 'eclipse'    apply plugin: 'maven-p ...

  5. 解决Download interrupted: Connection to https://dl-ssl.google.com refused的问题

    运行->drivers->etc->hosts 加入一行 74.125.237.1 dl-ssl.google.com ok! =================上述方法已经失效, ...

  6. C#_模拟webAp_POST-GET-PUT-DELETE

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.N ...

  7. Linux 内核Coding Style整理

    转载:http://www.cnblogs.com/wang_yb/p/3532349.html 总结linux内核开发的coding style, 便于以后写代码时参考. 下面只是罗列一些规则, 具 ...

  8. JavaScript 之 页面跳转及Frame动态加载

    一.页面跳转 JS跳转大概有以下五种方式: 1.跳转到B页面 <script language="javascript" type="text/javascript ...

  9. Java SE ---关系运算符

    java里的关系运算符有这么几种:大于(>).小于(<).等于(==).不等于(!=).大于等于(>=).小于等于(<=), 关系运算的结果是个boolean值,关系式成立为t ...

  10. Android 高级UI设计笔记05:使用TextView实现跑马灯的效果

    1. 使用TextView属性实现跑马灯的效果: (1). 新建一个Android工程,命名为"MarqueeTextViewDemo",如下: (2). 来到activity_m ...