Fix typo.
No need for casting back and forth.

That might also convince the compiler that it can "helpfully" optimize
the copy into something that assumes 4-byte alignment, which we don't
want it to do on platforms where the optimized code will trap if the IP
header *isn't* aligned on a 4-byte boundary, given that there's no
guarantee that it *is* aligned on a 4-byte boundary.
Another case where UNALIGNED_MEMCPY() is probably necessary.

It was necessary in other cases where we copied IP addresses from the IP
header, so it's probably necessary here as well.
More UNALIGNED_MEM{CPY,CMP} on IP addresses.
As with memcpy, so with memcmp.