[FUG-BR] tcp mss precisa ser feito?
Marcelo Gondim
gondim em bsdinfo.com.br
Sábado Outubro 1 08:23:32 BRT 2011
Em 30/09/2011 18:46, Renato Frederick escreveu:
> Opa,
>
> Tem algum motivo de você precisar envolver o firewall? Eu sempre configuro no ppp.conf mru e mtu e não tive problemas, após alterar lá para:
>
> set mru 1492
> set mtu 1492
Opa Renato,
No passado tive muitos problemas com isso, msn não entrava em alguns
lugares, alguns sites também não entravam. Realmente dava muita dor de
cabeça e no Linux só resolvia setando o tcp mss para 1440. Aí tudo
funcionava perfeitamente bem.
Como isso já tem um tempo e atualmente troquei um Linux que fazia essa
mudança do mss por um FreeBSD, até agora não tive qualquer problema mas
fiquei na dúvida de como faria essa alteração caso precisasse fazer esse
ajuste.
Seria esse problema descrito abaixo:
TCPMSS
This target allows to alter the MSS value of TCP SYN packets,
to control the maximum size for that connection (usually limiting it to
your outgoing interâ
face's MTU minus 40 for IPv4 or 60 for IPv6, respectively). Of
course, it can only be used in conjunction with -p tcp.
This target is used to overcome criminally braindead ISPs or
servers which block "ICMP Fragmentation Needed" or "ICMPv6 Packet Too
Big" packets. The sympâ
toms of this problem are that everything works fine from your
Linux firewall/router, but machines behind it can never exchange large
packets:
1) Web browsers connect, then hang with no data received.
2) Small mail works fine, but large emails hang.
3) ssh works fine, but scp hangs after initial handshaking.
Workaround: activate this option and add a rule to your firewall
configuration like:
iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN
-j TCPMSS --clamp-mss-to-pmtu
>
>
>> -----Original Message-----
>> From: freebsd-bounces em fug.com.br [mailto:freebsd-bounces em fug.com.br]
>> On Behalf Of Marcelo Gondim
>> Sent: sexta-feira, 30 de setembro de 2011 13:52
>> To: "Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)"
>> Subject: Re: [FUG-BR] tcp mss precisa ser feito?
>>
>> Em 30/09/2011 13:41, Eduardo Schoedler escreveu:
>>> Esta certo, o ipfw nao altera o pacote. Mas existem alguns patches para
>> isso.
>>
>> Opa Eduardo, vou deixar sem mesmo e verificar se vai dar problema com
>> algum site ou msn. :)
>>
>> Qualquer coisa volto à postar aqui o resultado ou então se der vou usar o
>> reass e ver se resolve.
>>
>>> --
>>> Eduardo Schoedler
>>> Enviado via iPhone
>>>
>>>
>>> Em 30/09/2011, às 13:36, Marcelo Gondim<gondim em bsdinfo.com.br>
>> escreveu:
>>>> Em 30/09/2011 12:26, Luiz Gustavo S. Costa escreveu:
>>>>> via "man ipfw"
>>>>>
>>>>> tcpoptions spec
>>>>> TCP packets only. Match if the TCP header contains the comma
>>>>> separated list of options specified in spec. The supported TCP
>>>>> options are:
>>>>>
>>>>> mss (maximum segment size), window (tcp window
>> advertisement),
>>>>> sack (selective ack), ts (rfc1323 timestamp) and cc (rfc1644
>>>>> t/tcp connection count). The absence of a particular option may
>>>>> be denoted with a ‘!’.
>>>> Opa Luiz,
>>>>
>>>> Esse trecho eu vi mas é para teste da regra: Match if the TCP header
>>>> contains... ou seja dá match na regra se tiver com essa característica.
>>>> Pelo que eu entendi ele não altera o pacote, não altera o mss, só
>>>> checa. Se eu tiver errado me corrijam por favor. ;)
>>>>
>>>>>
>>>>> Em 30 de setembro de 2011 11:59, Marcelo Gondim
>>>>> <gondim em bsdinfo.com.br> escreveu:
>>>>>> Olá povo,
>>>>>>
>>>>>> Acredito que muitos aqui tenham esse cenário:
>>>>>>
>>>>>> Rede interna ----- Firewall FreeBSD (PPPoE) ------ Internet
>>>>>>
>>>>>> Em linux eu precisava setar o tcp mss para 1440 para que todos os
>>>>>> sites funcionassem inclusive o msn quando usando conexão PPPoE.
>>>>>> Fazia isso no mangle do netfilter.
>>>>>> No PF consultando o google descobri que pode ser feito dessa maneira:
>>>>>> scrub in all max-mss 1440
>>>>>> Agora a pergunta é: como fazer isso no ipfw? Eu sei que tem o reass
>>>>>> mas no man do ipfw não fala sobre o mss e o reass. Alguém tem a
>>>>>> luz? :)
>>>>>>
>>>>>>
Mais detalhes sobre a lista de discussão freebsd