The most likely cause of checksum "errors" when capturing packets with Wireshark is the driver/NIC combination of the machine you are doing this with. Many NICs are able to offload this function from the main CPU, improving performance. The normal network driver knows to ignore the checksum, not doing the work, and assumes it is being handled correctly by the NIC. Wireshark however calculates the checksum by default and matches it with what is in the packet, reporting the error falsely. It is unlikely you will receive real errors with Wireshark, as the CRC32 checks by the NIC and switch will drop errored packets and you won't see them. So you are best off turning this feature off in the appropriate preferences section for each protocol.
See
http://www.wireshark.org/docs/wsug_html_chunked/ChAdvChecksums.html for more details.
Regards, Martin
MartinVisser99@xxxxxxxxx