ifpw check-state a mnoho tcp wait
michal_sjx
michal_sjx at seznam.cz
Fri May 30 10:27:22 CEST 2008
Pekny patek,
takze ani toto (predchozi mail) nepomohlo. Pri dalsim zkoumani vyslo na
jevo, ze za to muzou pravidla tohoto typu:
00300 allow tcp from any to me in via em0 dst-port 80 setup limit
src-addr 10
+
net.inet.ip.fw.dyn_keepalive: 1
V dynamickych pravidlech se pak udrzuje tato hodnota:
00300 305 112949 (116s) LIMIT tcp <IP-clienta> 51984 <->
<IP-serveru> 80
A to treba 10x (viz pravidlo).
Jakmile se pocet vterin v zavorce (116s) snizi na 16-15, tak system/ipfw
odesle:
10:15:19.431530 IP <IP-serveru>.80 > <IP-clienta>.51984: . ack
2800999190 win 8212
10:15:19.431535 IP <IP-serveru>.80 > <IP-clienta>.51984: . ack 1 win 0
A to bez ohledu na to, jestli Apache bezi nebo ne. Vzdalena strana na to
neodpovida (neni videt nic v tcpdump).
netstat ma toto "spojeni" ve stavu FIN_WAIT_2
Pokud by vas nekoho neco napadlo co delam spatne, prosim o radu.
Pouzivam: src/sys/netinet/ip_fw2.c,v 1.175.2.5 2008/03/18 23:32:45 piso
Exp
ale to na to asi nema vliv, protoze stejny problem jsem mel na FreeBSD
5.4
Dekuji
michal
michal_sjx píše v Čt 29. 05. 2008 v 09:55 +0200:
> Zdravim,
>
> tak po roce se vracim k tomuto problemu. Od te doby je zmena FreeBSD z
> 5.4 na 7.0. Zkusil jsem zapnout keepalive v ipfw. Duvod byl ten, ze
> napriklad imap obcas ztratil spojeni.
>
> Po zapnuti keepalive ve ipfw se situace vratila do stavu kdy pomer
> EST:WAIT je desive snizoval. Zaroven se i zvedala hodnota dynamickych
> pravidel v ipfw. Bylo jich tam priblizne $pocet_EST+$pocet_WAIT, coz
> zacalo sahat na prednastaveny strop 4096.
>
> Takze jsem zkusil neco jineho. Keepalive v ipfw nechat zaple a zvednout
> toleranci cekani na FIN z 1sec na 2sec. Zatim to vypada mnohem lepe.
>
> #sysctl net.inet.ip.fw
> net.inet.ip.fw.dyn_keepalive: 1
> net.inet.ip.fw.dyn_short_lifetime: 5
> net.inet.ip.fw.dyn_udp_lifetime: 10
> net.inet.ip.fw.dyn_rst_lifetime: 1
> net.inet.ip.fw.dyn_fin_lifetime: 2
> net.inet.ip.fw.dyn_syn_lifetime: 20
> net.inet.ip.fw.dyn_ack_lifetime: 300
> net.inet.ip.fw.static_count: 34
> net.inet.ip.fw.dyn_max: 4096
> net.inet.ip.fw.dyn_count: 121
> net.inet.ip.fw.curr_dyn_buckets: 256
> net.inet.ip.fw.dyn_buckets: 256
> net.inet.ip.fw.verbose_limit: 0
> net.inet.ip.fw.verbose: 1
> net.inet.ip.fw.debug: 1
> net.inet.ip.fw.one_pass: 1
> net.inet.ip.fw.autoinc_step: 100
> net.inet.ip.fw.enable: 1
>
>
> Michal
>
> michal_sjx píše v St 25. 07. 2007 v 08:02 +0200:
> > michal_sjx wrote:
> > >
> > > Nastavil jsem pak i sysctl net.inet.ip.fw.dyn_keepalive=0 a uvidim
> > > jestli to na to bude mit vliv.
> >
> > Takze toto pomohlo, vse funguje jak ma a uz tam nemam stovky fin_wait_2
> >
> > --
> > Hi! I'm a .signature virus! Copy me into your ~/.signature to help me
> > spread!
>
More information about the Users-l
mailing list