-
Notifications
You must be signed in to change notification settings - Fork 5.2k
UDP packet gets checksummed incorrectly by the network interface #2844
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Some checksumming issues have been found and fixed since the kernel version you have now. Please run |
Please confirm that this is on a 3B and not a 3B+ - they have different network chips and therefore this is critical to debugging the issue. 4.14.50 is 7 months old and there have been a far number of fixes to both LAN drivers since then, although not apparently directly in this area. Can you update your kernel to the latest 4.14 kernel please? (The latest release from the Raspbian repos should be from mid December IIRC) After updating, please provide the complete hex dump from tcpdump for these nominally corrupt packets. There's also something strange about the MAC address that your computer is using. The first 3 octets of a MAC address should be registered to the manufacturer. f4:8e:38 is not a registered manufacturer, and I'd want to check whether it is actually valid (there are rules to dictate unicast vs multicast vs broadcast based on the MAC address, and I can't recall them off the top of my head). |
@6by9 I can confirm that this is on a 3B (according to the PCB markings: "Raspberry Pi 3 Model B V1.2"). The output from I will post updates once I update the kernel. |
Uh oh!
There was an error while loading. Please reload this page.
Describe the bug
When running a DHCP server on the Raspberry Pi, the output from
sudo tcpdump -n udp port 67 -e -vv
shows that there are packets coming from the Raspberry Pi that have bad checksums. Specifically, the DHCP clients never receive theDHCPOFFER
packet.Once the offloading of checksums has been disabled (using
sudo ethtool --offload eth0 tx off
) there are no more packets with bad checksums (i.e. there is no longer any problem). That is why I suspect that there is an issue with some drivers in the kernel.Because I am a beginner at networking, I have not reached the stage where I know how to produce a minimal example of packets. I hope you'll find it permissible for me to refer you to my question on the Raspberry Pi Stack Exchange.
Should you require further information, I will be happy to provide it.
Expected behaviour
The UDP packet has the correct checksum.
Actual behaviour
The UDP packet has a bad checksum.
System
Raspberry Pi 3 B
cat /etc/rpi-issue
)?vcgencmd version
)?uname -a
)?Linux rpi 4.14.50-v7+ #1122 SMP Tue Jun 19 12:26:26 BST 2018 armv7l GNU/Linux
The text was updated successfully, but these errors were encountered: