| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278 | 
							
- #------------------------------------------------------------------------------
 
- # $File: sniffer,v 1.20 2018/10/18 16:49:19 christos Exp $
 
- # sniffer:  file(1) magic for packet capture files
 
- #
 
- # From: guy@alum.mit.edu (Guy Harris)
 
- #
 
- #
 
- # Microsoft Network Monitor 1.x capture files.
 
- #
 
- 0	string		RTSS		NetMon capture file
 
- >5	byte		x		- version %d
 
- >4	byte		x		\b.%d
 
- >6	leshort		0		(Unknown)
 
- >6	leshort		1		(Ethernet)
 
- >6	leshort		2		(Token Ring)
 
- >6	leshort		3		(FDDI)
 
- >6	leshort		4		(ATM)
 
- >6	leshort		>4		(type %d)
 
- #
 
- # Microsoft Network Monitor 2.x capture files.
 
- #
 
- 0	string		GMBU		NetMon capture file
 
- >5	byte		x		- version %d
 
- >4	byte		x		\b.%d
 
- >6	leshort		0		(Unknown)
 
- >6	leshort		1		(Ethernet)
 
- >6	leshort		2		(Token Ring)
 
- >6	leshort		3		(FDDI)
 
- >6	leshort		4		(ATM)
 
- >6	leshort		5		(IP-over-IEEE 1394)
 
- >6	leshort		6		(802.11)
 
- >6	leshort		7		(Raw IP)
 
- >6	leshort		8		(Raw IP)
 
- >6	leshort		9		(Raw IP)
 
- >6	leshort		>9		(type %d)
 
- #
 
- # Network General Sniffer capture files.
 
- # Sorry, make that "Network Associates Sniffer capture files."
 
- # Sorry, make that "Network General old DOS Sniffer capture files."
 
- #
 
- 0	string		TRSNIFF\040data\040\040\040\040\032	Sniffer capture file
 
- >33	byte		2		(compressed)
 
- >23	leshort		x		- version %d
 
- >25	leshort		x		\b.%d
 
- >32	byte		0		(Token Ring)
 
- >32	byte		1		(Ethernet)
 
- >32	byte		2		(ARCNET)
 
- >32	byte		3		(StarLAN)
 
- >32	byte		4		(PC Network broadband)
 
- >32	byte		5		(LocalTalk)
 
- >32	byte		6		(Znet)
 
- >32	byte		7		(Internetwork Analyzer)
 
- >32	byte		9		(FDDI)
 
- >32	byte		10		(ATM)
 
- #
 
- # Cinco Networks NetXRay capture files.
 
- # Sorry, make that "Network General Sniffer Basic capture files."
 
- # Sorry, make that "Network Associates Sniffer Basic capture files."
 
- # Sorry, make that "Network Associates Sniffer Basic, and Windows
 
- # Sniffer Pro", capture files."
 
- # Sorry, make that "Network General Sniffer capture files."
 
- # Sorry, make that "NetScout Sniffer capture files."
 
- #
 
- 0	string		XCP\0		NetXRay capture file
 
- >4	string		>\0		- version %s
 
- >44	leshort		0		(Ethernet)
 
- >44	leshort		1		(Token Ring)
 
- >44	leshort		2		(FDDI)
 
- >44	leshort		3		(WAN)
 
- >44	leshort		8		(ATM)
 
- >44	leshort		9		(802.11)
 
- #
 
- # "libpcap" capture files.
 
- # https://www.tcpdump.org/manpages/pcap-savefile.5.html
 
- # (We call them "tcpdump capture file(s)" for now, as "tcpdump" is
 
- # the main program that uses that format, but there are other programs
 
- # that use "libpcap", or that use the same capture file format.)
 
- #
 
- 0	name		pcap-be
 
- >4	beshort		x		- version %d
 
- >6	beshort		x		\b.%d
 
