So I tracked down the bug to a "feature" within the original fragroute code. You can disable this by commenting out the following 3 lines in src/fragroute/fragroute.c in fragroute_process() (around lines 72-74)
if (pkt->pkt_eth && htons(pkt->pkt_eth->eth_type) == ETH_TYPE_IP) { ip_checksum(pkt->pkt_ip, len); } That should prevent the packets from having their checksums recalculated prior to being fragged. After this, IPv4 checksums will still be calculated for each IP fragment, but the layer 4 checksums (TCP, UDP) will not be (assuming at least you have a recent version of libdnet installed). Anyways, this fix will be in the next release. On Thu, Dec 16, 2010 at 9:35 AM, Aaron Turner <synfina...@gmail.com> wrote: > That version is a bit out of date (3.4.4 is the latest), but I'm not > aware of anything that would change that functionality since 3.4.1. > If you get a chance, give 3.4.4 a try (it does fix other bugs) and > I'll see about reproducing your problem and coming up with a fix in > 3.4.5. > > -- > Aaron Turner > http://synfin.net/ Twitter: @synfinatic > http://tcpreplay.synfin.net/ - Pcap editing and replay tools for Unix & > Windows > Those who would give up essential Liberty, to purchase a little temporary > Safety, deserve neither Liberty nor Safety. > -- Benjamin Franklin > "carpe diem quam minimum credula postero" > > > > > 2010/12/16 Виноградов Юрий <vin123...@mail.ru>: >> I am using tcprewrite version 3.4.1 (build 2229). >> >> -----Original Message----- >> From: Aaron Turner [mailto:synfina...@gmail.com] >> Sent: Thursday, December 16, 2010 12:42 AM >> To: Main forum for tcpreplay >> Subject: Re: [Tcpreplay-users] tcprewrite: UDP checksum error when >> fragmenting it >> >> 2010/12/15 Виноградов Юрий <vin123...@mail.ru>: >>> Hello everyone! >>> >>> >>> >>> I have an error in checksum field in first UDP-fragment, when I try to make >>> fragmentation my one UDP datagram. >>> >>> As I know, the checksum original UDP datagram must be the same as checksum >>> fragmented UDP datagram, but I get different L >>> >>> my script is: >>> >>> tcprewrite --fragroute=frag.cfg --infile=1udp.pcap --outfile=1udp_frag.pcap >>> >>> my frag.cfg contains: >>> >>> ip_frag 1000 >>> >>> 1udp.pcap is ~1300 bytes long >> >> Possible bug. what version of tcprewrite are you using? >> > -- Aaron Turner http://synfin.net/ Twitter: @synfinatic http://tcpreplay.synfin.net/ - Pcap editing and replay tools for Unix & Windows Those who would give up essential Liberty, to purchase a little temporary Safety, deserve neither Liberty nor Safety. -- Benjamin Franklin "carpe diem quam minimum credula postero" ------------------------------------------------------------------------------ Lotusphere 2011 Register now for Lotusphere 2011 and learn how to connect the dots, take your collaborative environment to the next level, and enter the era of Social Business. http://p.sf.net/sfu/lotusphere-d2d _______________________________________________ Tcpreplay-users mailing list Tcpreplay-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/tcpreplay-users Support Information: http://tcpreplay.synfin.net/trac/wiki/Support