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.

0x2c92→0xb23e0x2c92\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