这里我们简单介绍一下这个IP地址和硬件地址。在从一台主机向另一台主机发送数据的过程中,IP数据报会被封装,这样IP数据报中的源地址和目的地址在网络的下层是看不到的。IP地址封装后,会加载当前MAC地址和目的MAC地址。这样,在链路中传输期间,可以准确地找到下一站。到达下一个站点后,发送的数据送到网络层进行解包,读取这个IP数据报的目的IP地址,然后根据这个目的IP地址封装成一个新的MAC帧。
这里需要注意的一点是,对于一个路由器来说,如果这个路由器有两个接口,那么这个路由器就有两个MAC地址。
我们来谈谈这个地址解析协议ARP.
地址:IP协议,提供一种无连接不可靠的协议.
知道了一个机器的IP地址需要找出其相应的硬件地址-ARP地址解析协议做了什么。
ARP协议在主机的ARP缓存中存储IP地址到硬件地址的映射表。这些是主机当前知道的一些地址。当主机A要向局域网中的主机B发送数据报时,它首先在ARP缓存中查找这台主机B的IP地址。
如果有,找出它的MAC地址,然后把这个硬件地址写入MAC帧,再把MAC帧通过局域网发送到对应的硬件地址。
当找不到它时,主机A将运行ARP,在本局域网上广播发送一个ARP请求分组,这个请求分组中包含的信息有该主机的IP地址和硬件地址.
局域网中的所有主机运行的ARP进程会收到这个ARP请求数据包。
因为这个时候主机B的IP地址与请求分组中的IP地址一致,就会发送一个响应的分组回去,同时在这个响应分组中写入自己的硬件地址,在A的IP地址到硬件地址的映射在这个请求分组之中.B直接写这个地址图。
请注意,ARP请求数据包是由广播.发送的,ARP响应数据包是由单播.发送的
收到响应数据包后,A将主机B的IP地址映射到其ARP缓存中的硬件地址。
设置ARP缓存,写入,中每个项目的生命周期,以防止网络适配器的变化。
ARP协议:超过生存时间的项目就会从高速缓存中删除.
先说一下ARP在不同网络上的使用。
如果一台主机要向另一台网络上的主机发送IP数据,此时就需要找到与该主机在同一网络上的路由器的MAC地址,剩下的就由路由器来完成。
如果发送方是路由器,路由器发送ARP请求包,然后如果目的主机和路由器在同一个网络,就可以知道主机的硬件地址。如果不在一个网络上,就发送到另一个连接该网络的路由器上,然后另一个路由器按照上面的方法找到它。