libxt_TCPMSS.man revision 18c475d7040abc6d3094ee0348904deafe997508
1This target allows to alter the MSS value of TCP SYN packets, to control
2the maximum size for that connection (usually limiting it to your
3outgoing interface's MTU minus 40 for IPv4 or 60 for IPv6, respectively).
4Of course, it can only be used
5in conjunction with
6\fB\-p tcp\fP.
7It is only valid in the
8.BR mangle
9table.
10.br
11This target is used to overcome criminally braindead ISPs or servers
12which block "ICMP Fragmentation Needed" or "ICMPv6 Packet Too Big"
13packets.  The symptoms of this
14problem are that everything works fine from your Linux
15firewall/router, but machines behind it can never exchange large
16packets:
17.PD 0
18.RS 0.1i
19.TP 0.3i
201)
21Web browsers connect, then hang with no data received.
22.TP
232)
24Small mail works fine, but large emails hang.
25.TP
263)
27ssh works fine, but scp hangs after initial handshaking.
28.RE
29.PD
30Workaround: activate this option and add a rule to your firewall
31configuration like:
32.IP
33 iptables \-t mangle \-A FORWARD \-p tcp \-\-tcp\-flags SYN,RST SYN
34             \-j TCPMSS \-\-clamp\-mss\-to\-pmtu
35.TP
36\fB\-\-set\-mss\fP \fIvalue\fP
37Explicitly set MSS option to specified value.
38.TP
39\fB\-\-clamp\-mss\-to\-pmtu\fP
40Automatically clamp MSS value to (path_MTU \- 40 for IPv4; \-60 for IPv6).
41.PP
42These options are mutually exclusive.
43