Giter Club home page Giter Club logo

Comments (30)

chenmozhijin avatar chenmozhijin commented on July 18, 2024

有系统/内核日志吗?我 23.05.0-rc2 一切正常。如果装了mwan3好像会不稳定。

from turboacc.

0xdddddddd avatar 0xdddddddd commented on July 18, 2024

系统日志没有看,今晚回去编一个,然后做个旁路有挂在那里掉线时我给您提供日志。

from turboacc.

0xdddddddd avatar 0xdddddddd commented on July 18, 2024

有系统/内核日志吗?我 23.05.0-rc2 一切正常。如果装了mwan3好像会不稳定。

目前的情况就是这样子的。全新的 openwrt

点击保存并应用后,运行状态,全部卡在正在收集数据,状态未知。

第三方插件,只有,passwall 和 turboacc 其他插件均为 openwrt 源自带的。

2

1

openwrt-log.txt

config.txt

from turboacc.

chenmozhijin avatar chenmozhijin commented on July 18, 2024

你同时都编译了iptables与nftables等多个防火墙

CONFIG_DEFAULT_nftables=y
CONFIG_PACKAGE_ip6tables-nft=y
CONFIG_PACKAGE_ip6tables-zz-legacy=y
CONFIG_PACKAGE_iptables-nft=y
CONFIG_PACKAGE_iptables-zz-legacy=y
CONFIG_PACKAGE_xtables-legacy=y
CONFIG_PACKAGE_xtables-nft=y

我的> Network> Firewall配置:
2023-08-03 233559
2023-08-03 233617
我的> Kernel modules > Netfilter Extensions配置:
2023-08-03 234145
2023-08-03 234301

也可以看看我的openwrt云编译仓库:OpenWrt-K
OpenWrt-K的完整配置:config.txt

from turboacc.

0xdddddddd avatar 0xdddddddd commented on July 18, 2024

你同时都编译了iptables与nftables等多个防火墙

CONFIG_DEFAULT_nftables=y
CONFIG_PACKAGE_ip6tables-nft=y
CONFIG_PACKAGE_ip6tables-zz-legacy=y
CONFIG_PACKAGE_iptables-nft=y
CONFIG_PACKAGE_iptables-zz-legacy=y
CONFIG_PACKAGE_xtables-legacy=y
CONFIG_PACKAGE_xtables-nft=y

我的> Network> Firewall配置: 2023-08-03 233559 2023-08-03 233617 我的> Kernel modules > Netfilter Extensions配置: 2023-08-03 234145 2023-08-03 234301

也可以看看我的openwrt云编译仓库:OpenWrt-K OpenWrt-K的完整配置:config.txt

我是把能用上的基础组件全部选上了,正常来讲,应该就是 so(动态链接库)

虽然我没理解过openwrt文件结构和源代码。

讲道理,基础组件不会因为未使用而启动吧,除非它自身是一个服务。

真的有影响吗。 :)

from turboacc.

chenmozhijin avatar chenmozhijin commented on July 18, 2024

你的系统日志

Thu Aug  3 12:29:03 2023 kern.err kernel: [   12.084820] xt_DNETMAP: CONFIG_NF_NAT is not available in your kernel, hence this module cannot function.

但是:nft-fullcone的Makefile中是添加了CONFIG_NF_NAT=y的,我也不明白为什么会这样
https://github.com/chenmozhijin/turboacc/blob/package/nft-fullcone/Makefile#L23C10-L23C10
我觉得是什么地方冲突了,以前我也遇到了类似的问题,你可以把能不选都不选试试我的,固件没有遇到这样的问题。

luci-app-turboacc只是一个控制中心,fullcone nat功能是使用wongsyrone/nft-fullcone实现的,相关的讨论见Chion82/netfilter-full-cone-nat#42,希望可以帮到你。

from turboacc.

0xdddddddd avatar 0xdddddddd commented on July 18, 2024

你的系统日志

Thu Aug  3 12:29:03 2023 kern.err kernel: [   12.084820] xt_DNETMAP: CONFIG_NF_NAT is not available in your kernel, hence this module cannot function.

