77 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			77 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# Location definitions for packet matching
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# name		alignment	offset		mask		shift
							 | 
						||
| 
								 | 
							
								ip.version	u8		net+0		0xF0		4
							 | 
						||
| 
								 | 
							
								ip.hdrlen	u8		net+0		0x0F
							 | 
						||
| 
								 | 
							
								ip.diffserv	u8		net+1
							 | 
						||
| 
								 | 
							
								ip.length	u16		net+2
							 | 
						||
| 
								 | 
							
								ip.id		u16		net+4
							 | 
						||
| 
								 | 
							
								ip.flag.res	u8		net+6		0xff		7
							 | 
						||
| 
								 | 
							
								ip.df		u8		net+6		0x40		6
							 | 
						||
| 
								 | 
							
								ip.mf		u8		net+6		0x20		5
							 | 
						||
| 
								 | 
							
								ip.offset	u16		net+6		0x1FFF
							 | 
						||
| 
								 | 
							
								ip.ttl		u8		net+8
							 | 
						||
| 
								 | 
							
								ip.proto	u8		net+9
							 | 
						||
| 
								 | 
							
								ip.chksum	u16		net+10
							 | 
						||
| 
								 | 
							
								ip.src		u32		net+12
							 | 
						||
| 
								 | 
							
								ip.dst		u32		net+16
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# if ip.ihl > 5
							 | 
						||
| 
								 | 
							
								ip.opts		u32		net+20
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# IP version 6
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# name		alignment	offset		mask		shift
							 | 
						||
| 
								 | 
							
								ip6.version	u8		net+0		0xF0		4
							 | 
						||
| 
								 | 
							
								ip6.tc		u16		net+0		0xFF0		4
							 | 
						||
| 
								 | 
							
								ip6.flowlabel	u32		net+0		0xFFFFF
							 | 
						||
| 
								 | 
							
								ip6.length	u16		net+4
							 | 
						||
| 
								 | 
							
								ip6.nexthdr	u8		net+6
							 | 
						||
| 
								 | 
							
								ip6.hoplimit	u8		net+7
							 | 
						||
| 
								 | 
							
								ip6.src		16		net+8
							 | 
						||
| 
								 | 
							
								ip6.dst		16		net+24
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# Transmission Control Protocol (TCP)
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# name		alignment	offset		mask		shift
							 | 
						||
| 
								 | 
							
								tcp.sport	u16		tcp+0
							 | 
						||
| 
								 | 
							
								tcp.dport	u16		tcp+2
							 | 
						||
| 
								 | 
							
								tcp.seq		u32		tcp+4
							 | 
						||
| 
								 | 
							
								tcp.ack		u32		tcp+8
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Data offset (4 bits)
							 | 
						||
| 
								 | 
							
								tcp.off		u8		tcp+12		0xF0		4
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Reserved [0 0 0] (3 bits)
							 | 
						||
| 
								 | 
							
								tcp.reserved	u8		tcp+12		0x04		1
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# ECN [N C E] (3 bits)
							 | 
						||
| 
								 | 
							
								tcp.ecn		u16		tcp+12		0x01C00		6
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Individual TCP flags (0|1) (6 bits in total)
							 | 
						||
| 
								 | 
							
								tcp.flag.urg	u8		tcp+13		0x20		5
							 | 
						||
| 
								 | 
							
								tcp.flag.ack	u8		tcp+13		0x10		4
							 | 
						||
| 
								 | 
							
								tcp.flag.psh	u8		tcp+13		0x08		3
							 | 
						||
| 
								 | 
							
								tcp.flag.rst	u8		tcp+13		0x04		2
							 | 
						||
| 
								 | 
							
								tpc.flag.syn	u8		tcp+13		0x02		1
							 | 
						||
| 
								 | 
							
								tcp.flag.fin	u8		tcp+13		0x01
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								tcp.win		u16		tcp+14
							 | 
						||
| 
								 | 
							
								tcp.csum	u16		tcp+16
							 | 
						||
| 
								 | 
							
								tcp.urg		u16		tcp+18
							 | 
						||
| 
								 | 
							
								tcp.opts	u32		tcp+20
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# User Datagram Protocol (UDP)
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# name		alignment	offset		mask		shift
							 | 
						||
| 
								 | 
							
								udp.sport	u16		tcp+0
							 | 
						||
| 
								 | 
							
								udp.dport	u16		tcp+2
							 | 
						||
| 
								 | 
							
								udp.length	u16		tcp+4
							 | 
						||
| 
								 | 
							
								udp.csum	u16		tcp+6
							 |