一般网络层协议
2019年10月13日
1:16
常见的网络层协议
ICMP是TCP/IP协议簇的核心协议之一,用于在IP网络设备之间发送和接收控制消息,并传输错误、控制、查询等信息。
注意: ICMP只是决定了网络层以下的连接性,而不能决定上层的连接性。 当然不关注上层之间的连接性
ICMP重定向
ICMP Redirect重定向消息用于支持路由功能。
如图所示,主机a想要向服务器a发送消息,
根据设置的默认网关地址向网关RTB发送消息。
在收到消息后,网关RTB检查消息信息并发现应当向与源主机位于相同网络段上的另一网关设备RTA转发消息。 由于该转发路径是更好的路径,所以RTB向主机发送Redirect消息,告知主机将直接向另一个网关RTA发送消息。
当主机接收到Redirect消息时,其向RTA发送消息,并将该消息转发回服务器a。
ICMP差错校验
ICMP Echo消息经常用于诊断信源和目的地之间的网络连接,并可以提供其他信息,例如消息的往返时间。
I CMP错误报告
ICMP定义了用于诊断网络连接问题的各种错误消息。 根据这些错误消息,源设备可以确定数据传输失败的原因。
ICMP的数据包格式
ICMP消息的格式取决于Type和Code字段。 其中Type字段是消息类型,Code字段包含消息类型的特定参数。 以下校验和字段用于检查消息是否完整。
ICMP消息类型和编码类型
ICMP的具体应用——萍
Ping是用于检测网络连接的通用工具,也能够收集其他相关信息。 用户可以通过Ping命令指定不同的参数
-a source-ip-address指定要发送ICMP ECHO-REQUEST消息的发送源IP地址;如果没有指定发送源IP地址,则将发送源IP地址指定为ICMP ECHO-REQUEST消息的发送源地址
-c count指定发送ICMP -REQUEST消息的次数。 默认情况下发送五条ICMP ECHOREQUEST消息。
-h ttl-value指定TTL的值。 默认值为255
-t timeout指定发送ICMP ECHO-REQUEST后等待ICMP ECHO-REPLY的超时时间
ICMP应用-tracert
ICMP的另一个典型应用是Tracert。 Tracert基于消息报头的TTL值逐跳地跟踪消息的转发路径。 为了跟踪去往某个特定目的地的路径,源端首先将消息的TTL值设为1。 当该消息到达第一个节点之后TTL超时时,该节点将TTL超时消息发送到源侧,并对每条消息具有时间戳。 接下来,源端将消息的TTL值设置为2,消息到达第二节点,将超时,第二节点以相同的方式将返回TTL超时消息,直到消息到达目的地
一般配置参数:
-a source-ip-address指定跟踪消息的源地址。 LL
-f first-ttl指定初始TTL。 默认值为1。 LL
-m max-ttl指定最大TTL。 默认值为30。 LL
-启用-name后,将显示每个跳的主机名。 LL
-p port指定目标主机的UDP端口号。
总结:
Ping正在使用哪两种类型的ICMP消息?
如果网络设备接收到TTL值为0的IP消息,该如何处理?
ARP协议
一台网络设备向另一台网络设备发送数据时,需要知道对方的IP地址。 但是,仅有IP地址是不够的。 发送方还必须获取目标MAC地址,因为IP数据消息必须封装在帧中才能通过数据链路发送,并且数据帧必须包含目标MAC地址。 每个网络设备在封装数据之前必须获得下一跳的MAC地址。 IP地址是从网络层提供的,MAC地址是通过ARP协议获得的。 ARP协议是TCP/IP协议簇的重要组成部分,可以从目标IP地址获取目标设备的MAC地址,实现数据链路层的可访问性
ARP数据包格式可以捕获数据包进行查看
注意: ARP消息不能穿越路由器或转发到其他广播域
硬件类型表示硬件地址类型,通常表示以太网; LL
协议类型表示三层协议的地址类型,通常是IP; LL
硬件长度和协议长度是MAC地址和IP地址的长度,单位为字节。 LL
操作代码指定ARP消息的类型,包括ARP Request和ARP Reply。 LL
源硬件地址是发送ARP消息的设备的MAC地址。 LL
源协议地址是发送ARP消息的设备的IP地址。 LL
Destination Hardware Address是收件人的MAC地址,在ARP Request消息中,该字段的值为0。 LL
目标协议地址是收件人的IP地址。
ARP的作业步骤
ARP缓存表ARP缓存
如果目标设备位于其他网络中,则源设备会在ARP缓存表中查找网关的MAC地址,将数据发送到网关,然后网关会将数据转发到目标设备。
ARP请求
ARP Request消息将上载到整个网络,并且该网络中的所有主机(包括网关)都会接收此ARP Request消息。 网关阻止消息发送到其他网络。
ARP应答
所有主机收到ARP Request消息时,都会检查目标协议地址字段是否与其IP地址相匹配。 如果匹配,则主机将ARP消息的源MAC地址和源IP地址信息记录在其ARP缓存表中,并用ARP Reply消息进行响应。
ARP代理:
33558 www.Sina.com/:检测到IP地址冲突并更新网络节点地址更新
总结:
网络设备在什么情况下发送ARP request?
网络设备什么时候产生免费的ARP?