但是:nft-fullcone的Makefile中是添加了CONFIG_NF_NAT=y的,我也不明白为什么会这样 https://github.com/chenmozhijin/turboacc/blob/package/nft-fullcone/Makefile#L23C10-L23C10 我觉得是什么地方冲突了,以前我也遇到了类似的问题,你可以把能不选都不选试试我的,固件没有遇到这样的问题。

luci-app-turboacc只是一个控制中心,fullcone nat功能是使用wongsyrone/nft-fullcone实现的,相关的讨论见Chion82/netfilter-full-cone-nat#42,希望可以帮到你。

好的好的,那我尽可能按照您的方法来做。

你的建议我会采纳,晚上回去按照您的方法重新编译一份,至于passwall 2.86的dnsmasq我装上也没啥影响,干就完了。

from turboacc.

0xdddddddd avatar 0xdddddddd commented on July 18, 2024

CONFIG_DEFAULT_nftables=y
CONFIG_PACKAGE_ip6tables-nft=y
CONFIG_PACKAGE_ip6tables-zz-legacy=y
CONFIG_PACKAGE_iptables-nft=y
CONFIG_PACKAGE_iptables-zz-legacy=y

这3款防火墙可以共存的对吧。

CONFIG_PACKAGE_xtables 我就不编译到系统中了。

from turboacc.

chenmozhijin avatar chenmozhijin commented on July 18, 2024

我认为,最好不要编译"-zz-legacy",不然iptables规则与nftables规则可能会同时存在
状态/防火墙 页面会出现以下提示:

检测到旧版规则

系统上存在旧版 iptables 规则。 不鼓励混合使用 iptables 和 nftables 规则,这可能会导致流量过滤不完整。

我认为这也是你passwall 2.86的dnsmasq你装上也没啥影响的原因,因为它可能使用了iptables。

from turboacc.

0xdddddddd avatar 0xdddddddd commented on July 18, 2024

我认为,最好不要编译"-zz-legacy",不然iptables规则与nftables规则可能会同时存在 状态/防火墙 页面会出现以下提示:

检测到旧版规则

系统上存在旧版 iptables 规则。 不鼓励混合使用 iptables 和 nftables 规则,这可能会导致流量过滤不完整。

我认为这也是你passwall 2.86的dnsmasq你装上也没啥影响的原因,因为它可能使用了iptables。

2
1

这个选项有冲突,默认 openwrt 就带了一个,然后咱们的软件也带了一个相同的功能。

但是不影响开启和关闭的效果。

效果是有了,但只要一开,其他功能就会失效。

Routing/NAT Offloading 具体是干嘛用的,目前以我的角度还无从得知。所以建议把 Software flow offloading 选项默认关闭,而不是默认开启。

再建议排查一下,为什么开启这个功能后 nat 功能会失效。

from turboacc.

chenmozhijin avatar chenmozhijin commented on July 18, 2024

不是冲突两者之间的作用是一样的,luci-app-turboacc也是设置防火墙实现的Software flow offloading见:
https://github.com/chenmozhijin/turboacc/blob/bac3ec9a620d7a552e49f8109b40013bd5d215e8/luci-app-turboacc/root/etc/init.d/turboacc#L92C1-L93C63

此外我自己编译的固件没有这些问题:
2023-08-04 212652
2023-08-04 212711

from turboacc.

0xdddddddd avatar 0xdddddddd commented on July 18, 2024

不是冲突两者之间的作用是一样的,luci-app-turboacc也是设置防火墙实现的Software flow offloading见: https://github.com/chenmozhijin/turboacc/blob/bac3ec9a620d7a552e49f8109b40013bd5d215e8/luci-app-turboacc/root/etc/init.d/turboacc#L92C1-L93C63

此外我自己编译的固件没有这些问题: 2023-08-04 212652 2023-08-04 212711

我现在只是单独编译了 turboacc 其他什么都没有,完全 make menuconfig 默认 只勾选了 turboacc 依然不行。

https://github.com/openwrt/openwrt/tree/openwrt-22.03

这个分支(没有切换commit),您可以试试是否和我存在同样的情况。

log.txt

QQ.20230804233520.mp4

from turboacc.

chenmozhijin avatar chenmozhijin commented on July 18, 2024

我试着云编译一下:https://github.com/chenmozhijin/turboacc/actions/runs/5765352624
云编译编译了四种固件 OpenWrt-dnsmasq-full-old应该是最有希望的你可以试一下

