IP Filter (ipf) state limits
Nach der Installation von Solaris ist die maximale grösse der Statetabelle sehr konservativ eingestellt. Bereits bei einem mässig ausgelastetem Server kann die maximale Anzahl von States bereits erreicht werden, was zur Folge hat, dass ipf Pakete verwirft.
root@planex:~# ipfstat | grep lost fragment state(in): kept 0 lost 0 not fragmented 0 fragment state(out): kept 0 lost 0 not fragmented 0 packet state(in): kept 33302919 lost 11264 packet state(out): kept 8572793 lost 214808
Interessant sind hier die lost Werte. Schaut man sich die default Settings an, merkt man, dass die Einstellungen in der Tat doch recht konservativ sind:
root@planex:~# ipf -T list | grep fr_state fr_statemax min 0x1 max 0x7fffffff current 4013 fr_statesize min 0x1 max 0x7fffffff current 5737
Um die Limite zu erhöhen, muss als erstes ipf deaktiviert werden und anschliessend wieder aktiviert werden. Zu beachten ist dabei, dass fr_statemax ca. 70% so gross ein sollte wie fr_statesize.
root@planex:~# svcadm disable ipfilter root@planex:~# /usr/sbin/ipf -T fr_statemax=24500,fr_statesize=35000 root@planex:~# svcadm enable ipfilter root@planex:~# ipf -T list | grep fr_state fr_statemax min 0x1 max 0x7fffffff current 24500 fr_statesize min 0x1 max 0x7fffffff current 35000
Damit die neuen Werte auch über die Reboot-Grenze erhalten bleiben, sollte folgender Eintrag in der /usr/kernel/drv/ipf.conf stehen:
name="ipf" parent="pseudo" instance=0; fr_statemax=24500 fr_statesize=35000;
Abschliessend sollte das Device mit devfsadm konfiguriert werden:
root@planex:~# devfsadm -i ipf
Hehe glaube das wurde gerade gepatched 🙂
http://sunsolve.sun.com/search/document.do?assetkey=1-21-141505-09-1
6900850 limit for number of states in the state table is too low by default
oder war das dein bug report
Gut zu wissen, dass die default Werte nun höher sind, aber der Bug ist nicht von mir.
Mit dem Patch 141505-09 siehts bei uns so aus:
fr_statemax min 0x1 max 0x7fffffff current 50000
fr_statesize min 0x1 max 0x7fffffff current 5737
Bleibt das Problem bestehen, da nur fr_statemax erhöht wurde?
Das war auch bei mir Auslöser einiger Probleme. Interessant ist jedoch, dass sich das offenbar nicht bei allen von mir eingesetzten System tatsächlich bemerkbar gemacht hat. Erhöht werden die Limits trotzdem überall.
Danke!
Das war auch bei mir Auslöser einiger Probleme. Interessant ist jedoch, dass sich das offenbar nicht bei allen von mir eingesetzten System tatsächlich bemerkbar gemacht hat. Erhöht werden die Limits trotzdem überall. Danke!
@Sharron Clemons
Dieses Problem wurde mit einem Patch gelöst und sollte auf aktuellen Systemen nicht mehr auftreten.
Hehe glaube das wurde gerade gepatched 🙂 http://sunsolve.sun.com/search/document.do?assetkey=1-21-141505-09-1 6900850 limit for number of states in the state table is too low by default oder war das dein bug report
Hi Ihsan
Also note that both values should be prime. To find a prime you can use:
http://www.numberempire.com/primenumbers.php?action=next&number=${start_number}