=head1 NAME mergecap - Merges two or more capture files into one =head1 SYNOPSYS B S<[ B<-hva> ]> S<[ B<-s> I ]> S<[ B<-F> I ]> S<[ B<-T> I ]> S I|-> I I<...> =head1 DESCRIPTION B is a program that combines multiple saved capture files into a single output file specified by the B<-w> argument. B knows how to read B capture files, including those of B, B, and other tools that write captures in that format. B can read / import the following file formats: =over 4 =item * libpcap/WinPcap, tcpdump and various other tools using tcpdump's capture format =item * B and B =item * Shomiti/Finisar B captures =item * Novell B captures =item * Microsoft B captures =item * AIX's B captures =item * Cinco Networks B captures =item * Network Associates Windows-based B captures =item * Network General/Network Associates DOS-based B (compressed or uncompressed) captures =item * AG Group/WildPackets B/B/B/B/B captures =item * B's WAN/LAN analyzer captures =item * Network Instruments B version 9 captures =item * B router debug output =item * files from HP-UX's B =item * B ISDN routers dump output =item * the output from B from the ISDN4BSD project =item * traces from the B USB S0. =item * the output in B format from the Cisco Secure Intrusion Detection System =item * B (pppdump format) =item * the output from VMS's B/B/B utilities =item * the text output from the B VMS utility =item * Visual Networks' B traffic capture =item * the output from B L2 debug =item * the output from Accellent's B<5Views> LAN agents =item * Endace Measurement Systems' ERF format captures =item * Linux Bluez Bluetooth stack B traces =back There is no need to tell B what type of file you are reading; it will determine the file type by itself. B is also capable of reading any of these file formats if they are compressed using gzip. B recognizes this directly from the file; the '.gz' extension is not required for this purpose. By default, it writes the capture file in B format, and writes all of the packets in both input capture files to the output file. The B<-F> flag can be used to specify the format in which to write the capture file; it can write the file in B format (standard B format, a modified format used by some patched versions of B, the format used by Red Hat Linux 6.1, or the format used by SuSE Linux 6.3), B format, uncompressed B format, Microsoft B 1.x format, the format used by Windows-based versions of the B software, and the format used by Visual Networks' software. Packets from the input files are merged in chronological order based on each frame's timestamp, unless the B<-a> flag is specified. B assumes that frames within a single capture file are already stored in chronological order. When the B<-a> flag is specified, packets are copied directly from each input file to the output file, independent of each frame's timestamp. If the B<-s> flag is used to specify a snapshot length, frames in the input file with more captured data than the specified snapshot length will have only the amount of data specified by the snapshot length written to the output file. This may be useful if the program that is to read the output file cannot handle packets larger than a certain size (for example, the versions of snoop in Solaris 2.5.1 and Solaris 2.6 appear to reject Ethernet frames larger than the standard Ethernet MTU, making them incapable of handling gigabit Ethernet captures if jumbo frames were used). The output file frame encapsulation type is set to the type of the input files, if all input files have the same type. If not all of the input files have the same frame encapsulation type, the output file type is set to WTAP_ENCAP_PER_PACKET. Note that some capture file formats, most notably B, do not currently support WTAP_ENCAP_PER_PACKET. This combination will cause the output file creation to fail. If the B<-T> flag is used to specify a frame encapsulation type, the encapsulation type of the output capture file will be forced to the specified type, rather than being the type appropriate to the encapsulation type of the input capture files. Note that this merely forces the encapsulation type of the output file to be the specified type; the packet headers of the packets will not be translated from the encapsulation type of the input capture file to the specified encapsulation type (for example, it will not translate an Ethernet capture to an FDDI capture if an Ethernet capture is read and 'B<-T fddi>' is specified). =head1 OPTIONS =over 4 =item -w Sets the output filename. If the name is 'B<->', stdout will be used. =item -F Sets the file format of the output capture file. =item -T Sets the packet encapsulation type of the output capture file. =item -a Causes the frame timestamps to be ignored, writing all packets from the first input file followed by all packets from the second input file. By default, when B<-a> is not specified, the contents of the input files are merged in chronological order based on each frame's timestamp. Note: when merging, B assumes that packets within a capture file are already in chronological order. =item -v Causes B to print a number of messages while it's working. =item -s Sets the snapshot length to use when writing the data. =item -h Prints the version and options and exits. =back =head1 SEE ALSO I, I, I, I =head1 NOTES B is based heavily upon B by Richard Sharpe and Guy Harris . B is part of the B distribution. The latest version of B can be found at B. =head1 AUTHORS Original Author -------- ------ Scott Renfro Contributors ------------ Bill Guyton