xref: /aosp_15_r20/external/iptables/extensions/libxt_HMARK.man (revision a71a954618bbadd4a345637e5edcf36eec826889)
1*a71a9546SAutomerger Merge WorkerLike MARK, i.e. set the fwmark, but the mark is calculated from hashing
2*a71a9546SAutomerger Merge Workerpacket selector at choice. You have also to specify the mark range and,
3*a71a9546SAutomerger Merge Workeroptionally, the offset to start from. ICMP error messages are inspected
4*a71a9546SAutomerger Merge Workerand used to calculate the hashing.
5*a71a9546SAutomerger Merge Worker.PP
6*a71a9546SAutomerger Merge WorkerExisting options are:
7*a71a9546SAutomerger Merge Worker.TP
8*a71a9546SAutomerger Merge Worker\fB\-\-hmark\-tuple\fP tuple\fI\fP
9*a71a9546SAutomerger Merge WorkerPossible tuple members are:
10*a71a9546SAutomerger Merge Worker.B src
11*a71a9546SAutomerger Merge Workermeaning source address (IPv4, IPv6 address),
12*a71a9546SAutomerger Merge Worker.B dst
13*a71a9546SAutomerger Merge Workermeaning destination address (IPv4, IPv6 address),
14*a71a9546SAutomerger Merge Worker.B sport
15*a71a9546SAutomerger Merge Workermeaning source port (TCP, UDP, UDPlite, SCTP, DCCP),
16*a71a9546SAutomerger Merge Worker.B dport
17*a71a9546SAutomerger Merge Workermeaning destination port (TCP, UDP, UDPlite, SCTP, DCCP),
18*a71a9546SAutomerger Merge Worker.B spi
19*a71a9546SAutomerger Merge Workermeaning Security Parameter Index (AH, ESP), and
20*a71a9546SAutomerger Merge Worker.B ct
21*a71a9546SAutomerger Merge Workermeaning the usage of the conntrack tuple instead of the packet selectors.
22*a71a9546SAutomerger Merge Worker.TP
23*a71a9546SAutomerger Merge Worker\fB\-\-hmark\-mod\fP \fIvalue (must be > 0)\fP
24*a71a9546SAutomerger Merge WorkerModulus for hash calculation (to limit the range of possible marks)
25*a71a9546SAutomerger Merge Worker.TP
26*a71a9546SAutomerger Merge Worker\fB\-\-hmark\-offset\fP \fIvalue\fP
27*a71a9546SAutomerger Merge WorkerOffset to start marks from.
28*a71a9546SAutomerger Merge Worker.TP
29*a71a9546SAutomerger Merge WorkerFor advanced usage, instead of using \-\-hmark\-tuple, you can specify custom
30*a71a9546SAutomerger Merge Workerprefixes and masks:
31*a71a9546SAutomerger Merge Worker.TP
32*a71a9546SAutomerger Merge Worker\fB\-\-hmark\-src\-prefix\fP \fIcidr\fP
33*a71a9546SAutomerger Merge WorkerThe source address mask in CIDR notation.
34*a71a9546SAutomerger Merge Worker.TP
35*a71a9546SAutomerger Merge Worker\fB\-\-hmark\-dst\-prefix\fP \fIcidr\fP
36*a71a9546SAutomerger Merge WorkerThe destination address mask in CIDR notation.
37*a71a9546SAutomerger Merge Worker.TP
38*a71a9546SAutomerger Merge Worker\fB\-\-hmark\-sport\-mask\fP \fIvalue\fP
39*a71a9546SAutomerger Merge WorkerA 16 bit source port mask in hexadecimal.
40*a71a9546SAutomerger Merge Worker.TP
41*a71a9546SAutomerger Merge Worker\fB\-\-hmark\-dport\-mask\fP \fIvalue\fP
42*a71a9546SAutomerger Merge WorkerA 16 bit destination port mask in hexadecimal.
43*a71a9546SAutomerger Merge Worker.TP
44*a71a9546SAutomerger Merge Worker\fB\-\-hmark\-spi\-mask\fP \fIvalue\fP
45*a71a9546SAutomerger Merge WorkerA 32 bit field with spi mask.
46*a71a9546SAutomerger Merge Worker.TP
47*a71a9546SAutomerger Merge Worker\fB\-\-hmark\-proto\-mask\fP \fIvalue\fP
48*a71a9546SAutomerger Merge WorkerAn 8 bit field with layer 4 protocol number.
49*a71a9546SAutomerger Merge Worker.TP
50*a71a9546SAutomerger Merge Worker\fB\-\-hmark\-rnd\fP \fIvalue\fP
51*a71a9546SAutomerger Merge WorkerA 32 bit random custom value to feed hash calculation.
52*a71a9546SAutomerger Merge Worker.PP
53*a71a9546SAutomerger Merge Worker\fIExamples:\fP
54*a71a9546SAutomerger Merge Worker.PP
55*a71a9546SAutomerger Merge Workeriptables \-t mangle \-A PREROUTING \-m conntrack \-\-ctstate NEW
56*a71a9546SAutomerger Merge Worker \-j HMARK \-\-hmark-tuple ct,src,dst,proto \-\-hmark-offset 10000
57*a71a9546SAutomerger Merge Worker\-\-hmark\-mod 10 \-\-hmark\-rnd 0xfeedcafe
58*a71a9546SAutomerger Merge Worker.PP
59*a71a9546SAutomerger Merge Workeriptables \-t mangle \-A PREROUTING \-j HMARK \-\-hmark\-offset 10000
60*a71a9546SAutomerger Merge Worker\-\-hmark-tuple src,dst,proto \-\-hmark-mod 10 \-\-hmark\-rnd 0xdeafbeef
61