我现在也搞不清是什么问题了
Software flow offloading调用的是openwrt官方firewall4自带依赖kmod-nft-offload
https://github.com/openwrt/openwrt/blob/1eb67cb0704a61f49d9be9f88aecbce1d881f8c9/package/network/config/firewall4/Makefile#L25
应该不会出问题。
有可能是修补的firewall4、libnftnl、nftables太新了
使用方法中的版本目前分别为
FIREWALL4_VERSION=04a06bd70b9808b14444cae81a2faba4708ee231
NFTABLES_VERSION=1.0.8
LIBNFTNL_VERSION=1.2.6
而openwrt-22.03分支为
FIREWALL4_VERSION=7ae5e14bbd7265cc67ec870c3bb0c8e197bb7ca9
NFTABLES_VERSION=1.0.2
LIBNFTNL_VERSION=1.2.1
本仓库package分支包含修补旧版的firewall4、libnftnl、nftables你可以试着替换一下

from turboacc.

0xdddddddd avatar 0xdddddddd commented on July 18, 2024

我试着云编译一下:https://github.com/chenmozhijin/turboacc/actions/runs/5765352624 云编译编译了四种固件 OpenWrt-dnsmasq-full-old应该是最有希望的你可以试一下

我现在也搞不清是什么问题了 Software flow offloading调用的是openwrt官方firewall4自带依赖kmod-nft-offload https://github.com/openwrt/openwrt/blob/1eb67cb0704a61f49d9be9f88aecbce1d881f8c9/package/network/config/firewall4/Makefile#L25 应该不会出问题。 有可能是修补的firewall4、libnftnl、nftables太新了 使用方法中的版本目前分别为 FIREWALL4_VERSION=04a06bd70b9808b14444cae81a2faba4708ee231 NFTABLES_VERSION=1.0.8 LIBNFTNL_VERSION=1.2.6 而openwrt-22.03分支为 FIREWALL4_VERSION=7ae5e14bbd7265cc67ec870c3bb0c8e197bb7ca9 NFTABLES_VERSION=1.0.2 LIBNFTNL_VERSION=1.2.1 本仓库package分支包含修补旧版的firewall4、libnftnl、nftables你可以试着替换一下

mkdir -p turboacc_tmp ./package/turboacc
cd turboacc_tmp 
git clone https://github.com/chenmozhijin/turboacc -b package
cd ../package/turboacc
git clone https://github.com/fullcone-nat-nftables/nft-fullcone
git clone https://github.com/chenmozhijin/turboacc
mv ./turboacc/luci-app-turboacc ./luci-app-turboacc
rm -rf ./turboacc
cd ../..
cp -f turboacc_tmp/turboacc/hack-5.10/952-net-conntrack-events-support-multiple-registrant.patch ./target/linux/generic/hack-5.10/952-net-conntrack-events-support-multiple-registrant.patch
cp -f turboacc_tmp/turboacc/hack-5.10/953-net-patch-linux-kernel-to-support-shortcut-fe.patch ./target/linux/generic/hack-5.10/953-net-patch-linux-kernel-to-support-shortcut-fe.patch
cp -f turboacc_tmp/turboacc/pending-5.10/613-netfilter_optional_tcp_window_check.patch ./target/linux/generic/hack-5.10/613-netfilter_optional_tcp_window_check.patch
rm -rf ./package/libs/libnftnl ./package/network/config/firewall4 ./package/network/utils/nftables
mkdir -p ./package/network/config/firewall4 ./package/libs/libnftnl ./package/network/utils/nftables
cp -r ./turboacc_tmp/turboacc/shortcut-fe ./package/turboacc
cp -RT ./turboacc_tmp/turboacc/firewall4-7ae5e14bbd7265cc67ec870c3bb0c8e197bb7ca9/firewall4 ./package/network/config/firewall4
cp -RT ./turboacc_tmp/turboacc/libnftnl-1.2.1/libnftnl ./package/libs/libnftnl
cp -RT ./turboacc_tmp/turboacc/nftables-1.0.2/nftables ./package/network/utils/nftables
rm -rf turboacc_tmp
echo "# CONFIG_NF_CONNTRACK_CHAIN_EVENTS is not set" >> target/linux/generic/config-5.10
echo "# CONFIG_SHORTCUT_FE is not set" >> target/linux/generic/config-5.10
./scripts/feeds update -a
./scripts/feeds install -a

