PING utility generates an invalid checksum in the IP header when an odd packet size is specified. It appears through testing that the contents of the data buffer cause the intermittant operation. When the start of the buffer begins with 0x00 the checksum error does not manifest. The data at the start of the buffer appears random in all tested linux version (5.2, 6.0, and 6.1) and this in turn appears to be the cause of the intermittent failure. We have found this same bug in other PING utilities and router code. Verification used an external network sniffer as well as other network clients, including PING under Win98 (yech!) which worked correctly. I realize this is not a RED HAT component, but I cannot find the OSF individual responsible for this component, and Im daunted by the prospect of installing the sources and digging to find it. If you or someone else will send the source file I'll gladly fix it for ya! Best regards, Bob Kennett
What version of netkit-base are you using? (try rpm -qf /bin/ping) A problem with broken checksums on odd length packates was fixed in June IIRC. ------- Email From Robert Kennett <rkennett> 12/10/99 15:54 ------- Attached to Bug # 7739.
Try the netkit-base-0.10-37 from Red Hat 6.1. That should fix the odd len checksum problem and a few other persnickety bugs. However, watchout for the changed semantics of -c (use -w instead). Please reopen this bug if netkit-base-0.10-37 does not fix your problem.