之前说过我魔改了一个 rust 写的代理 clash-rs 和使用这个代理的 op 插件 nikki-rs 最近突发奇想把 dae 和 clash 进行一个有机的融合,在 clash 里加入了一点 dae 的成分 基本就是参考 honk 和 dae 把 ebpf 那套照搬了过来,给 clash-rs 做了一个 ebpf 入站,可以理解为另一种实现的 tun 模式,部分替代防火墙的功能,不用搞防火墙规则进行转发,注入内核的钩子会自动进行拦截放行的操作。 将 dae 那套内核里复杂的选路过程进行了简化,只关注直连流量的动态绕过,大概流程就是 劫持到 dns 请求->对域名进行预选路->直连->将解析出来的 ip 下发到 ebpf->该目标 ip 的流量绕过代理 其实说通俗点就是选择绕过大陆时,事先将一大坨大陆 ip 塞到 iptable/nftable 里,ebpf 呢就可以动态地,你遇到要直连的域名才把解析出来的 ip 给你塞到内核里,当然这也顺便解决了一些国外可以直连的网站固定用绕过大陆就覆盖不到的问题。 下面大致讲解一下 clash-rs...