经过这一夜的测试,还有你的建议,均无效。我好累,去睡了。

from turboacc.

0xdddddddd avatar 0xdddddddd commented on July 18, 2024

我试着云编译一下:https://github.com/chenmozhijin/turboacc/actions/runs/5765352624 云编译编译了四种固件 OpenWrt-dnsmasq-full-old应该是最有希望的你可以试一下

我现在也搞不清是什么问题了 Software flow offloading调用的是openwrt官方firewall4自带依赖kmod-nft-offload https://github.com/openwrt/openwrt/blob/1eb67cb0704a61f49d9be9f88aecbce1d881f8c9/package/network/config/firewall4/Makefile#L25 应该不会出问题。 有可能是修补的firewall4、libnftnl、nftables太新了 使用方法中的版本目前分别为 FIREWALL4_VERSION=04a06bd70b9808b14444cae81a2faba4708ee231 NFTABLES_VERSION=1.0.8 LIBNFTNL_VERSION=1.2.6 而openwrt-22.03分支为 FIREWALL4_VERSION=7ae5e14bbd7265cc67ec870c3bb0c8e197bb7ca9 NFTABLES_VERSION=1.0.2 LIBNFTNL_VERSION=1.2.1 本仓库package分支包含修补旧版的firewall4、libnftnl、nftables你可以试着替换一下

两个视频,一个文件太大压缩了一下。测试云编译的也均无效。

openwrt-dnsmasq-full.mp4

openwrt-dnsmasq_2.zip

from turboacc.

chenmozhijin avatar chenmozhijin commented on July 18, 2024

这应该是因为没有依赖luci、luci-compat的所以没有编译lua语言支持的所导致的,
我已经加上了 76af113
现在在重新编译:https://github.com/chenmozhijin/turboacc/actions/runs/5768775903
我觉得应该和dnsmasq的关系不大,
重新编译完之后请试试:OpenWrt-dnsmasq-old

from turboacc.

0xdddddddd avatar 0xdddddddd commented on July 18, 2024

这应该是因为没有依赖luci、luci-compat的所以没有编译lua语言支持的所导致的, 我已经加上了 76af113 现在在重新编译:https://github.com/chenmozhijin/turboacc/actions/runs/5768775903 我觉得应该和dnsmasq的关系不大, 重新编译完之后请试试:OpenWrt-dnsmasq-old

您说的这个依赖我安装了。 opkg install luci luci-base luci-compat

是的确实和dnsmasq没关系,我昨天测试时,也有测试过去掉了 dnsmasq

from turboacc.

chenmozhijin avatar chenmozhijin commented on July 18, 2024


uci set firewall.@defaults[0].flow_offloading="1"
uci set firewall.@defaults[0].flow_offloading_hw="1"
uci set firewall.@defaults[0].fullcone="1"
uci commit firewall
sysctl -w net.ipv4.tcp_congestion_control="bbr"
/etc/init.d/dnsmasq restart
/etc/init.d/firewall restart

uci set firewall.@defaults[0].flow_offloading="0"
uci set firewall.@defaults[0].flow_offloading_hw="0"
uci set firewall.@defaults[0].fullcone="0"
uci commit firewall
sysctl -w net.ipv4.tcp_congestion_control="cubic"
/etc/init.d/dnsmasq restart
/etc/init.d/firewall restart
直接终端执行看看有没有效果,我这里测试的是可以正常开关功能的

使用turboacc 脚本测试

uci set turboacc.config.sw_flow='1'
uci set turboacc.config.hw_flow='1'
uci set turboacc.config.fullcone_nat='1'
uci set turboacc.config.bbr_cca='1'
uci commit turboacc
/etc/init.d/turboacc start

uci set turboacc.config.sw_flow='0'
uci set turboacc.config.hw_flow='0'
uci set turboacc.config.fullcone_nat='0'
uci set turboacc.config.bbr_cca='0'
uci commit turboacc
/etc/init.d/turboacc start

from turboacc.

0xdddddddd avatar 0xdddddddd commented on July 18, 2024

