diff --git a/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua b/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua index 9f68c740d..66bcf000f 100644 --- a/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua +++ b/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua @@ -499,6 +499,11 @@ function settings_add() 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) + -- Set tcp_fastopen + local tcp_fastopen = luci.http.formvalue("tcp_fastopen") + luci.sys.exec("sysctl -w net.ipv4.tcp_fastopen=%s" % tcp_fastopen) + luci.sys.exec("sed -i 's:^net.ipv4.tcp_fastopen=[0-3]*:net.ipv4.tcp_fastopen=%s:' /etc/sysctl.d/zzz_openmptcprouter.conf" % tcp_fastopen) + -- Disable IPv6 local disable_ipv6 = luci.http.formvalue("disable_ipv6") or 0 set_ipv6_state(disable_ipv6) diff --git a/luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm b/luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm index f4f507388..4dc6e6a70 100644 --- a/luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm +++ b/luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm @@ -89,10 +89,16 @@ "> +
+ +
+ "> +
+
- checked<% end %>> + checked<% end %>>
diff --git a/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter b/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter index ea8d99216..2e30c2554 100755 --- a/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter +++ b/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter @@ -82,8 +82,8 @@ start_service() { 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' -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 + sed -i -e '/tcp_fin_timeout/d' -e '/tcp_keepalive_time/d' -e '/nf_conntrack_max/d' -e '/tcp_syn_retries/d' -e '/tcp_fastopen/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' -e '/tcp_fastopen/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 6d5519cc4..beeb9f286 100644 --- a/luci-app-openmptcprouter/root/etc/sysctl.d/zzz_openmptcprouter.conf +++ b/luci-app-openmptcprouter/root/etc/sysctl.d/zzz_openmptcprouter.conf @@ -1,4 +1,5 @@ net.ipv4.tcp_keepalive_time=7200 net.ipv6.conf.all.disable_ipv6=0 net.ipv4.tcp_fin_timeout=40 -net.ipv4.tcp_syn_retries=3 \ No newline at end of file +net.ipv4.tcp_syn_retries=3 +net.ipv4.tcp_fastopen=3 \ No newline at end of file diff --git a/shadowsocks-libev/files/shadowsocks.conf b/shadowsocks-libev/files/shadowsocks.conf index 438821be4..d0951f43c 100644 --- a/shadowsocks-libev/files/shadowsocks.conf +++ b/shadowsocks-libev/files/shadowsocks.conf @@ -31,7 +31,7 @@ net.ipv4.tcp_max_syn_backlog = 10240 # max timewait sockets held by system simultaneously net.ipv4.tcp_max_tw_buckets = 10000 # turn on TCP Fast Open on both client and server side -net.ipv4.tcp_fastopen = 3 +#net.ipv4.tcp_fastopen = 3 # TCP receive buffer net.ipv4.tcp_rmem = 4096 87380 134217728 # TCP write buffer