![]() ![]() |
czfcentos |
Subversion Repositories: |
Compare with Previous - Blame - Download
#!/bin/bash# Kontrola poctu spojeni a pripadne zvetseni limitu##now we 3times try clean all unused iptables modules/sbin/rmmod ip_nat iptable_nat ip_conntrack ip_tables iptable_filter ipt_REJECT 2&> /dev/null/sbin/rmmod ip_nat iptable_nat ip_conntrack ip_tables iptable_filter ipt_REJECT 2&> /dev/null/sbin/rmmod ip_nat iptable_nat ip_conntrack ip_tables iptable_filter ipt_REJECT 2&> /dev/null#test for conntrack and if no one is find then we exit the scriptif [ ! -e /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established ]thenif [ "$1 x" = "-status x" ]thenecho "No NAT detected"fiexit 0fi#when this place was reached then we are usin conntrack table#filling all constants to get optimal timeouts#the most important is ip_conntrack_tcp_timeout_establishedecho 50 > /proc/sys/net/ipv4/netfilter/ip_conntrack_generic_timeoutecho 5 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_closeecho 60 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_close_waitecho 120 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_fin_waitecho 60 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_time_waitecho 10 > /proc/sys/net/ipv4/netfilter/ip_conntrack_udp_timeoutecho 21600 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established#now we check the size of conntrack table and if it is too tight to the#limit then we increase this limitipc=`cat /proc/sys/net/ipv4/ip_conntrack_max`ipc=`expr $ipc - 4000`;if [ `cat /proc/net/ip_conntrack | wc -l` -gt $ipc ]thenif [ $ipc -lt 56000 ]thendate | tr '\n' ' ' >> /var/log/checknat.logecho "Increasing conntrack table size to $ipc + 8000" >> /var/log/checknat.logipc=`expr $ipc + 8000`;echo "Increasing conntrack table size to $ipc" >> /var/log/checknat.logecho $ipc > /proc/sys/net/ipv4/ip_conntrack_maxelsedate | tr '\n' ' ' >> /var/log/checknat.logecho "Conntrack table upper limit reached" >> /var/log/checknat.logfifiif [ "$1 x" = "-status x" ]thenecho "Conntrack TBL = "`cat /proc/net/ip_conntrack | wc -l`echo "Conntrack MAX = "`cat /proc/sys/net/ipv4/ip_conntrack_max`tail /var/log/checknat.logfi