1. 程式人生 > >x86主機搭建家庭智慧路由系統 ---- 設計篇

x86主機搭建家庭智慧路由系統 ---- 設計篇

元件簡介

  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做虛擬化平臺來實現一機多用。

方案設計

600201-20170306142121703-375997449.png

600201-20170306150627859-244908771.png

x86小主機連線外網,負責光纖撥號,原先的網件4300,拿來當AP使用。小主機隔離出一部分資源做NAS,提供離線下載服務。剩下的做家用伺服器,跑我的定時任務,或者以後提供內網服務。

實現步驟

  1. 物理機安裝Proxmox。
  2. 建立三臺虛擬機器,一臺pfSense(路由器),一臺FreeNAS(網路附加儲存),另一臺CentOS(做伺服器使用)。
  3. 分別參照官方文件進行配置。
  4. 具體細節及遇到的坑我會在下一期詳細闡述。