• 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 协议的格式



    公众号



  • 相关阅读:
    spl_autoload_register()和__autoload()区别
    编程语言相关科目
    类继承和重写的区别
    心理扭曲和心理变态含义分别是什么?
    java中的静态方法
    《深入理解JavaScript》—— JSON
    《深入理解JavaScript》—— Date
    《深入理解JavaScript》—— 正则表达式
    《深入理解JavaScript》—— 数组
    《深入理解JavaScript》—— 对象与继承(第2层)
  • 原文地址:https://www.cnblogs.com/claireyuancy/p/6800181.html
Copyright © 2020-2023  润新知