-
-
Notifications
You must be signed in to change notification settings - Fork 3.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable eBPF support. #3893
Enable eBPF support. #3893
Conversation
should be investigated in order to reduce system load.
Could not start on my router |
Yes, this functionality requires some kernel capabilities. Perhaps you need to recompile the kernel. But without kernel capabilities I thought capsh can perform enable. I will add code to switch capability sets for system configures. |
|
Your kernel does not support ebpf. You should re-edit configure page settings and program will omit ebpf configurations I guess. |
And it only supports meta core I guess. Never tried on premium core. |
are you sure it works for you? you code is defined the firewall rule always works |
I will do more reliability research. According to ebpf's handling, no firewall redirect should be needed, it will dial all conections out of selected interface through the program before firewall procedure. And I've tested it's true. But I've asked upperstream that DIRECT method cannot accept passthrough so likely it will not improve performance. |
I will do more reliability research. According to ebpf's handling, no firewall redirect should be needed, it will dial all conections out of selected interface through the program before firewall procedure. And I've tested it's true. But I've asked upperstream that DIRECT method cannot accept passthrough so likely it will not improve performance.
|
I've compiled and run it on my arm router. It should be fine by now. |
luci-app-openclash_0.46.015-beta_all.zip |
Please tell me if I should do more work to adapt ebpf functionality. In the future I will alter Clash Meta to impove DIRECT route out of tunnel therefore you don't need to update openclash to bypass traffic, it would be done inside clash and complete through ebpf preroute traffic program. |
* Add bypass overseas for China IP Route * fix(init):fix typo (#3959) * Enable eBPF support. (#3893) * Prerequisits for eBPF settings * Add basic eBPF function support. But firewall rule should be investigated in order to reduce system load. * Disable firewall when using eBPF function. * Fix firewall settings. * chore: add translates * chore: fix error * Update openclash --------- Co-authored-by: sangyishuje1123 <152784766+sangyishuje1123@users.noreply.github.com> Co-authored-by: vernesong <42875168+vernesong@users.noreply.github.com> * Add bypass overseas for China IP Route --------- Co-authored-by: sqliuchang <35466227+sqliuchang@users.noreply.github.com> Co-authored-by: EternalARK <30522559+EternalARK@users.noreply.github.com> Co-authored-by: sangyishuje1123 <152784766+sangyishuje1123@users.noreply.github.com> Co-authored-by: vernesong <42875168+vernesong@users.noreply.github.com>
* Prerequisits for eBPF settings * Add basic eBPF function support. But firewall rule should be investigated in order to reduce system load. * Disable firewall when using eBPF function. * Fix firewall settings. * chore: add translates * chore: fix error * Update openclash --------- Co-authored-by: sangyishuje1123 <152784766+sangyishuje1123@users.noreply.github.com> Co-authored-by: vernesong <42875168+vernesong@users.noreply.github.com>
* Add bypass overseas for China IP Route * fix(init):fix typo (vernesong#3959) * Enable eBPF support. (vernesong#3893) * Prerequisits for eBPF settings * Add basic eBPF function support. But firewall rule should be investigated in order to reduce system load. * Disable firewall when using eBPF function. * Fix firewall settings. * chore: add translates * chore: fix error * Update openclash --------- Co-authored-by: sangyishuje1123 <152784766+sangyishuje1123@users.noreply.github.com> Co-authored-by: vernesong <42875168+vernesong@users.noreply.github.com> * Add bypass overseas for China IP Route --------- Co-authored-by: sqliuchang <35466227+sqliuchang@users.noreply.github.com> Co-authored-by: EternalARK <30522559+EternalARK@users.noreply.github.com> Co-authored-by: sangyishuje1123 <152784766+sangyishuje1123@users.noreply.github.com> Co-authored-by: vernesong <42875168+vernesong@users.noreply.github.com>
Basic functionalities were enabled. Firewall rules can be simplified in order to reduce firewall workload.