这是最近在看《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 协议的格式


公众号


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

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

    ARP缓存表的构成ARP协议全面实战协议详解.攻击与防御 1.4.3  ARP缓存表的构成 在局域网的任何一台主机中,都有一个ARP缓存表.该缓存表中保存中多个ARP条目.每个ARP条目都是由一个IP ...

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

    一.ARP攻击概述 在上篇文章里,我给大家普及了ARP协议的基本原理,包括ARP请求应答.数据包结构以及协议分层标准,今天我们继续讨论大家最感兴趣的话题:ARP攻击原理是什么?通过ARP攻击可以做什么 ...

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

    一.ARP防御概述 通过之前的文章,我们已经了解了ARP攻击的危害,黑客采用ARP软件进行扫描并发送欺骗应答,同处一个局域网的普通用户就可能遭受断网攻击.流量被限.账号被窃的危险.由于攻击门槛非常低, ...

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

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

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

    ARP协议详解之ARP动态与静态条目的生命周期 ARP动态条目的生命周期 动态条目随时间推移自动添加和删除. q  每个动态ARP缓存条目默认的生命周期是两分钟.当超过两分钟,该条目会被删掉.所以,生 ...

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

    ARP协议详细解释之ARP动态与静态条目的生命周期 ARP动态条目的生命周期 动态条目随时间推移自己主动加入和删除. q  每一个动态ARP缓存条目默认的生命周期是两分钟.当超过两分钟,该条目会被删掉 ...

  7. TCP/IP协议详解笔记——ARP协议和RARP协议

    ARP:地址解析协议 对于以太网,数据链路层上是根据48bit的以太网地址来确定目的接口,设备驱动程序从不检查IP数据报中的目的IP地址.ARP协议为IP地址到对应的硬件地址之间提供动态映射. 工作过 ...

  8. HTTP协议—— 简单认识TCP/IP协议

    大学没读计算机专业,所以很多的专业知识都不知道.既然已经从事了IT这个行业,就势必要去了解下网络底层,虽然实际工作中这些东西用不到.高楼大厦,起于平川.不积跬步,无以至千里,不积小流,无以成江海.我现 ...

  9. ****** 四十二 ******、软设笔记【网络基础】-IPv6协议、常用的网络协议

    一.IPv6协议 IPv6协议,全称"互联网协议第6版",即下一代的网际协议. 相对于IPv4来说,IPv6协议主要改进: *扩展的地址.IPv6地址长度为128位. *IPv6使 ...

随机推荐

  1. 九度oj 题目1496:数列区间

    题目描述: 有一段长度为n(1<=n<=1000000)的数列,数列中的数字从左至右从1到n编号.初始时数列中的数字都是0. 接下来我们会对其进行m(1<=m<=100000) ...

  2. hdu6085[压位+暴力] 2017多校5

    /*hdu6085[压位+暴力] 2017多校5*/ /*强行优化..*/ #include <bits/stdc++.h> using namespace std; struct bit ...

  3. P1108 低价购买 (动态规划)

    题目链接 Solution 似乎就是个很简单的最长不上升子序列输出方案. 但是有一个很艹蛋的条件: 不同方案选择价格必须不同. 且其股票价格不保证不相同. \(f[i]\) 代表以第 \(i\) 天结 ...

  4. poj 1066 Treasure Hunt 线段相交

    题目链接 题目描述 一个正方形房间被分成若干个小室,宝藏在其中某一点.现可炸开任意一堵墙壁的中点位置.问至少要炸开多少堵墙才能从外面到达宝藏所在地. 思路 (很巧妙,没想到) 直接枚举墙壁与正方形外壁 ...

  5. 转 new和malloc的区别

    传送门 new和malloc的区别 1. malloc()函数 1.1 malloc的全称是memory allocation,中文叫动态内存分配. 原型:extern void *malloc(un ...

  6. 表格 td中,取checkbox后几位值

    function addToPanDianDetail() { var detail_id = ""; var detail_code = ""; $(&quo ...

  7. TStringList,快速解析 查找测试。。。很有用,再也不用 FOR 循环了

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABKAAAALHCAIAAAA2Gq0zAAAgAElEQVR4nOydeVgUV76wK5OZb5JJZi

  8. 记一次安装centos7及gnome桌面

    https://blog.csdn.net/bingbingtea/article/details/79553669

  9. es6 repeat() 原字符串重复

    repeat()返回一个新字符串,表示将原字符串重复n次. var str = "x"; str.repeat(3) // "xxx" var str1 = & ...

  10. 洛谷——P1508 Likecloud-吃、吃、吃

    P1508 Likecloud-吃.吃.吃 题目背景 问世间,青春期为何物? 答曰:“甲亢,甲亢,再甲亢:挨饿,挨饿,再挨饿!” 题目描述 正处在某一特定时期之中的李大水牛由于消化系统比较发达,最近一 ...