1

我正在计算 IPV6 数据包的校验和值。

在扩展标头的情况下,如何计算伪地址的目标地址和长度字段的值?

4

1 回答 1

2

RFC 2460 第 8.1 节规定了所有这些。一些亮点:

在使用更改目标地址的扩展标头时确定伪标头目标地址时,您使用收件人将看到的目标地址:

如果 IPv6 数据包包含路由头,则伪头中使用的目标地址是最终目标的地址。在始发节点,该地址将位于路由标头的最后一个元素中;在收件人处,该地址将位于 IPv6 标头的目标地址字段中。

在确定上层数据包长度时,您不计算任何扩展标头,只计算最终(上层)标头及其数据:

伪报头中的Upper-Layer Packet Length 是上层报头和数据(例如,TCP 报头加上TCP 数据)的长度。一些上层协议携带自己的长度信息(如UDP头中的Length字段);对于此类协议,这是伪标头中使用的长度。其他协议(例如 TCP)不携带自己的长度信息,在这种情况下,伪标头中使用的长度是 IPv6 标头的有效负载长度减去 IPv6 标头和上层之间存在的任何扩展标头的长度层头。

于 2013-07-09T10:17:00.503 回答