Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 6 Dec 2001 09:22:41 -0600 (CST)
From:      mark tinguely <tinguely@web.cs.ndsu.nodak.edu>
To:        freebsd@hoolan.org, tlambert2@mindspring.com
Cc:        freebsd-hackers@FreeBSD.ORG
Subject:   Re: UDP checksum error after encapsulating multicast packet
Message-ID:  <200112061522.fB6FMf588025@web.cs.ndsu.nodak.edu>
In-Reply-To: <3C0F86D4.77A6748B@mindspring.com>

next in thread | previous in thread | raw e-mail | index | archive | help
the UDP checksum should not change before encapsulation. re-displaying
your packets:

18:27:12.968167 192.9.200.127.1399 > 224.2.3.4.1234: [udp sum ok] udp
16 (ttl 16, id 38554, len 44)
	4500 002c 969a 0000 1011 a897 c009 c87f
			    ^^   ^^^^
			    ttl  ipcksm
	e002 0304 0577 04d2 0018 22c5
				 ^^^^
				 udpcksm
	ea02 0400 3c0f 4401 0001 3145 c7c6 0000
			data

18:27:12.968185 192.9.200.127 > 150.9.120.183: 192.9.200.127.1399 >
224.2.3.4.1234:  [bad udp cksum bb7!] udp 16 (ttl 15, id 38554, len 44)
(ttl 64, id 38555, len 64)
	4500 0040 969b 0000 4004 4cd5 c009 c87f
	9609 78b7
		ip-ip ecap (not use in the below UDP checksum)
	4500 002c 969a 0000 0f11 a997 c009 c87f
			    ^^   ^^^^
			    ttl  ipcksm
	e002 0304 0577 04d2 0018 6bb9
				 ^^^^
				 udpcksm
	ea02 0400 3c0f 4401 0001 3145 c7c6 0000

the only thing that changes from the first calculation of the UDP checksum
to the final calculation of the UDP checksum is the decrement of the TTL and
the adjustment of the IP header checksum these changes will not change the
UDP checksum (they cancel out).

My best guess is that someone has the UDP src, dst and ports in host
order not net order and on Intel arch. this causes a UDP checksum error.
It may have something to do with this being the originating host,
and wee have a copy of the packet before the net byte order was restored.

--mark tinguely.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200112061522.fB6FMf588025>