SOHO和BYOD網絡實踐記錄

SOHO和BYOD網絡實踐記錄 


元旦假期擠了點時間,終於將構思已久的家中網絡優化調整了一下,以滿足自己工作學習的需求,特此記錄一下,供大家參考交流。


我的需求是這樣的:


  1. 隨着智能家居和移動設備的增加,連入家庭網絡的設備接近20個,尤其是智能家居設備,隨便放一個不那麼可信的東西在自己的網絡裏,還真不***全,智能家居設備如果有漏洞或後門變成***跳板不是沒有可能的事情,所以第一個需求就是這部分網絡的隔離。 

  2. 我希望我的所有終端不需要繁瑣的配置,都可以連入到公司網絡進行工作。 

  3. 我希望我的所有終端不需要繁瑣的配置,都可以有可靠的方式輕鬆使用google,上github,googlecode找找代碼,上各類技術博客找找資料之類的。 

  4. 我可以對各類的流量進行精細控制,不互相影響。 

  5. 我還希望能隨時隨地連入家中的網絡存取NAS上的資料,對各種設備進行控制等。

於是有了下面的解決方案:


wKiom1So_Cjys9BiAAJRKzPkd4g782.jpg


這個方案的核心是基於dd-wrt的路由,下面是維基上的介紹。


DD-WRT是一個基於Linux的無線路由固件,以GNU通用公共許可證(GPL)V2授權發佈。

DD-WRT的系統源代碼起源於Linksys WRT54G的系統,由於在2002年有人發現Linksys WRT54G的系統是基於Linux開發,而Linux又是使用GPL授權,所以要求Linksys依照GPL授權要求公開Linksys WRT54G的系統源代碼,最終在2003年3月思科迫於壓力按照授權釋放系統源代碼,然後該套代碼被適用於基於Linksys WRT54G/GS/GL 或其他基於Broadcom參考設計的802.11g無線路由器,其中一個分支爲OpenWrt,而OpenWrt又派生出DD-WRT。


dd-wrt可以建立多個虛擬的WLAN接口,很容易解決了接入設備隔離的問題。


dd-wrt基於linux系統,可以建立各種類型的***連接,於是我在AWS公有云上放置了一臺pptp server作爲國際網絡跳板,使用skeddly進行自動化運維以節省AWS計算使用的費用,在dd-wrt端使用autodd***的方案來進行***分流,節省AWS流量使用的費用和網絡加速。


爲了滿足連入公司網絡的需要,在dd-wrt端使用腳本維護***c到公司的IPSec ***的連接,並通過iptables進行NAT轉發。


然後通過Dnsmasq進行DNS分流和緩存加速,再根據需要對dd-wrt中的路由表進行微調控制分配WAN,PPTP ***和IPSec ***三條鏈路的流量,滿足特定需求。


最後,再開啓dd-wrt上的pptp server,滿足連回家庭網絡的需求。


目前基本功能需求都已完成,無論在哪裏,用任何設備,想訪問哪裏就訪問哪裏,不需要任何配置。


雖然只是在家裏小打小鬧,但也學到了不少東西,比如AWS配置, skeddly自動化運維, linux shell腳本編程, pptpd, dnsmasq, iptables, ***c


後續的一些調整計劃:


  1. autodd***的算法還有不完美的地方,可能會進行一些優化調整。 

  2. dd-wrt的路由表調整還比較麻煩,後期可能寫一些維護腳本工具。 

  3. 網上找來的***c的自動管理腳本目前是使用ping特定ip的方式來檢測***連通性,這個算法不太合理,打算換掉。


對了,還有個支持802.1q的網管交換沒用,一來不是所有的接入交換都支持VLAN,二來我覺得在家裏劃VLAN未免有點太誇張了:P


總結,隨着接入網絡的設備數量和類型越來越多,即便是家庭網絡也變得複雜了,還好有Linux、開源還有云,讓我們能滿足一些稍微複雜點的SOHO和BYOD基礎架構需求。

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章