ImmortalWrt的编译踩坑

这篇文章会经常更新。 我主要在路由器上使用DAE来进行网络流量处理。 所以必须在系统编译上开启一些BPF的相关构建。 以下是一些我遇到过的报错。 ERROR: package/kernel/bpf-headers failed to build. 这个问题最后抛出的关键信息是 /workdir/openwrt/include/bpf.mk:71: *** ERROR: LLVM/clang version too old. Minimum required: 12, found: . Stop. 只要安装LLVM/clang 12以上的版本就可以。 ...

2024年06月15日 · 1 分钟 · 170 字 · sdttttt

在Linux上数据包的路由行为

好长时间没写blog了,这段时间暂时没有写代码,一直在倒腾软路由的事情。 不过多亏了软路由,我对网络知识的储备又增加了一些。 这篇文章是想好好讲一下关于Linux上的网络数据包的路由处理. 据我现在所了解到的知识,Linux上决定数据包路由流向的关键模块有两个, 第一个是RPDB(Routing Policy DataBase 路由策略数据库),第二个是netfilter/iptables,很多人会把netfilter/iptables直接称之为iptables,也没有问题,但是严格上来说还是分开为好,netfilter是内核中的一部分,提供了一组数据包的hook. iptables则是实现了这些hook,并且提供了在用户空间操作这些hook的办法. ...

2024年06月12日 · 4 分钟 · 1569 字 · sdttttt

Unix平台和Windows的文件分享问题

前几天重新把家里的板子重装了系统,这次打算不使用云盘之类的软件来保存文件了,就用简单的samba之类系统级的文件分享。 samba每次保存大量的漫画说实话速度有点慢。所以这次我想用NFS试试。看很多文章分析NFS处理小文件的速度极快。 ...

2023年12月09日 · 3 分钟 · 1059 字 · sdttttt

重装软路由

平时使用的软路由方案渐渐成型了,想着自己开始编译一个更加干净的固件。 本来想用lean的固件但是还是自己不会编译,就算了。本人在编译固件上完全就是苦手,太懒了。 最后用的是天灵的ImmortalWrt 23.05.1,主要是这个官方有一个固件生成器,非常好用 ...

2023年12月07日 · 2 分钟 · 540 字 · sdttttt

关于代理软件的分流

分流其实我一直有在调整, 从最开始使用ssr默认的PAC规则,到后来使用的clash更加强大的规则集, 最后是现在使用的dae的规则. 我一直使用的是白名单模式的分流, 也就是命中的规则会走直连, 未命中的会走代理. 白名单又有一些问题, 确确实实的折磨到了我. ...

2023年12月06日 · 1 分钟 · 424 字 · sdttttt

openclash 转发改为TProxy

最近不想用Tun了,但是OpenClash的转发也不是全走的TProxy,TCP走Redirect,UDP走TProxy 这次修改一下防火墙来达到两个协议都用TProxy 1 2iptables -t mangle -N clash_tproxy 3 4iptables -t mangle -A clash_tproxy -p udp -m udp --sport 500 -j RETURN 5iptables -t mangle -A clash_tproxy -i lo -j RETURN 6iptables -t mangle -A clash_tproxy -m set --match-set localnetwork dst -j RETURN 7 8iptables -t mangle -A clash_tproxy -p udp -m udp --dport 53 -j RETURN 9 10iptables -t mangle -A clash_tproxy -d 198.18.0.0/16 -p udp -j TPROXY --on-port 7895 --on-ip 0.0.0.0 --tproxy-mark 0x162 11iptables -t mangle -A clash_tproxy -d 198.18.0.0/16 -p tcp -j TPROXY --on-port 7895 --on-ip 0.0.0.0 --tproxy-mark 0x162 12 13iptables -t mangle -A clash_tproxy -p udp -j TPROXY --on-port 7895 --on-ip 0.0.0.0 --tproxy-mark 0x162 14iptables -t mangle -A clash_tproxy -p tcp -j TPROXY --on-port 7895 --on-ip 0.0.0.0 --tproxy-mark 0x162 15 16iptables -t mangle -N clash_tproxy_output 17 18iptables -t mangle -A clash_tproxy_output -p udp -m udp --sport 500 -j RETURN 19iptables -t mangle -A clash_tproxy_output -d 198.18.0.0/16 -p udp -m owner ! --uid-owner 65534 -j MARK --set-xmark 0x162 20iptables -t mangle -A clash_tproxy_output -d 198.18.0.0/16 -p tcp -m owner ! --uid-owner 65534 -j MARK --set-xmark 0x162 21 22iptables -t mangle -A PREROUTING -j clash_tproxy 23iptables -t mangle -A OUTPUT -j clash_tproxy_output 然后修改OpenClash的系统脚本 ...

2023年11月22日 · 1 分钟 · 417 字 · sdttttt

更加高性能的代理程序

在OpenWrt社区逛的时候又发现了一些宝贝。 https://github.com/daeuniverse/dae DAE(鹅)又是一个代理程序,不过它是透明代理,可以理解成全局代理,所有流量都会经过该软件。 DAE的特色是使用上了eBPF技术。 eBPF 是 extended Berkeley Packet Filter 的缩写,它是一种内核技术,允许开发人员在不修改内核代码的情况下运行特定的功能。eBPF 的概念源自于 Berkeley Packet Filter(BPF),后者是由贝尔实验室开发的一种网络过滤器,可以捕获和过滤网络数据包。 其实用最简单的话来说就是内核插件技术。 ...

2023年11月22日 · 2 分钟 · 951 字 · sdttttt

2023-11-9

notion也能被墙啊,现在访问notion都是用梯子才上来的。 最近clash也删库跑路了。 妈的,刚刚研究完openclash的原理就直接tm要凉了。 不知道后续会不会在更新,主要是clash也是比较优秀的梯子,如果就这样凉了也太可惜了。 ...

2023年11月09日 · 1 分钟 · 278 字 · sdttttt

关于OpenClash的流量处理

这几天闲来无事, 学习了一些关于iptables的知识, 同时也了解了一下OpenClash在OpenWRT上是怎么对经过网关的流量做透明代理的. 首先是Filter规则, filter是一个专门的流量过滤器, 它是不做任何流量处理的, 只负责拦截. ...

2023年10月04日 · 4 分钟 · 1969 字 · sdttttt

关于MosDNS

其实在翻SmartDNS文档的时候找到了另一个DNS服务器, 那就是MosDNS. “一个 DNS 转发器” MosDNS官方是这么介绍这个DNS的, 但是实际上我更愿意称它是一个可编程的DNS服务器. MosDNS对比其他DNS服务器不同之处就是它的在请求的逻辑处理能力, 以及分流能力非常优秀. ...

2023年09月26日 · 1 分钟 · 359 字 · sdttttt