开 uci set firewall.@defaults[0].flow_offloading="1" uci set firewall.@defaults[0].flow_offloading_hw="1" uci set firewall.@defaults[0].fullcone="1" uci commit firewall sysctl -w net.ipv4.tcp_congestion_control="bbr" /etc/init.d/dnsmasq restart /etc/init.d/firewall restart 关 uci set firewall.@defaults[0].flow_offloading="0" uci set firewall.@defaults[0].flow_offloading_hw="0" uci set firewall.@defaults[0].fullcone="0" uci commit firewall sysctl -w net.ipv4.tcp_congestion_control="cubic" /etc/init.d/dnsmasq restart /etc/init.d/firewall restart 直接终端执行看看有没有效果,我这里测试的是可以正常开关功能的

使用turboacc 脚本测试 开 uci set turboacc.config.sw_flow='1' uci set turboacc.config.hw_flow='1' uci set turboacc.config.fullcone_nat='1' uci set turboacc.config.bbr_cca='1' uci commit turboacc /etc/init.d/turboacc start 关 uci set turboacc.config.sw_flow='0' uci set turboacc.config.hw_flow='0' uci set turboacc.config.fullcone_nat='0' uci set turboacc.config.bbr_cca='0' uci commit turboacc /etc/init.d/turboacc start

命令开关是好用的,确实好使。

from turboacc.

0xdddddddd avatar 0xdddddddd commented on July 18, 2024

dnsmasq 如何替换成 更高的版本呢。我记得你发过一个版本号的 makefile 文件连接,找不到。

好像是防火墙的问题造成第一项没法开启。 dnsmasq 2.87 以上会有更好的支持。

from turboacc.

chenmozhijin avatar chenmozhijin commented on July 18, 2024

dnsmasq
https://github.com/openwrt/openwrt/tree/master/package/network/services/dnsmasq
libubox
https://github.com/openwrt/openwrt/tree/main/package/libs/libubox

要升级的话上面两个都要替换,不过直接用openwrt-23.05分支不好吗?

OpenWrt-K自带这项功能可以参考一下:
https://github.com/chenmozhijin/OpenWrt-K/blob/0c819e0b8b033c203baf42d5cace5b217c03832b/.github/workflows/build-openwrt.yml#L210C1-L211C96
https://github.com/chenmozhijin/OpenWrt-K/blob/0c819e0b8b033c203baf42d5cace5b217c03832b/.github/workflows/build-openwrt.yml#L465C1-L477C13

from turboacc.

0xdddddddd avatar 0xdddddddd commented on July 18, 2024

dnsmasq https://github.com/openwrt/openwrt/tree/master/package/network/services/dnsmasq libubox https://github.com/openwrt/openwrt/tree/main/package/libs/libubox

要升级的话上面两个都要替换,不过直接用openwrt-23.05分支不好吗?

OpenWrt-K自带这项功能可以参考一下: https://github.com/chenmozhijin/OpenWrt-K/blob/0c819e0b8b033c203baf42d5cace5b217c03832b/.github/workflows/build-openwrt.yml#L210C1-L211C96 https://github.com/chenmozhijin/OpenWrt-K/blob/0c819e0b8b033c203baf42d5cace5b217c03832b/.github/workflows/build-openwrt.yml#L465C1-L477C13

好的,那就直接升级吧,顺便把您给我的资料记录一下。方便以后参考用,。

我之所以不想升级,可能还是因为未发行的快照版本可能存在一定的不确定性,当然这里可能是指小毛病吧。

from turboacc.

fuqiang03 avatar fuqiang03 commented on July 18, 2024

建议不要升级,建议停用一些开机自启动的脚本 或者 rmod 一些 不用的模块
image
越折腾越不稳定,越不稳定越折腾

from turboacc.

chenmozhijin avatar chenmozhijin commented on July 18, 2024

我用自己云编译的v23.05.0-rc2版本并没有遇到什么问题,已经13天没管过了。

升级是因为22.03.05自带的版本为dnsmasq版本为2.86,nftables透明代理要求dnsmasq版本在2.87以上并开启nftset支持,不升级无法正常使用passwall。

qqq

from turboacc.

fuqiang03 avatar fuqiang03 commented on July 18, 2024

