diff --git a/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua b/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua index 58ed67845..37da3ef79 100644 --- a/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua +++ b/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua @@ -463,6 +463,11 @@ function settings_add() local tcp_fin_timeout = luci.http.formvalue("tcp_fin_timeout") luci.sys.exec("sysctl -w net.ipv4.tcp_fin_timeout=%s" % tcp_fin_timeout) luci.sys.exec("sed -i 's:^net.ipv4.tcp_fin_timeout=[0-9]*:net.ipv4.tcp_fin_timeout=%s:' /etc/sysctl.d/zzz_openmptcprouter.conf" % tcp_fin_timeout) + + -- Set tcp_syn_retries + local tcp_syn_retries = luci.http.formvalue("tcp_syn_retries") + luci.sys.exec("sysctl -w net.ipv4.tcp_syn_retries=%s" % tcp_syn_retries) + luci.sys.exec("sed -i 's:^net.ipv4.tcp_syn_retries=[0-9]*:net.ipv4.tcp_syn_retries=%s:' /etc/sysctl.d/zzz_openmptcprouter.conf" % tcp_syn_retries) -- Disable IPv6 local disable_ipv6 = luci.http.formvalue("disable_ipv6") or 0 diff --git a/luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm b/luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm index 2e563cca8..57485d529 100644 --- a/luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm +++ b/luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm @@ -82,6 +82,12 @@ "> +
+ +
+ "> +
+
diff --git a/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter b/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter index e5ec7edf6..647a2f36f 100755 --- a/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter +++ b/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter @@ -78,8 +78,8 @@ start_service() { set_ipv6_state $disable_ipv6 fi # remove sysctl already defined in /etc/sysctl.d/ - sed -i -e '/tcp_fin_timeout/d' -e '/tcp_keepalive_time/d' -e '/nf_conntrack_max/d' /etc/sysctl.conf - sed -i -e '/tcp_fin_timeout/d' -e '/tcp_keepalive_time/d' -e '/nf_conntrack_max/d' /etc/sysctl.d/10-default.conf + sed -i -e '/tcp_fin_timeout/d' -e '/tcp_keepalive_time/d' -e '/nf_conntrack_max/d' -e '/tcp_syn_retries/d' /etc/sysctl.conf + sed -i -e '/tcp_fin_timeout/d' -e '/tcp_keepalive_time/d' -e '/nf_conntrack_max/d' -e '/tcp_syn_retries/d' /etc/sysctl.d/10-default.conf } reload_service() { diff --git a/luci-app-openmptcprouter/root/etc/sysctl.d/zzz_openmptcprouter.conf b/luci-app-openmptcprouter/root/etc/sysctl.d/zzz_openmptcprouter.conf index 6f19bb344..6d5519cc4 100644 --- a/luci-app-openmptcprouter/root/etc/sysctl.d/zzz_openmptcprouter.conf +++ b/luci-app-openmptcprouter/root/etc/sysctl.d/zzz_openmptcprouter.conf @@ -1,3 +1,4 @@ net.ipv4.tcp_keepalive_time=7200 net.ipv6.conf.all.disable_ipv6=0 -net.ipv4.tcp_fin_timeout=40 \ No newline at end of file +net.ipv4.tcp_fin_timeout=40 +net.ipv4.tcp_syn_retries=3 \ No newline at end of file