IP地址与MAC地址 ARP协议

IP地址

其实,互联网世界就是我们现实世界的一个延伸,很多计算机上面的事情,我们都可以在现实中找到相似的一个例子。在现实世界中,如果我们要寄一封信给别人,我们需要哪些信息。最重要的,莫过于地址信息,而IP地址,就是我们计算机网络世界中的地址,有了这个地址,我们就能够快速地找到对应的机器。当我们在浏览器上面访问一个网站的时候,我们会先使用这个网站地址去DNS那边进行解析,得到最终的IP地址,在互联网中,各路交换机会根据这个IP地址,最终把用户的请求送到对应的网络当中。现在我们使用的IP地址,是32位的,也就是IPv4,当年定下这个标准的时候,也没意料到这个世界的计算机会发展得如此的迅速,慢慢的,网络IP就不够用了。好在IP地址其实是分成外网IP跟内网IP。就好比有一个城市里面有很多个小区,可能每个小区都有1幢602,这就是内网IP,而外网IP,就好比这个的名字跟位置,如深圳市后海中心区深圳湾一号。假如你去深圳,直接找个人问1幢602在哪?没人知道,但是你到了深圳湾的楼下,再问下1幢602的位置,立马就有人告诉你了。

MAC地址

计算机的MAC地址,又称之为物理地址,每个网卡在生产的时候,每个生产商都会给自己的网卡分配一个唯一的ID。MAC地址就好比一个人的身份证,当然,身份证是可伪造的,MAC地址也是如此,有些工具可以篡改掉。当然,如果局域网里面有两台MAC地址一样的机器,是会有问题的。MAC地址在网络通信中扮演着什么样的角色的?其实MAC地址只在局域网中发挥作用。就好比你在大马路上,高喊一个人的身份证,没有人会认识一样,只有到了他们小区,在那里喊,才有可能有人应答。当有请求的网关的时候,网关便会向局域网内的机器呼喊,IP为XXX的是哪台机器,对应机器回复自己的MAC地址,之后网关就知道使用这台机器进行通信了

ARP协议

地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。地址解析协议是建立在网络中各个主机互相信任的基础上的,局域网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存;

工作过程

主机A的IP地址为192.168.1.1,MAC地址为0A-11-22-33-44-01; 主机B的IP地址为192.168.1.2,MAC地址为0A-11-22-33-44-02; 当主机A要与主机B通信时,地址解析协议可以将主机B的IP地址(192.168.1.2)解析成主机B的MAC地址,以下为工作流程:

第1步:根据主机A上的路由表内容,IP确定用于访问主机B的转发IP地址是192.168.1.2。然后A主机在自己的本地ARP缓存中检查主机B的匹配MAC地址。

第2步:如果主机A在ARP缓存中没有找到映射,它将询问192.168.1.2的硬件地址,从而将ARP请求帧广播到本地网络上的所有主机。源主机A的IP地址和MAC地址都包括在ARP请求中。本地网络上的每台主机都接收到ARP请求并且检查是否与自己的IP地址匹配。如果主机发现请求的IP地址与自己的IP地址不匹配,它将丢弃ARP请求。

第3步:主机B确定ARP请求中的IP地址与自己的IP地址匹配,则将主机A的IP地址和MAC地址映射添加到本地ARP缓存中。

第4步:主机B将包含其MAC地址的ARP回复消息直接发送回主机A。

第5步:当主机A收到从主机B发来的ARP回复消息时,会用主机B的IP和MAC地址映射更新ARP缓存。本机缓存是有生存期的,生存期结束后,将再次重复上面的过程。主机B的MAC地址一旦确定,主机A就能向主机B发送IP通信了。

工作要素:ARP缓存

ARP缓存是个用来储存IP地址和MAC地址的缓冲区,其本质就是一个IP地址-->MAC地址的对应表,表中每一个条目分别记录了网络上其他主机的IP地址和对应的MAC地址。每一个以太网或令牌环网络适配器都有自己单独的表。当地址解析协议被询问一个已知IP地址节点的MAC地址时,先在ARP缓存中查看,若存在,就直接返回与之对应的MAC地址,若不存在,才发送ARP请求向局域网查询。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章