In the past, the eBPF program did not track UDP connections, which resulted in us needing to explicitly add the UDP listen port to the whitelist in routing, which was inelegant.
In this PR, we introduced bpf_timer to maintain the connection state of UDP to solve this problem.
By default, the UDP connection timeout is 300s.
Notice: Kernel version >= 5.15 is required to use bpf_timer, thus the requirement for wan proxy is increased.
Background
In the past, the eBPF program did not track UDP connections, which resulted in us needing to explicitly add the UDP listen port to the whitelist in routing, which was inelegant.
In this PR, we introduced bpf_timer to maintain the connection state of UDP to solve this problem.
By default, the UDP connection timeout is 300s.
Notice: Kernel version
>= 5.15
is required to use bpf_timer, thus the requirement for wan proxy is increased.Checklist
Full Changelogs
Issue Reference
Closes #475
Test Result