常见的网络层协议

常见的网络层协议
2019年10月13日
1:16
常见的网络层协议
ICMP是TCP/IP协议簇的核心协议之一,它用于在IP网络设备之间发送控制报文,传递差错、 控制、查询等信息。
请注意:ICMP只是确定了网络层以下的连通性,至于上层的连通性并不能确定,当然我们不关注上层之间的连通性
在这里插入图片描述
ICMP重定向
在这里插入图片描述
ICMP Redirect重定向消息用于支持路由功能。
如图所示,主机A希望发送报文到服务器A,
根据配置的默认网关地址向网关RTB发送报文。
网关RTB收到报文后,检查报文信息, 发现报文应该转发到与源主机在同一网段的另一个网关设备RTA,因为此转发路径是更优的路径,所以RTB会向主机发送一个Redirect消息,通知主机直接向另一个网关RTA发送该 报文。
主机收到Redirect消息后,会向RTA发送报文,然后RTA会将该报文再转发给服务 器A。
ICMP差错校验
在这里插入图片描述
ICMP Echo消息常用于诊断源和目的地之间的网络连通性,同时还可以提供其他信息,如 报文往返时间等。
ICMP错误报告
在这里插入图片描述
ICMP定义了各种错误消息,用于诊断网络连接性问题;根据这些错误消息,源设备可以判 断出数据传输失败的原因。
ICMP的数据包格式
在这里插入图片描述
ICMP消息的格式取决于Type和Code字段,其中Type字段为 消息类型,Code字段包含该消息类型的具体参数。后面的校验和字段用于检查消息是否完整。
ICMP消息类型和编码类型
在这里插入图片描述

ICMP具体应用-Ping
在这里插入图片描述
Ping是检测网络连通性的常用工具,同时也能够收集其他 相关信息。用户可以在Ping命令中指定不同参数
-a source-ip-address 指定发送ICMP ECHO-REQUEST报文的源IP地址, 如果不指定源 IP地址,将采用出接口的IP地址作为ICMP ECHO-REQUEST报文发送的源地址
-c count 指定发送ICMP -REQUEST报文次数。缺省情况下发送5个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指定tracert报文的源地址。 l
-f first-ttl指定初始TTL。缺省值是1。 l
-m max-ttl指定最大TTL。缺省值是30。 l
-name使能显示每一跳的主机名。 l
-p port指定目的主机的UDP端口号。
在这里插入图片描述

总结:
Ping使用的是哪两类ICMP消息?
当网络设备收到TTL值为0的IP报文时候,会如何处理?

ARP协议
一个网络设备要发送数据给另一个网络设备时,必须要知道对方的IP地址。但是,仅有IP 地址是不够的,因为IP数据报文必须封装成帧才能通过数据链路进行发送,而数据帧必须 要包含目的MAC地址,因此发送端还必须获取到目的MAC地址。每一个网络设备在数据封装前都需要获取下一跳的MAC地址。IP地址由网络层来提供,MAC地址通过ARP协议来获取。ARP协议是TCP/IP协议簇中的重要组成部分,它能够通过目的IP地址获取目标设备的 MAC地址,从而实现数据链路层的可达性
ARP数据包格式 可以抓包查看
在这里插入图片描述
注意:ARP报文不能穿越路由器,不能被转发到其他广播域
Hardware Type表示硬件地址类型,一般为以太网; l
Protocol Type表示三层协议地址类型,一般为IP; l
Hardware Length和Protocol Length为MAC地址和IP地址的长度,单位是字节; l
Operation Code指定了ARP报文的类型,包括ARP Request和ARP Reply; l
Source Hardware Address指的是发送ARP报文的设备MAC地址; l
Source Protocol Address指的是发送ARP报文的设备IP地址; l
Destination Hardware Address指的是接收者MAC地址,在ARP Request报文中,该字 段值为0; l
Destination Protocol Address指的是接收者的IP地址。
ARP的工作过程

ARP缓存表 arp cache
在这里插入图片描述
如果目标设备位于其他网络,则源设备会在ARP缓存表中查找网关的MAC地址,然后将数据发送给网关,网关再把数据转发给目的设备。
ARP请求
在这里插入图片描述
ARP Request报文会在整个网络上传 播,该网络中所有主机包括网关都会接收到此ARP Request报文。网关将会阻止该报文发 送到其他网络上。
ARP响应
所有的主机接收到该ARP Request报文后,都会检查它的目的协议地址字段与自身的IP地 址是否匹配。如果匹配,则该主机会将ARP报文中的源MAC地址和源IP地址信息记录到自己的ARP缓存表中,然后通过 ARP Reply报文进行响应。
在这里插入图片描述

ARP代理:
在这里插入图片描述
免费ARP:检测IP地址是否冲突 更新网络节点关于地址的更新
在这里插入图片描述
总结:
网络设备在什么情况下发送ARP request?
网络设备什么时候会产生免费ARP?

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值