ARP协议(1)什么是ARP协议

这是近期在看《TCP/IP详解》系列书总结出来的,之后会陆续把其他协议部分分享出来。

我尽量以简单易读、易懂的方式呈现出来,但是,由于文笔和水平有限,有些地方也许存在描述上的不足或繁琐或缺失,还请各位看官指出,我会尽量去弥补和更正。

这序列文章,首版是在公众平台发布,同时会同步到csdn(http://my.csdn.net/xiongxianhe),欢迎大家指正和交流。



ARP协议,将分以下序列:

1、什么是ARP协议

2、ARP协议格式详解

3、ARP协议编程

4、ARP协议欺骗和攻击

5、ARP安全防护


一、什么是ARP协议

1、我们先来看看TCP/IP协议族的四个层次,如图(图片来自《TCP/IP详解卷1》)

我们计算机接入互联网的主要目的是获取别人计算机上的资源,或者供别人获取我们的资源。

那我们如何能到达别人的计算机呢?聪明的人类就用地址来标识互联网上的每台机器,我们日常所说的IP地址等。比如,要获取我之前写的“在线编译器”代码的话,你就可以用

ftp://115.29.235.230/pub/MyProject/CompileOnline/

其中115.29.235.230就是一个ip地址。但是有了IP地址还不够,因为IP地址是网络层(TCP/IP协议族)使用的,计算机最后是要在物理设备(网卡、网线等)上传输的,因此还必须有个计算机的物理地址,我们称为:MAC地址或物理地址(每台机器在出厂后,mac地址就已经确定,并且是唯一的)。因此要使两台机器能通信,IP地址和MAC地址是不能少的。

ftp://115.29.235.230/pub/MyProject/CompileOnline/,我只给出了IP地址,却没有MAC地址,但我在浏览器里访问得到,这个是怎么来实现的呢?此时我们的ARP就出场了:

ARP(Address
Resolution Protocol),地址解析协议,它是将IP地址转化为MAC地址的协议规则。

Q:ARP是如何将IP地址转为MAC地址的?

A:每台机器内核都实现了ARP协议。它是通过一个高速缓存,把IP映射到对应的MAC。你可以在你机器上执行命令
arp -a,将会出现你机器现在缓存的IP和MAC的映射,如:

Q:这张映射表是如何生成的?

A:

(1)这张表中,每条记录(非静态)的生存时间一般为20分钟,起始时间从被创建开始算起,一旦过期,将在这张表中删除。(手动删除全部,可以用 arp -d *命令)。

(2)当A主机要发送信息给B时,A先在ARP高速缓存里查询B的IP是否有对应的MAC地址,如果有则把B IP对应的MAC地址取出封装在数据包里,然后发送出去。

(3)如果A在ARP高速缓存里没有找到B IP对应的MAC,则向A所在的局域网内广播或者询问网关(路由):谁有B IP的MAC,请告诉A。

(4)如果B和A是同一个局域网,B回这条信息,并把B的MAC地址带上,A再把B的IP和MAC写入到ARP的高速缓存里(一般有效时间为20分钟)。

(5)如果B和A不是同一个局域网,并且A所在的网关知道(或间接知道(询问和发包))B的MAC,则网关发消息给A,并且带上B的MAC地址。A收到消息后,再把B的IP和MAC写入到ARP的高速缓存里(一般有效时间为20分钟)。

(6)如果没人回应,则超时,对方不可达。

Q:那B的IP地址,A怎么知道?

A:(你猜!)

上面的问答形式,现在明白了ARP是干嘛的吧?

对,就是你想的那样的!

下面一篇,我们来学习下 ARP 协议的格式


公众号

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-02 06:34:03

ARP协议(1)什么是ARP协议的相关文章

图解ARP协议(三)ARP防御篇-如何揪出"内鬼"并"优雅的还手"

一.ARP防御概述 通过之前的文章,我们已经了解了ARP攻击的危害,黑客采用ARP软件进行扫描并发送欺骗应答,同处一个局域网的普通用户就可能遭受断网攻击.流量被限.账号被窃的危险.由于攻击门槛非常低,普通人只要拿到攻击软件就可以扰乱网络秩序,导致现在的公共网络.家庭网络.校园网.企业内网等变得脆弱无比. 所以,如何进行有效的ARP防御?作为普通用户怎么防御?作为网络/安全管理员又怎么防御?有哪些ARP防御软件?如果被ARP攻击了,如何揪出"内鬼",并"优雅的还手"?

图解ARP协议(二)ARP攻击原理与实践

一.ARP攻击概述 在上篇文章里,我给大家普及了ARP协议的基本原理,包括ARP请求应答.数据包结构以及协议分层标准,今天我们继续讨论大家最感兴趣的话题:ARP攻击原理是什么?通过ARP攻击可以做什么,账号是否可以被窃取?有哪些常见的ARP渗透(攻击)工具可以用来练手?ARP扫描和攻击有什么区别,底层数据包特征是怎样的? 接下来,我们通过图解的方式来深入了解ARP攻击是如何实现的. 二.ARP攻击原理 但凡局域网存在ARP攻击,都说明网络存在"中间人",我们可以用下图来解释. 在这个局

ARP协议详解之ARP动态与静态条目的生命周期

ARP协议详解之ARP动态与静态条目的生命周期 ARP动态条目的生命周期 动态条目随时间推移自动添加和删除. q  每个动态ARP缓存条目默认的生命周期是两分钟.当超过两分钟,该条目会被删掉.所以,生命周期也被称为超时值. q  延长规则:当ARP条目已存在,使用该条目后,将会重设超时值为两分钟. [实例1-12]下面将验证动态条目的生命周期是两分钟.具体操作步骤如下所示: (1)查看本机的ARP缓存表.执行命令如下所示: C:\Documents and Settings\Administra

ARP缓存表的构成ARP协议全面实战协议详解、攻击与防御

ARP缓存表的构成ARP协议全面实战协议详解.攻击与防御 1.4.3  ARP缓存表的构成 在局域网的任何一台主机中,都有一个ARP缓存表.该缓存表中保存中多个ARP条目.每个ARP条目都是由一个IP地址和一个对应的MAC地址组成.这样多个ARP条目就组成了一个ARP缓存表.当某台主机向局域网中另外的主机发送数据的时候,会根据ARP缓存表里的对应关系进行发送本文选自ARP协议全面实战手册——协议详解.攻击与防御. 1.查看ARP缓存记录本文选自ARP协议全面实战手册——协议详解.攻击与防御 [实

ARP协议具体解释之ARP动态与静态条目的生命周期

ARP协议详细解释之ARP动态与静态条目的生命周期 ARP动态条目的生命周期 动态条目随时间推移自己主动加入和删除. q??每一个动态ARP缓存条目默认的生命周期是两分钟.当超过两分钟,该条目会被删掉.所以,生命周期也被称为超时值. q??延长规则:当ARP条目已存在.使用该条目后,将会重设超时值为两分钟. [实例1-12]以下将验证动态条目的生命周期是两分钟.详细操作过程例如以下所看到的: (1)查看本机的ARP缓存表.运行命令例如以下所看到的: C:\Documents and Settin

关于HTTP协议跟TCP、IP协议到底在网络协议中的分层。

我们来看当我们在浏览器输入http://www.mycompany.com:8080/mydir/index.html,幕后所发生的一切. 首先http是一个应用层的协议,在这个层的协议,只是一种通讯规范,也就是因为双方要进行通讯,大家要事先约定一个规范. 1.连接 当我们输入这样一个请求时,首先要建立一个socket连接,因为socket是通过ip和端口建立的,所以之前还有一个DNS解析过程,把www.mycompany.com变成ip,如果url里不包含端口号,则会使用该协议的默认端口号.

基于TCP的协议,基于UDP的协议

TCP与UDP区别 TCP---传输控制协议,提供的是面向连接.可靠的字节流服务.当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据.TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端. UDP---用户数据报协议,是一个简单的面向数据报的运输层协议.UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地.由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故

网络中常用的各种协议(针对TCP/IP协议组)

网络层: ip协议->网络互连协议 用途:将多个包在网络中联系起来,传输数据包(不可靠传输),最基本功能就是寻址和分段功能,不提供端到端,路由到路由的确认,不提供重发和流量控制.是计算机网络能狗相互通信的基本规则.出错则像ICMP报告,ICMP在IP模块中实现 ICMP协议 用途:面向无连接协议,用于传输错误报告控制信息(控制信息是指网络不通畅,主机是否到达,路由是否可用的这些网络本身的消息,不涉及用户传输的数据) ARP协议->地址解析协议 用途:根据IP地址获取物理地址的协议(即MAC地址

第7章 网络层协议(4)_IGMP协议

4. IGMP协议(Internet Group Management Protocol) 4.1 什么是组播(多播) (1)单播同一个视频要发送90个副本,但支持收看者"快进"和"倒退". (2)组播:同一个多播组的90个成员并需发送一次,路由器在转发分组时复制成多个副本转发出去,即在因特网范围内的多播是靠路由器来实现的,能够运行多播协议的路由器称为多播路由器.当分组到达目的局域网时,由于局部网具有硬件多播功能,因此不需要复制分组,在局部网上的多播组成员都能收到这