- >20	belong		0		(No link-layer encapsulation
 
- >20	belong		1		(Ethernet
 
- >20	belong		2		(3Mb Ethernet
 
- >20	belong		3		(AX.25
 
- >20	belong		4		(ProNET
 
- >20	belong		5		(CHAOS
 
- >20	belong		6		(Token Ring
 
- >20	belong		7		(BSD ARCNET
 
- >20	belong		8		(SLIP
 
- >20	belong		9		(PPP
 
- >20	belong		10		(FDDI
 
- >20	belong		11		(RFC 1483 ATM
 
- >20	belong		12		(raw IP
 
- >20	belong		13		(BSD/OS SLIP
 
- >20	belong		14		(BSD/OS PPP
 
- >20	belong		19		(Linux ATM Classical IP
 
- >20	belong		50		(PPP or Cisco HDLC
 
- >20	belong		51		(PPP-over-Ethernet
 
- >20	belong		99		(Symantec Enterprise Firewall
 
- >20	belong		100		(RFC 1483 ATM
 
- >20	belong		101		(raw IP
 
- >20	belong		102		(BSD/OS SLIP
 
- >20	belong		103		(BSD/OS PPP
 
- >20	belong		104		(BSD/OS Cisco HDLC
 
- >20	belong		105		(802.11
 
- >20	belong		106		(Linux Classical IP over ATM
 
- >20	belong		107		(Frame Relay
 
- >20	belong		108		(OpenBSD loopback
 
- >20	belong		109		(OpenBSD IPsec encrypted
 
- >20	belong		112		(Cisco HDLC
 
- >20	belong		113		(Linux "cooked"
 
- >20	belong		114		(LocalTalk
 
- >20	belong		117		(OpenBSD PFLOG
 
- >20	belong		119		(802.11 with Prism header
 
- >20	belong		122		(RFC 2625 IP over Fibre Channel
 
- >20	belong		123		(SunATM
 
- >20	belong		127		(802.11 with radiotap header
 
- >20	belong		129		(Linux ARCNET
 
- >20	belong		138		(Apple IP over IEEE 1394
 
- >20	belong		139		(MTP2 with pseudo-header
 
- >20	belong		140		(MTP2
 
- >20	belong		141		(MTP3
 
- >20	belong		142		(SCCP
 
- >20	belong		143		(DOCSIS
 
- >20	belong		144		(IrDA
 
- >20	belong		147		(Private use 0
 
- >20	belong		148		(Private use 1
 
- >20	belong		149		(Private use 2
 
- >20	belong		150		(Private use 3
 
- >20	belong		151		(Private use 4
 
- >20	belong		152		(Private use 5
 
- >20	belong		153		(Private use 6
 
- >20	belong		154		(Private use 7
 
- >20	belong		155		(Private use 8
 
- >20	belong		156		(Private use 9
 
- >20	belong		157		(Private use 10
 
- >20	belong		158		(Private use 11
 
- >20	belong		159		(Private use 12
 
- >20	belong		160		(Private use 13
 
- >20	belong		161		(Private use 14
 
- >20	belong		162		(Private use 15
 
- >20	belong		163		(802.11 with AVS header
 
- >20	belong		165		(BACnet MS/TP
 
- >20	belong		166		(PPPD
 
- >20	belong		169		(GPRS LLC
 
- >20	belong		177		(Linux LAPD
 
- >20	belong		187		(Bluetooth HCI H4
 
- >20	belong		189		(Linux USB
 
- >20	belong		192		(PPI
 
- >20	belong		195		(802.15.4
 
- >20	belong		196		(SITA
 
- >20	belong		197		(Endace ERF
 
- >20	belong		201		(Bluetooth HCI H4 with pseudo-header
 
- >20	belong		202		(AX.25 with KISS header
 
- >20	belong		203		(LAPD
 
- >20	belong		204		(PPP with direction pseudo-header
 
- >20	belong		205		(Cisco HDLC with direction pseudo-header
 
- >20	belong		206		(Frame Relay with direction pseudo-header
 
- >20	belong		209		(Linux IPMB
 
- >20	belong		215		(802.15.4 with non-ASK PHY header
 
- >20	belong		220		(Memory-mapped Linux USB
 
- >20	belong		224		(Fibre Channel FC-2
 
- >20	belong		225		(Fibre Channel FC-2 with frame delimiters
 
- >20	belong		226		(Solaris IPNET
 
- >20	belong		227		(SocketCAN
 
- >20	belong		228		(Raw IPv4
 
- >20	belong		229		(Raw IPv6
 
- >20	belong		230		(802.15.4 without FCS
 
- >20	belong		231		(D-Bus messages
 
- >20	belong		235		(DVB-CI
 
- >20	belong		236		(MUX27010
 
- >20	belong		237		(STANAG 5066 D_PDUs
 
- >20	belong		239		(Linux netlink NFLOG messages
 
- >20	belong		240		(Hilscher netAnalyzer
 
- >20	belong		241		(Hilscher netAnalyzer with delimiters
 
- >20	belong		242		(IP-over-Infiniband
 
- >20	belong		243		(MPEG-2 Transport Stream packets
 
- >20	belong		244		(ng4t ng40
 
- >20	belong		245		(NFC LLCP
 
- >20	belong		247		(Infiniband
 
- >20	belong		248		(SCTP
 
- >16	belong		x		\b, capture length %d)
 
- # packets time stamps in seconds and microseconds.
 
- 0	ubelong		0xa1b2c3d4	pcap capture file, microseconds ts (big-endian)
 
- !:mime	application/vnd.tcpdump.pcap
 
- >0	use	pcap-be
 
- 0	ulelong		0xa1b2c3d4	pcap capture file, microsecond ts (little-endian)
 
- !:mime	application/vnd.tcpdump.pcap
 
- >0	use	\^pcap-be
 
- # packets time stamps in seconds and nanoseconds.
 
- 0	ubelong		0xa1b23c4d	pcap capture file, nanosecond ts (big-endian)
 
- !:mime	application/vnd.tcpdump.pcap
 
- >0	use	pcap-be
 
- 0	ulelong		0xa1b23c4d	pcap capture file, nanosecond ts (little-endian)
 
- !:mime	application/vnd.tcpdump.pcap
 
- >0	use	\^pcap-be
 
- #
 
- # "libpcap"-with-Alexey-Kuznetsov's-patches capture files.
 
- #
 
- 0	ubelong		0xa1b2cd34	pcap capture file, microsecond ts, extensions (big-endian)
 
- >0	use	pcap-be
 
- 0	ulelong		0xa1b2cd34	pcap capture file, microsecond ts, extensions (little-endian)
 
- >0	use	\^pcap-be
 
- #
 
- # "pcap-ng" capture files.
 
- # http://www.winpcap.org/ntar/draft/PCAP-DumpFileFormat.html
 
- # Pcap-ng files can contain multiple sections. Printing the endianness,
 
- # snaplen, or other information from the first SHB may be misleading.
 
- #
 
- 0	ubelong		0x0a0d0d0a
 
- >8	ubelong		0x1a2b3c4d	pcap-ng capture file
 
- >>12	beshort		x		- version %d
 
- >>14	beshort		x		\b.%d
 
- 0	ulelong		0x0a0d0d0a
 
- >8	ulelong		0x1a2b3c4d	pcap-ng capture file
 
- >>12	leshort		x		- version %d
 
- >>14	leshort		x		\b.%d
 
- #
 
- # AIX "iptrace" capture files.
 
- #
 
- 0	string		iptrace\0401.0	AIX iptrace capture file
 
- 0	string		iptrace\0402.0	AIX iptrace capture file
 
- #
 
- # Novell LANalyzer capture files.
 
- #
 
- 0	leshort		0x1001		Novell LANalyzer capture file
 
- 0	leshort		0x1007		Novell LANalyzer capture file
 
- #
 
- # HP-UX "nettl" capture files.
 
- #
 
- 0	string		\x54\x52\x00\x64\x00	HP/UX nettl capture file
 
- #
 
- # RADCOM WAN/LAN Analyzer capture files.
 
- #
 
- 0	string		\x42\xd2\x00\x34\x12\x66\x22\x88	RADCOM WAN/LAN Analyzer capture file
 
- #
 
- # NetStumbler log files.  Not really packets, per se, but about as
 
- # close as you can get.  These are log files from NetStumbler, a
 
- # Windows program, that scans for 802.11b networks.
 
- #
 
- 0	string		NetS		NetStumbler log file
 
- >8	lelong		x		\b, %d stations found
 
- #
 
- # *Peek tagged capture files.
 
- #
 
- 0	string		\177ver		EtherPeek/AiroPeek/OmniPeek capture file
 
- #
 
- # Visual Networks traffic capture files.
 
- #
 
- 0	string		\x05VNF		Visual Networks traffic capture file
 
- #
 
- # Network Instruments Observer capture files.
 
- #
 
- 0	string		ObserverPktBuffe	Network Instruments Observer capture file
 
- #
 
- # Files from Accellent Group's 5View products.
 
- #
 
- 0	string		\xaa\xaa\xaa\xaa	5View capture file
 
 
  |