组件简介

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

起因

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

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

分析

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

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

方案设计

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

实现步骤

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

x86主机搭建家庭智能路由系统 ---- 设计篇的更多相关文章

  1. x86主机搭建家庭智能路由系统 ---- Proxmox虚拟化实现一机多用

    Proxmox VE简介 Proxmox VE(Proxmox Virtual Environment) 是一款完全开源虚拟化管理平台,可以管理QEMU/KVM虚拟机和LXC容器.事实上它只是一个前端 ...

  2. Home Assistant + 树莓派:强大的智能家居系统 · 安装篇

    Home Assistant + 树莓派:强大的智能家居系统 · 安装篇 转载:Home Assistant + 树莓派:强大的智能家居系统 · 安装篇 目录 1. 初始安装 3. Homebridg ...

  3. 个人智能家居系统 - MQTT服务器搭建(centOS7.3)

    个人智能家居系统 - MQTT服务器搭建(centOS7.3) 0x00 参考 在CentOS7 上安装mosquitto1.4.1服务器,实现MQTT信息推送功能并增加websocket功能 mos ...

  4. 基于Linux的智能家居的设计(4)

    3  开发环境的搭建 本次课题使用的开发环境比較特殊.没有一个现成的集成开发环境,需要自己一步一步的搭建开发环境,开发环境的搭建的过程十分复杂,并且假设没有这个开发环境本次课题就无法进行. 因此.在进 ...

  5. ASP.NET Web API路由系统:路由系统的几个核心类型

    虽然ASP.NET Web API框架采用与ASP.NET MVC框架类似的管道式设计,但是ASP.NET Web API管道的核心部分(定义在程序集System.Web.Http.dll中)已经移除 ...

  6. 搭建CnetOS6.5x64最小系统及在线yum源的配置

    CentOS系统作为红帽系列的一款linux系统,因为其免费.开源,在中小企业中得到了广泛应用,生产上为了更好的利用资源,都采用最小系统安装,因为一个图形界面都会占去系统资源的30%到40%,生产上一 ...

  7. 【转】基于DM8168的视频智能分析系统的设计方案

        [导读] 为了实现高清视频的智能分析功能,本文介绍了一种以TI公司的DM8168为核心的高清视频智能分析系统的设计方案,该方案从硬件设计和软件设计两个方面介绍了硬件组成.工作流程.软件架构,并 ...

  8. hadoop备战:一台x86计算机搭建hadoop的全分布式集群

    主要的软硬件配置: x86台式机,window7  64位系统 vb虚拟机(x86的台式机至少是4G内存,才干开3台虚机) centos6.4操作系统 hadoop-1.1.2.tar.gz jdk- ...

  9. ASP.NET Web API框架揭秘:路由系统的几个核心类型

    ASP.NET Web API框架揭秘:路由系统的几个核心类型 虽然ASP.NET Web API框架采用与ASP.NET MVC框架类似的管道式设计,但是ASP.NET Web API管道的核心部分 ...

随机推荐

  1. Android应用性能优化方案

    1.避免创建不必要的对象 2.如果方法用不到成员变量,可以把方法声明为静态(static),这样性能会提高百分之十五到百分之二十 3.避免使用get/set存取字段,可以把字段声明为public直接访 ...

  2. PHP1.0版本上传OSS报错,仿照2.0版本传入的居然是句柄

    代码如下:          $oss_sdk_service = new ALIOSS();              $oss_sdk_service->set_debug_mode(FAL ...

  3. Pomelo框架

    一个典型的多进程MMO运行架构, 如下图所示: pomelo框架的组成如图所示: 架构把游戏服务器做了抽象, 抽象成为两类:前端服务器和后端服务器, 如图: 前端服务器(frontend)的职责: 负 ...

  4. 微信LazyMan笔试题的深入解析和实现

    一.题目介绍  以下是我copy自网上的面试题原文: 实现一个LazyMan,可以按照以下方式调用: LazyMan("Hank")输出: Hi! This is Hank!   ...

  5. Effective前端6:避免页面卡顿

    .aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto } .crayon-line spa ...

  6. 使用node-inspector调试nodejs程序<nodejs>

    1.npm install -g node-inspector  // -g 导入安装路径到环境变量 一般是c盘下AppData目录下 2.node-inspector & //启动node- ...

  7. Android EclipseIDE技巧

    一.Eclipse配置使用 1.显示行号(Winodw-->Preferences-->General-->Editors-->Text Editors-->勾上右侧的S ...

  8. Lucky7(容斥原理)

    Problem Description When ?? was born, seven crows flew in and stopped beside him. In its childhood, ...

  9. c# 读取app.config遇到生成X.config.config问题

    string exePath = System.IO.Path.Combine(Environment.CurrentDirectory, "WindowsFormsApp.exe" ...

  10. Win32/MFC/COM学习推荐书籍

    以前有不少朋友问关于学习各种技术的推荐书籍的问题,这里把我觉得比较好的一些书籍列一下,希望能起到抛砖引玉的作用就好了:) Win32开发 Programming Windows by Charles ...