On 07/01/16 17:22, David Laight wrote:
Isn't it even simpler than that?
The checksum of the inner packet (including its header) is ~0 (ie 0).
So the checksum of the whole packet (for the outer header) is the same
as that of the packet down to the start of the inner header.
Not quite. The inner pseudo-header is included in the inner checksum
calculation, but does not actually appear in the packet. Thus the checksum
of the inner packet is ~sum_of_inner_pseudo_header.
-ed