Changing the source address changes the IPv4 header checksum.

highlighted = computed this step

The IP checksum must be repaired

Changing the source address changes the IP version 4 header checksum input.

after IP checksum=0xb23e\text{after IP checksum}=0xb23e
After IP checksumThe after IP header checksum is recomputed with the checksum word zeroed.After IP checksum compute - compute zero word 5rowindexvalueword00x4500word10x001eword20x2222word30x4000word40x4011word50x0000 (zeroed)word60xcb00word70x7105word80xc633word90x6435raw sum0x00034dbefolded0x4dc1result0xb23e

Before and after IP checksums

The IP checksum changes from 0x2c92 to 0xb23e.

0x2c920xb23e0x2c92\to0xb23e
After IP checksumThe after IP header checksum is recomputed with the checksum word zeroed.After IP checksum compute - compute zero word 5rowindexvalueword00x4500word10x001eword20x2222word30x4000word40x4011word50x0000 (zeroed)word60xcb00word70x7105word80xc633word90x6435raw sum0x00034dbefolded0x4dc1result0xb23e

Compute with checksum word zeroed

Compute mode zeroes word index 5 before taking the complement.

zeroed word=5\text{zeroed word}=5
After IP checksumThe after IP header checksum is recomputed with the checksum word zeroed.After IP checksum compute - compute zero word 5rowindexvalueword00x4500word10x001eword20x2222word30x4000word40x4011word50x0000 (zeroed)word60xcb00word70x7105word80xc633word90x6435raw sum0x00034dbefolded0x4dc1result0xb23e

Summary

A source address rewrite requires a new IP header checksum.

after IP checksum=0xb23e\text{after IP checksum}=0xb23e
After IP checksumThe after IP header checksum is recomputed with the checksum word zeroed.After IP checksum compute - compute zero word 5rowindexvalueword00x4500word10x001eword20x2222word30x4000word40x4011word50x0000 (zeroed)word60xcb00word70x7105word80xc633word90x6435raw sum0x00034dbefolded0x4dc1result0xb23e