作者:Annie千寻_535 | 来源:互联网 | 2023-09-24 20:13
4.6ARP、DHCP、ICMP由于在实际网络的链路上传送数据帧时,最终必须使用MAC地址(MAC用于唯一标识硬件)。ARP协议:完成主机或路由器IP地址到MAC地址的映射。解决下
4.6 ARP、DHCP、ICMP
由于在实际网络的链路上传送数据帧时,最终必须使用MAC地址(MAC用于唯一标识硬件)。
ARP协议:完成主机或路由器IP地址到MAC地址的映射。解决下一跳走哪的问题
ARP协议使用过程:
- 检查ARP高速缓存,有对应表项则写入MAC帧
- 没有则用目的MAC地址为FF-FF-FF-FF-FF-FF的帧封装并广播ARP请求分组
- 同一局域网中所有主机都能收到该请求。
- 目的主机收到请求后就会向源主机单播一个ARP响应分组,源主机收到后将此映射写入ARP缓存(10-20min更新一次)
- ARP协议是自动进行的。
例
主机发送IP数据报给主机B,经过了5个路由器,请问此过程总共使用了几次ARP协议?
共需6次,每一次都是下一跳的MAC
ARP协议4种典型情况:
1.主机A发给本网络上的主机B:用ARP找到主机B的硬件地址;
2.主机A发给另一网络上的主机B:用ARP找到本网络上一个路由器(网关)的硬件地址;
3.路由器发给本网络的主机A:用ARP找到主机A的硬件地址;
4.路由器发给另一网络的主机B:用ARP找到本网络上的一个路由器的硬件地址。
DHCP协议
IP配置分类
- 静态配置
- 一个机房内的所有电脑的IP是固定的
- 有其特定的子网掩码,默认网关
- 动态配置
- 来教室上课的学生的手机的IP地址是在动态改变的。
- 这里就需要用到DHCP协议
动态主机配置协议DHCP
- 是应用层协议,使用客户/服务器方式,
- 客户端和服务端通过广播方式进行交互,基于UDP。
- 提供即插即用联网的机制,主机可以从服务器动态获取IP地址、子网掩码、默认网关、DNS服务器名称与IP地址
- 允许地址重用,支持移动用户加入网络,支持在用地址续租。
过程
- 1.主机广播DHCP发现报文
- “有没有DHCP服务器呀?”——试图找到网络中的服务器,服务器获得一个IP地址。
- 2.DHCP服务器广播DHCP提供报文
- “有!”“有!”“有!”——服务器拟分配给主机一个IP地址及相关配置,先到先得。
- 3.主机广播DHCP请求报文
- “我用你给我的IP地址啦?”——主机向服务器请求提供IP地址。
- 4.DHCP服务器广播DHCP确认报文
ICMP协议
网际控制报文协议ICMP
为了更有效地转发IP数据报和提高交付成功的机会
类型
支持主机或路由器:
差错报告、网络探寻时——发送特定的ICMP报文:ICMP差错报文、ICMP询问报文
ICMP差错报告报文(5种)
- 1.终点不可达:当路由器或主机不能交付数据报时就向源点发送终点不可达报文。 无法交付
- 【2.源点抑制:当路由器或主机由于拥塞而丢弃数据报时,就向源点发送源点抑制报文,使源点知道应当把数据报的发送速率放慢。 拥塞丢数据】(貌似已弃用)
- 3.时间超过:当路由器收到生存时间TTL=0的数据报时,除丢弃该数据报外,还要向源点发送时间超过报文。当 终点在预先规定的时间内不能收到一个数据报的全部数据报片时,就把已收到的数据报片都丢弃,并向源点发 送时间超过报文。 TTL=0
- 4.参数问题:当路由器或目的主机收到的数据报的首部中有的字段的值不正确时,就丢弃该数据报,并向源点发 送参数问题报文。 首部字段有问题
- 5.改变路由(重定向):路由器把改变路由报文发送给主机,让主机知道下次应将数据报发送给另外的路由器 (可通过更好的路由)。值得更好的路由
不应发送ICMP差错报文的情况
1.对ICMP差错报告报文不再发送ICMP差错报告报文。
2.对第一个分片的数据报片的所有后续数据报片都不发送ICMP差错报告报文。
3.对具有组播地址的数据报都不发送ICMP差错报告报文。
4.对具有特殊地址(如127.0.0.0或0.0.0.0)的数据报不发送ICMP差错报告报文。
ICMP询问报文
1.回送请求和回答报文 主机或路由器向特定目的主机发出的询问,收到此报文的主机必须给源主机或路由器发送ICMP回送回答报文。测试目的站是否可达以及了解其相关状态。
2.时间戳请求和回答报文 请某个主机或路由器回答当前的日期和时间。用来进行时钟同步和测量时间。
3.掩码地址请求和回答报文 【废】
4.路由器询问和通告报文【废】
ICMP的应用
- PING 测试两个主机之间的连通性,使用了ICMP回送请求和回答报文。
- Traceroute 跟踪一个分组从源点到终点的路径,使用了ICMP时间超过差错报告报文。
“朝着一个既定的方向去努力,就算没有天赋,在时间的积累下应该也能稍稍有点成就吧。”