在上面这个网络图中,机器 192.168.0.1 的路由表是
要连接的网络 | 网关IP地址 |
192.168.0.0/24 | 192.168.0.1 |
10.0.0.0/24 | 192.168.0.253 |
0.0.0.0/0 | 192.168.0.254 |
假设机器 192.168.0.1 要向机器 10.0.0.1 发送信息,必须经过网关 192.168.0.253,因此必须把数据包发送给192.168.0.253,但是这个它并不知道 192.168.0.253 的 MAC 地址,所以这个时候就要用到APR协议。
ARP协议
ARP协议表示地址解析协议,用于关联 OSI 第 2 层的 MAC 地址与第 3 层的 IP 地址。
这个时候机器 192.168.0.1 将会发送信息到广播地址(192.168.0.255),请求 192.168.0.253 的 MAC 地址,那么机器 192.168.0.253 会收到这个请求并将自己的 MAC 地址返回给机器 192.168.0.1 ,这样机器192.168.0.1 就能将数据包发送给路由器2,路由器2再将信息转发给机器 10.0.0.1
ARP表则会将 IP 地址与 MAC 地址对应关系记录在表中,这样就避免每次发送信息的时候都必须发送ARP广播。
ARP协议可以帮助我们通过 IP 地址,获知其对应的 MAC 地址,还有一个RARP协议,它表示反向地址解析协议,与ARP正好相反,RARP 协议可以根据 MAC 地址获取 IP 地址。
在 windows 中,可以用命令 arp -a 来查看这个表
上一篇:OSI模型第三层网络层中的路由
下一篇:OSI模型第四层传输层中的UDP和TCP协议