ICMP重定向

ICMP重定向报文是ICMP控制报文中的一种。在特定的情况下,当路由器检测到一台机器使用非优化路由的时候,它会向该主机发送一个ICMP重定向报文,请求主机改变路由。路由器也会把初始数据报向它的目的地转发。

如上图所示,R3想发送数据报给R4,R3的默认网关是R1,R3将数据报发送给R1,R1查看自己的路由表,到达R4的下一跳地址是R2,当把数据报发送给R2时,R1检测到它正在发送数据报的接口与数据报到达的接口是相同的,R1,R2,R3位于同一LAN,这样就满足了ICMP重定向的条件。R1会发送一份ICMP重定向报文给R3,告诉它以后将数据报发送给R2而不是R1。

重定向一般是用来让具有很少选路信息的主机逐渐建立更完善的路由表。需要路由器向源发送ICMP重定向的情况是:

1)源将数据报发送给路由器的入端口(R3->R1)和路由器发送数据报的出端口(R1->R2)必须相等

2)数据报的源IP和自己转发时的下一跳IP地址是同网段的(R3,R1)

ICMP重定向报文格式为


类型

代码

校验和

重定向网关 IP

原包的IP首部

                                   源IP数据报前8个字节

类型为5,代码包括4种,其中0为网络重定向,1为主机重定向,2为服务类型和网络重定向,3为服务类型和主机重定向。一般用的是1和3,主机的重定向。

时间: 2024-10-26 05:51:28

ICMP重定向的相关文章

GNS3 模拟icmp重定向

网关实质上是一个网络通向其他网络的IP地址.比如有网络A和网络B,网络A的IP地址范围为“192.168.1.1~192. 168.1.254”,子网掩码为255.255.255.0:网络B的IP地址范围为“192.168.2.1~192.168.2.254”,子网掩码为255.255.255.0.在没有路由器的情况下,两个网络之间是不能进行TCP/IP通信的,即使是两个网络连接在同一台交换机(或集线器)上,TCP/IP协议也会根据子网掩码(255.255.255.0)判定两个网络中的主机处在不

计算机网络(5)-----ICMP协议和PING程序

控制报文协议(Internet Control Message Protocol) 定义 它是TCP/IP协议族的一个子协议,用于在IP主机.路由器之间传递控制消息.控制消息是指网络通不通.主机是否可达.路由是否可用等网络本身的消息. 简介 ICMP报文就像是IP报文的小弟,总顶着IP报文的名头出来混.因为ICMP报文是在IP报文内部的,如图: IP协议并不是一个可靠的协议,它不保证数据被送达,那么,自然的,保证数据送达的工作应该由其他的模块来完成.其中一个重要的模块就是ICMP(网络控制报文)

《TCP/IP详解卷2:实现》笔记--ICMP:Internet控制报文协议

ICMP在IP系统间传递差错和管理报文,是任何IP实现必须和要求的组成部分.可以把ICMP分成两类:差错和查询.查询报文 是用一对请求和回答定义的.差错报文通常包含了引起错误的IP包的第一个分片的IP首部(和选项),加上该分片数据部分 的前8个字节. 下图显示了所有目前定义的ICMP报文.双线上面的是请求和回答报文,双线下面的是差错报文. PRC_栏显示了Net/3处理的与协议无关的差错码和ICMP报文之间的映射.对请求和回答,这一列是空的.因为在这种情况 下不会产生差错.如果对一个ICMP差错

ICMP协议-路由交换原理4-【HCNA笔记】

1.ICMP数据包格式 ICMP协议属于网络层,是TCP/IP协议族的一个子协议,ICMP数据包被封装在IP报文中.网络中传递的ICMP包示意如下,: ICMP数据包格式 帧头 IP报头 Data(ICMP包) FCS Type Code Checksum data 8位 8位 16位 按需要 Type:消息类型. Code:消息类型的具体参数. Checksum:校验字段,用于检查消息是否完整:在ICMP重定向消息中用于指定网关IP地址:在Echo Reply消息中这个字段包含标识符和序号.

tcp/ip--IP 协议首部格式与其配套使用的四个协议(ARP,RARP,ICMP,IGMP)

IP 数据报首部 最高位在左边,记为0 bit:最低位在右边,记为31 bit 版本: 占 4 位,指 IP 协议的版本目前的 IP 协议版本号为 4 (即 IPv4) 首部长度: 占4位,可表示的最大数值是15个单位(一个单位为 4 字节)因此IP 的首部长度的最大值是 60 字节 区分服务: 占8位,用来获得更好的服务,在旧标准中叫做服务类型,但实际上一直未被使用过.1998 年这个字段改名为区分服务.只有在使用区分服务(DiffServ)时,这个字段才起作用.一般的情况下都不使用这个字段

ICMP RIP OSPF

(一)ICMP IP是一个尽力的不可靠的协议,IP不能提供差错控制(如果数据在传播过程中出现错误了),这个时候ICMP就起作用了. ICMP提供两个功能:差错的报告,查询. ICMP的ICMP包分为两类,一个是差错报文,一个是查询报文. ICMP目标不可达:即没办法将IP数据包发送到对应的目标地址,然后路由器会发一个ICMP给源主机,告诉他目标不可达的原因. ICMP源抑制:当主机发送数据到另一主机时,如果速度达到路由器或者链路的饱和状态,路由器发出一个 ICMP 源抑制消息. ICMP 重定向

IP协议首部格式与其配套使用的四个协议(ARP,RARP,ICMP,IGMP)

目录 IP协议首部格式 地址解析协议 ARP 逆向地址解析协议 RARP 网际控制报文协议 ICMP 网际组管理协议IGMP IP 数据报首部 IP数据报首部格式: 最高位在左边,记为0 bit:最低位在右边,记为31 bit 版本: 占 4 位,指 IP 协议的版本目前的 IP 协议版本号为 4 (即 IPv4) 首部长度: 占4位,可表示的最大数值是15个单位(一个单位为 4 字节)因此IP 的首部长度的最大值是 60 字节 区分服务: 占8位,用来获得更好的服务,在旧标准中叫做服务类型,但

《网络协议》ICMP 协议

ICMP 协议概述 ICMP 经常被认为是 IP 层的一个组成部分,它传递差错报文以及其他需要注意的信息.ICMP 报文通常被 IP 层或更高层协议(TCP 或 UDP)使用.ICMP 报文是在 IP 数据报内部传输的.IP 协议是不可靠协议,不能保证 IP 数据报能够成功的到达目的主机,无法进行差错控制,而 ICMP 协议能够协助 IP 协议完成这些功能.下面是 ICMP 报文的数据结构: 类型:一个 8 位类型字段,表示 ICMP 数据包类型: 代码:一个 8 位代码域,表示指定类型中的一个

网络层 IP 协议首部格式与其配套使用的四个协议(ARP,RARP,ICMP,IGMP)

目录 IP协议首部格式地址解析协议 ARP逆向地址解析协议 RARP网际控制报文协议 ICMP网际组管理协议IGMP IP 数据报首部 IP数据报首部格式: 最高位在左边,记为0 bit:最低位在右边,记为31 bit 版本: 占 4 位,指 IP 协议的版本目前的 IP 协议版本号为 4 (即 IPv4) 首部长度: 占4位,可表示的最大数值是15个单位(一个单位为 4 字节)因此IP 的首部长度的最大值是 60 字节 区分服务: 占8位,用来获得更好的服务,在旧标准中叫做服务类型,但实际上一