家庭网络 篇一:双软路由(ROS主网关+Debian旁路由(2)
时间:2023-02-28 15:06 来源:网络整理 作者:默认发布 点击:次
作者用来上网的两个软路由,都虚拟在x86主机中。当时组装这台主机,基本都是参考别人的方案,海鲜市场淘的戴尔机箱,散装cpu,4口千兆网卡等,做虚拟机,内存一定要够大才够用。 实际的机箱并不大,但也不小,毕竟里面塞着一颗正儿八经的U,还有NAS存储用的几块硬盘呢。。这个机箱带改好的电源,实际功耗并不大,适合全年*24h提供服务。 虚拟机我用的是ESXi,PVE和UNRAID都没折腾过。19年那会用到现在都没再动过,也就最近打了个更新包。 ROS作为主路由,负责拨号、DHCP、流控等服务。DNS服务涉及到域名分流之类的逻辑,搭载在旁路由上,同时在DHCP中直接把它设置为DNS服务器,主要是为了给AdGuardHome的广告过滤作客户端识别。 在ROS的防火墙中,先标记下需要转发的流量(可以通过IP地址指定部分设备),同时对不同大小和用途的数据包进行标记,用在后面的流控中。 被标记的流量,转发给旁路由处理。 自动更新脚本。作者是在Debian上搭建好web服务,提供最新的数据,如下图所示,再让ROS自动去获取。 Debian上用脚本定期自动获取最新的IP并处理成ROS可以执行的命令。 由于作者有PT养站的习惯,因此做了流控和限速,确保在PT满载时对局域网内其他设备的上网体验不会造成影响。 旁路由作者之前折腾过很久的openwrt,但考虑到路由功能只是我的一部分需求,最后还是选择debian。所以这台旁路由,就是一台纯粹的Linux主机,实现路由功能对它来说只是一句命令而已。在这上面,可以做的事情就比较多。 基本的网络设置,固定好旁路由IP(10.10.10.3),网关指向ROS(10.10.10.1),IPv6自动获取就行。 让AdGuardHome直接监听53端口,作第一层广告过滤,再转发给其他DNS上游。这样所有客户端的访问信息都一览无遗,相对哪个客户端做一些限制都非常方便,用户界面也做的挺好。 作者用的是TPROXY的透明代理方案,几句iptables命令就可以实现。主机本身发出的流量也可以被代理。 总结双软路由+AC+AP的网络方案,篇幅有限,就主要介绍这些。 后面有时间会再介绍NAS影音中心、HomeKit智能家居、DDNS、广告屏蔽、Movie-Robot等诸多软件服务的搭建。尤其是DNS解析方案,折腾了作者相当长的时间,怎么实现基于域名的分流解析,配合不同应用,才能实现又快又稳无污染且兼容性强的解析服务。 下面上一些日常使用。 |