1 Allows you to restrict the number of parallel connections to a server per 2 client IP address (or client address block). 3 .TP 4 \fB\-\-connlimit\-upto\fP \fIn\fP 5 Match if the number of existing connections is below or equal \fIn\fP. 6 .TP 7 \fB\-\-connlimit\-above\fP \fIn\fP 8 Match if the number of existing connections is above \fIn\fP. 9 .TP 10 \fB\-\-connlimit\-mask\fP \fIprefix_length\fP 11 Group hosts using the prefix length. For IPv4, this must be a number between 12 (including) 0 and 32. For IPv6, between 0 and 128. If not specified, the 13 maximum prefix length for the applicable protocol is used. 14 .TP 15 \fB\-\-connlimit\-saddr\fP 16 Apply the limit onto the source group. 17 .TP 18 \fB\-\-connlimit\-daddr\fP 19 Apply the limit onto the destination group. 20 .PP 21 Examples: 22 .TP 23 # allow 2 telnet connections per client host 24 iptables \-A INPUT \-p tcp \-\-syn \-\-dport 23 \-m connlimit \-\-connlimit\-above 2 \-j REJECT 25 .TP 26 # you can also match the other way around: 27 iptables \-A INPUT \-p tcp \-\-syn \-\-dport 23 \-m connlimit \-\-connlimit\-upto 2 \-j ACCEPT 28 .TP 29 # limit the number of parallel HTTP requests to 16 per class C sized \ 30 source network (24 bit netmask) 31 iptables \-p tcp \-\-syn \-\-dport 80 \-m connlimit \-\-connlimit\-above 16 32 \-\-connlimit\-mask 24 \-j REJECT 33 .TP 34 # limit the number of parallel HTTP requests to 16 for the link local network 35 (ipv6) 36 ip6tables \-p tcp \-\-syn \-\-dport 80 \-s fe80::/64 \-m connlimit \-\-connlimit\-above 37 16 \-\-connlimit\-mask 64 \-j REJECT 38 .TP 39 # Limit the number of connections to a particular host: 40 ip6tables \-p tcp \-\-syn \-\-dport 49152:65535 \-d 2001:db8::1 \-m connlimit 41 \-\-connlimit-above 100 \-j REJECT 42