Maiko,
I think you are chasing a red herring. It is true that the RIP broadcasts have no checksum, but that is unlikely to be the cause of any problem you may have. Checksums are optional in UDP, these packets don't have them (I can confirm that in a trace on my gateway), but that is not a reason not to process them.
It could be argued that it would be better to send the packets with checksum, which could be accomplished using the |SO_NO_CHECK socket option.
Rob |
On Wed, Jul 26, 2017 at 08:52:58PM +0200, Rob Janssen wrote:
It could be argued that it would be better to send the packets with checksum, which could be accomplished using the |SO_NO_CHECK socket option. Rob
1. There is no socket option called that in FreeBSD. Amprgw is not Linux.
2. We're not using the kernel socket mechanism to construct the UDP packets; they are manually built inside encap packets by the ripsend process, so adding the checksum to the UDP packets requires adding code to calculate it in the rip sender. I'll look into it but it's not as simple as turning on a socket option. - Brian