Routers in the NAT address translation, changed the source IP, this certainly will need to recalculate the TCP checksum,
If, in the NAT address translation process, the router hardware because of outside interference or damage, resulting in the process, packet data part appeared error (such as one or several of these data appear to flip)
Thus, NAT process into 1. Source IP change (2) the data content change
Next, recalculate, fill in the TCP checksum
At this point, the checksum is according to the source IP and the replacement has been changed data content to calculate out
When the packet eventually transferred to the target host, although the target host validation check and through, but it's actually changes have taken place in the data section (at this point the checksum is in itself a router has changed according to the data content calculated), is not the source host from the original content,
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
I want to ask, this kind of situation will happen? Or what is the mechanism in the network can prevent or detect the occurrence of this kind of mistake?
The original problem address: https://www.zhihu.com/question/53014790