《TCP/IP详解》学习笔记-第4/5章 ARP和RARP
2016-05-11 17:03
816 查看
1、ARP:地址解析协议
ARP为IP地址到对应的硬件地址(MAC地址)之间提供动态映射。主要流程:当主机要发送一个IP包的时候,会首先查一下自己的ARP高速缓存(就是一个IP-MAC地址对应表缓存),如果查询的IP-MAC值对不存在,那么主机就向网络发送一个ARP协议广播包,这个广播包里面就有待查询的IP地址,而直接收到这份广播的包的所有主机都会查询自己的IP地址,如果收到广播包的某一个主机发现自己符合条件,那么就准备好一个包含自己的MAC地址的ARP包传送给发送ARP广播的主机,而广播主机拿到ARP包后会更新自己的ARP缓存(就是存放IP-MAC对应表的地方)。发送广播的主机就会用新的ARP缓存数据准备好数据链路层的的数据包发送工作。
总结:
(1)在A不知道B的MAC地址的情况下,A就广播一个ARP请求包,请求包中有B的IP
(2)以太网中的所有计算机都会接收这个请求,而正常的情况下只有B会给出ARP应答包,包中就填充上了B的MAC地址,并回复给A。
(3)A得到ARP应答后,将B的MAC地址放入本机缓存,便于下次使用。
(4)发送IP数据报到目的主机
本机MAC缓存是有生存期的,生存期结束后,将再次重复上面的过程。
ARP的分组格式:
2、RARP:逆地址解析协议
RARP工作原理:(1)将源设备和目标设备的MAC地址字段都设为发送者的MAC地址和IP地址,发送主机发送一个本地的RARP广播,能够到达网络上的所有设备,在此广播包中,声明自己的MAC地址并且请求任何收到此请求的RARP服务器分配一个IP地址;
(2)本地网段上的RARP服务器收到此请求后,检查其RARP列表,查找该MAC地址对应的IP地址;
(3)如果存在,RARP服务器就给源主机发送一个响应数据包并将此IP地址提供给对方主机使用;如果不存在,RARP服务器对此不做任何的响应;
(4) 源主机收到从RARP服务器的响应信息,就利用得到的IP地址进行通讯;如果一直没有收到RARP服务器的响应信息,表示初始化失败。
相关文章推荐
- 深入浅出TCP之半关闭与CLOSE_WAIT
- iOS网络基础
- iOS网络基础
- HttpServletRequestWrapper
- Xcode启用Https
- 计算机网络之面试常考
- http get post
- AngularJs中$http发送post或者get请求,SpringMVC后台接收不到参数值的解决办法
- 攻击与防范
- HTTPS解析
- 网络模型
- okhttputils开源库的混淆配置(Eclipse)
- 攻击和防范
- Spring Bean中方法调用/http请求调用/存储过程调用实现的工具类
- 《TCP/IP详解》学习笔记-第3章 IP:网际协议
- 企业邮箱提高安全防护的解决方案
- HTTP基本认证(Basic Authentication)的JAVA示例
- 使用google的开源框架Volley,功能一:网络请求Json数据
- 如何用70行Java代码实现深度神经网络算法
- HTTPS跨域访问时,证书导致的问题