用的pssswall 2 ? 我现在用dsnmaaq2.86 +pssswall 貌似没有问题 因为使用的4.14内核 对fw4+nft 还在观望
{运行的效果不理想,部分插件也不支持(使用5.15内核,实测同样的插件游戏的延迟会增加} 相对fw3 +iptables 已经很好了
0005

以下的屎山,能否好些

unload_sfe() {
flow_enabled=$(uci get flowoffload.@flow[0].flow_offloading 2>/dev/null)

if [ $flow_enabled -eq 0 -o $flow_enabled -gt 1 ]; then
	uci set firewall.@defaults[0].flow_offloading=$(uci get flowoffload.@flow[0].flow_offloading)
	uci set firewall.@defaults[0].flow_offloading_hw=$(uci get flowoffload.@flow[0].flow_offloading_hw)
	uci commit firewall
	logger -t alex  $flow_enabled stop-down flowoffload
fi

if [ -d /sys/module/shortcut_fe ]; then
	logger -t alex  file exists shortcut-fe and remove Shortcut-fe.
	rmmod shortcut-fe
fi

if [ -d /sys/module/shortcut_fe_ipv6 ]; then
	logger -t alex  file exists shortcut-fe-ipv6 and remove shortcut-fe-ipv6.
	rmmod shortcut_fe_ipv6
fi

if [ -d /sys/module/fast_classifier ]; then
	logger -t alex  file exists fast_classifier and remove fast_classifier.
	rmmod fast_classifier
fi

}

start(){
local kernel_version=$(uname -r)

bbr_enable=$(uci get flowoffload.@flow[0].bbr_enabled 2>/dev/null)
nat1_enable=$(uci get flowoffload.@flow[0].nat1_enabled 2>/dev/null)
dns=$(uci get flowoffload.@flow[0].dns 2>/dev/null)
flow_enabled=$(uci get flowoffload.@flow[0].flow_offloading 2>/dev/null)

if [ $bbr_enable -eq 1 ];  then
	start_bbr
fi
if [ $nat1_enable -gt 0 ];  then
	start_fullconenat
fi
echo  "$flow_enabled"

if [ $flow_enabled -eq 0 ]; then
unload_sfe
fi
if [ $flow_enabled -eq 1 ]; then
uci set firewall.@defaults[0].flow_offloading=$(uci get flowoffload.@flow[0].flow_offloading)
uci set firewall.@defaults[0].flow_offloading_hw=$(uci get flowoffload.@flow[0].flow_offloading_hw)
uci commit firewall
elif [ $flow_enabled -eq 2 ]; then
[ -e "/lib/modules/$kernel_version/shortcut-fe.ko" ] && modprobe shortcut-fe
logger -t alex  $flow_enabled start-up shortcut-fe
elif [ $flow_enabled -eq 3  ];then
[ -e "/lib/modules/$kernel_version/fast-classifier.ko" ] && modprobe fast-classifier
logger -t alex  $flow_enabled start-up fast-classifier
fi

logger -t alex  "flowoffload command starting success"

}

from turboacc.

chenmozhijin avatar chenmozhijin commented on July 18, 2024

用的pssswall 2 ?我现在用dsnmaaq2.86 +pssswall 貌似没有问题 因为使用的4.14内核 对fw4+nft 还在观望 {运行的效果不理想,部分插件也不支持(使用5.15内核,实测同样的插件游戏的延迟会增加} 相对fw3 +iptables 已经很好了 0005

以下的屎山,能否好些

unload_sfe() { flow_enabled=$(uci get flowoffload.[0].flow_offloading 2>/dev/null)

if [ $flow_enabled -eq 0 -o $flow_enabled -gt 1 ]; then
	uci set firewall.@defaults[0].flow_offloading=$(uci get flowoffload.@flow[0].flow_offloading)
	uci set firewall.@defaults[0].flow_offloading_hw=$(uci get flowoffload.@flow[0].flow_offloading_hw)
	uci commit firewall
	logger -t alex  $flow_enabled stop-down flowoffload
fi

if [ -d /sys/module/shortcut_fe ]; then
	logger -t alex  file exists shortcut-fe and remove Shortcut-fe.
	rmmod shortcut-fe
fi

if [ -d /sys/module/shortcut_fe_ipv6 ]; then
	logger -t alex  file exists shortcut-fe-ipv6 and remove shortcut-fe-ipv6.
	rmmod shortcut_fe_ipv6
fi

if [ -d /sys/module/fast_classifier ]; then
	logger -t alex  file exists fast_classifier and remove fast_classifier.
	rmmod fast_classifier
fi

}

start(){ local kernel_version=$(uname -r)

bbr_enable=$(uci get flowoffload.@flow[0].bbr_enabled 2>/dev/null)
nat1_enable=$(uci get flowoffload.@flow[0].nat1_enabled 2>/dev/null)
dns=$(uci get flowoffload.@flow[0].dns 2>/dev/null)
flow_enabled=$(uci get flowoffload.@flow[0].flow_offloading 2>/dev/null)

if [ $bbr_enable -eq 1 ];  then
	start_bbr
fi
if [ $nat1_enable -gt 0 ];  then
	start_fullconenat
fi
echo  "$flow_enabled"

if [ $flow_enabled -eq 0 ]; then
unload_sfe
fi
if [ $flow_enabled -eq 1 ]; then
uci set firewall.@defaults[0].flow_offloading=$(uci get flowoffload.@flow[0].flow_offloading)
uci set firewall.@defaults[0].flow_offloading_hw=$(uci get flowoffload.@flow[0].flow_offloading_hw)
uci commit firewall
elif [ $flow_enabled -eq 2 ]; then
[ -e "/lib/modules/$kernel_version/shortcut-fe.ko" ] && modprobe shortcut-fe
logger -t alex  $flow_enabled start-up shortcut-fe
elif [ $flow_enabled -eq 3  ];then
[ -e "/lib/modules/$kernel_version/fast-classifier.ko" ] && modprobe fast-classifier
logger -t alex  $flow_enabled start-up fast-classifier
fi

logger -t alex  "flowoffload command starting success"

}

pssswall是防火墙工具使用nftables时需要nftables透明代理,fw3 + iptables的话pssswall用的是iptables与ipset。
本插件使用nft-fullcone实现全锥型 NAT,应该不支持fw3?

您这是把luci-app-flowoffload里面的代码结合进来了?

https://github.com/chenmozhijin/turboacc/blob/bee265a11e0bba6af2a8252cc48acf62c3263b6d/luci-app-turboacc/root/etc/init.d/turboacc?plain=1#L14C1-L20C55

这一段就已经获取配置到变量了,您可以参考一下openwrt的文档:
The UCI systemConfiguration in scripts
您这样获取的是luci-app-flowoffload的配置而不是本插件的

cctips遇到的应该是两个问题,一开始应该是防火墙的兼容性问题,后面是luci-app-turboacc无法正常开关功能的问题。插件在我的固件上是一切正常,我无法成功复现出问题。现在如果能正常使用的话还是不要改比较好。

from turboacc.

fuqiang03 avatar fuqiang03 commented on July 18, 2024

我使用了flowoffload的部分源码结合lean的脚本 ,config获取方式我没有动 只是对ko文件挂载进行了改进 , fullcone 补丁可以正常使用 在fw3和fw4下 需要挂载对应的ko文件即可 问一句shortcut和 fast-classifier一起才会起作用? 但是在状态判断上确分开了

from turboacc.

chenmozhijin avatar chenmozhijin commented on July 18, 2024

我只知道shortcut-fe是fast-classifier的依赖,我不用sfe用firewall4自带的flow offload所以不太清楚。不过lede原本的luci-app-turboacc就是这样写的

您uci get得到的是flowoffload的配置,可以参考https://openwrt.org/docs/guide-user/base-system/uci#usage。

from turboacc.

fuqiang03 avatar fuqiang03 commented on July 18, 2024

好的 我会参照uci标准 修改config获取变量的方式的 在多问一下 有4.14内核 最新的shortcut补丁吗 有的话可否分享下

from turboacc.

chenmozhijin avatar chenmozhijin commented on July 18, 2024

好的 我会参照uci标准 修改config获取变量的方式的 在多问一下 有4.14内核 最新的shortcut补丁吗 有的话可否分享下

补丁:
https://github.com/coolsnowwolf/lede/blob/20200915/target/linux/generic/hack-4.14/952-net-conntrack-events-support-multiple-registrant.patch
https://github.com/coolsnowwolf/lede/blob/20200915/target/linux/generic/hack-4.14/999-net-patch-linux-kernel-to-support-shortcut-fe.patch

刚找的没用过,试一下吧。

from turboacc.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.