x86主机搭建家庭智能路由系统 ---- 设计篇

时间:2023-03-08 21:51:58

组件简介

  1. Proxmox: 基于Debian的虚拟化系统,支持OpenVZ和KVM。
  2. pfSense: 基于FreeBSD的开源路由系统。
  3. FreeNAS: 开源NAS系统。
  4. *: 很著名的代理工具,功能你懂的。
  5. kcptun: 双边加速器。
  6. adbyby: 广告过滤大师。

起因

事情发生在上周末,几个朋友来家里玩,准备玩一下当前很热的手游“XX荣耀”,正巧老婆在一边看视频,结果自然就是我们几个的手机卡的没法玩,后来干脆掉线了,旁边的视频也一直缓冲不出来。

无奈之下,重启路由器。。。。。。几十秒后,大家又可以愉快地玩耍了。

分析

等到朋友走后,静下心来分析一下原因:

  1. 玩游戏卡让我第一时间想到了Qos,跑到路由管理界面一看,果然有问题,web协议的优先级太高了,由于以前没考虑过玩游戏的情况,只使用Qos限制了下载速度,发现问题后就顺手改了吧,把80端口的优先级降低。
  2. 做完后一想不太对,如果是Qos的问题,不会视频和游戏都没响应,还导致了最后掉线。很有可能是连接数太多,路由器处理不过来,假死了。(这里先说一下我的网络环境:美国网件4300,openwrt,*,kcptun)其实以前就发生过这种情况,路由器的CPU偶尔会跑到100%,特别是kcptun非常吃CPU,但为了youtube和google,ss、kcptun我都舍弃不了,那没办法,只能换硬件了,正好手上还有一台闲置的x86小主机,准备装一个pfSense,将其改造成软路由。
  3. 另外家里一直挂着一台树莓派,用来跑定时任务(签到,监控黄金价格之类的),如果把这部分工作交给x86,树莓派也可以不用开了,这里使用proxmox做虚拟化平台来实现一机多用。

方案设计

x86主机搭建家庭智能路由系统 ---- 设计篇

x86主机搭建家庭智能路由系统 ---- 设计篇

x86小主机连接外网,负责光纤拨号,原先的网件4300,拿来当AP使用。小主机隔离出一部分资源做NAS,提供离线下载服务。剩下的做家用服务器,跑我的定时任务,或者以后提供内网服务。

实现步骤

  1. 物理机安装Proxmox。
  2. 创建三台虚拟机,一台pfSense(路由器),一台FreeNAS(网络附加存储),另一台CentOS(做服务器使用)。
  3. 分别参照官方文档进行配置。
  4. 具体细节及遇到的坑我会在下一期详细阐述。