Redirect Message (重定向消息)
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Code | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Gateway Internet Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Internet Header + 64 bits of Original Data Datagram |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
IP字段 (IP Fields)
Destination Address (目的地址)
原始数据报数据的源网络和地址.
ICMP字段 (ICMP Fields)
Type (类型)
5
Code (代码)
- 0 = Redirect datagrams for the Network (为网络重定向数据报).
- 1 = Redirect datagrams for the Host (为主机重定向数据报).
- 2 = Redirect datagrams for the Type of Service and Network (为服务类型和网络重定向数据报).
- 3 = Redirect datagrams for the Type of Service and Host (为服务类型和主机重定向数据报).
Checksum (校验和)
校验和是从ICMP类型开始的ICMP消息的反码和的16位反码. 计算校验和时, 校验和字段应该 (SHOULD) 为零. 该校验和将来可能 (MAY) 被替换.
Gateway Internet Address (网关互联网地址)
应该向其发送流量的网关地址, 用于原始数据报数据的Internet目标网络字段中指定的网络.
Internet Header + 64 bits of Data Datagram (互联网头部 + 64位数据数据报)
Internet头部加上原始数据报数据的前64位. 该数据被主机用于将消息与相应的进程匹配. 如果更高层协议使用端口号, 则假定它们位于原始数据报数据的前64位数据中.
描述 (Description)
网关在以下情况下向主机发送重定向消息. 网关G1从连接到该网关的网络上的主机接收Internet数据报. 网关G1检查其路由表并获取到数据报Internet目标网络X的路由上的下一个网关G2的地址. 如果G2和由数据报Internet源地址标识的主机在同一网络上, 则向该主机发送重定向消息. 重定向消息建议主机将其去往网络X的流量直接发送到网关G2, 因为这是到达目的地的更短路径. 网关将原始数据报数据转发到其Internet目的地.
对于具有IP源路由选项且网关地址在目的地址字段中的数据报, 即使存在到最终目的地的比源路由中下一个地址更好的路由, 也不会发送重定向消息.
Code 0, 1, 2和3可以 (MAY) 从网关接收.