很久沒寫文章,近期一直在圍繞家庭間網絡互聯尋找新的玩法。“家庭間網絡互聯“顧名思義就是將原本以家庭為單位的網絡服務通過雲端互聯的方式進行聯動,説白了就是你和你的”基友“實現局域網進行文件共享、聯機對戰服務。
這種模式還要贅述到上世紀剛開始撥號上網時,為了實現體驗C&C;的聯機,採用一方做服務端另一方撥號接入方式,當時也算是實現了家庭互聯的最原始狀態,當然收穫的也是鉅額的電話費賬單,結果麼你懂的。
如今家庭裏已經開始配置NAS、互聯網電視等裝備,聯網設備也越來越多,而這時候的網絡互聯實現的是更多應用的共享,從原本一户自管自上網,變為多户之間可以進行私密內容共享的服務。很適合子女與父母之間照片、影視節目共享,也同樣適合與有相同愛好的基友之間存儲內容的共享。相比較品牌NAS自有的一些公網共享能力或者網上雲盤服務,這種模式內容上可免審核同時內容也相對安全。
當然這種互聯方式可提供的方式遠不止這些,我也還在不斷髮掘中,其實核心是探索家庭寬帶網絡未來的一種模式。
這次折騰的目的(藉口)之前文章提到過家裏NAS由於出現了一次硬盤異常,我對內容的各種備份近期投入不少精力,同時我開啓了家裏原本閒置的一台黑羣,由於硬件比較古老 HP N54L只能安裝到6.17的系統,通過在我的白羣開啓的“Cloud Sync“中選擇了WebDav協議實現照片的關鍵信息向黑羣的自動備份,這裏就不具體闡述配置方式,dsm6開啓webdav需要在應用中心安裝插件實現。
開啓備份後,由於兩台設備,家裏沒很好的位置可以擺放,同時黑羣上也可以開一些測試用的Dock服務,需要24小時開放來進行測試,於是便有了想把這台設備安放到鄉下父母家去。原本我回流家裏都採用的是L2TP VPN方式配置的,但考慮到之前多是設備對網絡的連接,這次則需要兩個網絡之間的互聯才能滿足設備在老家,但可以內網WebDAV進行數據備份回寫。
當然還有一些其他的小問題,老人家的網絡常會有些小問題,經常需要幫助診斷PING通不通啥的。網絡互聯可以遠程進行支撐:)
網絡方案選擇:考慮過使用L2tp做兩者之間互聯,但發現家裏的寬帶都分配的是100開頭的私網地址,同時即使是公網地址L2tp需要申請DDNS動態域名解析實現地址的獲取。所以操作上並不方便,於是直接Pass。
網絡對網絡之間組網可以選擇的方式還挺多,SoftEther內也有內置雲端組網方案,國內則有一些平台提供類似組網的模式,相比較後我最終選擇了ZeroTier的方案,主要還是”懶“,選擇一個操作最簡單的方案,並且還有平台側的管理界面,免費版本支持50個節點的接入足夠我使用了。
網上摘抄的介紹:
ZeroTier 是一款非常簡單易用的內網穿透工具,不需要配置,就能實現虛擬局域網的組建,讓你可以在外也能連回家中、學校、辦公室的電腦獲取資料,數據。配置與使用都非常簡單,堪稱「 無配置,零基礎」,小白也能用。
當然還有一些其他如TINC等的開源的解決方案,自己安裝一遍體驗測試後我認為很難推廣,最終放棄!
我採用的是路由器組網互聯方式,家庭的總出口都選擇加載了一台可刷入第三方系統的路由器,我在淘寶上尋找了Newifi的路由器,價格100左右看配置不低,當年的礦機之一如今已經白菜價,可以刷入的第三方系統比較多。第三方系統的選擇因為我核心是要滿足ZeroTier所以就隨手選擇了一個潘多拉的版本,已經內置了ZeroTier的版本,當然其實自己也可以去定製編譯一套適合自己的LEDE版本。目前採用的軟路由上的ZeroTier版本是根據我的需求自己編譯的。
newifi3新路由3 D2全千兆無線路由器 設備自己淘寶、閒魚檢索。
ZeroTier官網
註冊一個賬號,開通免費的網絡服務,這時候系統會分配一個網絡ID,這個就是之後所有設備接入配置填寫所必須的ID編號。進入網絡配置後可以對自己網絡進行一個命名。
其中“Access Control”選擇一定選上PRIVATE的模式,這樣獲得網絡ID的設備都需要手工到平台側確認後才能接入,比較安全。之後我們跳到 IPv4 Auto-Assign的欄目,主要是配置節點之間的互聯地址,只要在“Easy”模式中選擇和你內網不衝突的地址就可以。
下一步我們到Members裏面,這裏可以看到每一個接入的節點,如果在前面沒有選中的節點代表未被確認接入,所以一定對節點要選上,這時候節點列表中會出現分配的IP地址。
最後為了互聯需要回到Managed Routes裏面去配置路由記錄,這裏是要讓你相互節點之間可以知道怎麼走路由的。其實這就是一個三層互聯的配置模式,稍微懂一點網絡知識的便會懂。
終端側配置路由器刷入我們需要的系統後,先保證可以聯網,這裏不強求一定要公網地址,由於我上層電信的路由器沒有開啓橋接,所以我配置的是DHCP模式。找到ZeroTier的選項,輸入網絡ID後,同時默認勾選內網互聯等選擇保存並啓用,等待系統顯示狀態變綠色。
這時候路由器便創建出了一個虛擬的網絡接口,通過"網絡-接口“菜單進行新接口創建,選擇物理接口中 Z字開通的這一個新的接口,同時創建一個新防火牆策略名稱。
"網絡-在防火牆”中找到這個新的配置,點開選擇開放默認到WAN、LAN的訪問,入站、出站、轉發規則選擇允許保存。
繼續在防火牆自定義規則中增加以下防火牆策略。
iptables -I FORWARD -i zerotier -j ACCEPT
iptables -I FORWARD -o zerotier -j ACCEPT
iptables -t nat -I POSTROUTING -o zerotier -j MASQUERADE
注意:“zerotier”需要替換為你係統內在添加接口時默認顯示的zerotier接口名字。
其他説明以上配置方式並不是我原創,網上都可以找尋得到具體步驟可以直接百度一下
,同時實際操作時步驟是在ZeroTier平台和路由器側穿插的,猶如最終添加路由一定依賴於終端路由器側配置完畢,平台側允許接入後,才會顯示出接口所分配的地址。基本步驟實際應該如下:
平台側-申請zerotier賬號,開通base網絡
終端側-配置路由器zerotier網絡ID
平台側-Zerotier平台允許接入
終端側-防火牆,完成路由器所需所有配置
平台側-添加路由記錄
今天終於有時間會父母家,我把網絡設備、黑羣NAS等都進行了配置開始效果驗證。
我一開始最擔心的是網絡質量,網上也有提到需要部署MOON節點才能滿足高質量的訪問,但我實際測試下來節點直接的PING效果非常好,無丟包平均值在20毫秒以下,看來P2P這種不經過服務端的聯網效果很明顯。由於我目前投入使用的兩處的接入電信寬帶上行都只有30Mbps,所以測試極限下載穩定在3MB/s左右,效果還是很滿意的,如果接入帶寬擴大到100Mbps上行應該效果會更高,等待我後續換一下線路測試看看。現有的接入下通過遠程直接用SMB協議直接播放高清(5Mbps碼率)的MKV節目可以做到拖拉自如完全無卡頓,但高清藍光原盤暫無法滿足播放帶寬。
嘗試配置了自動的WebDav備份策略運行穩定,為了能實現兩個網絡互聯後的統一管理,我還配置了共享的本地DNS服務等用做內網設備的管理。
這次組網因為要到父母家鄉下去進行一些配置,所以前後拖延了半個多月,趁着國慶節才完成所有組網,現在組網結構是三個節點,大概如下:
我自己家:主NAS、小米電視機、若干智能家居設備
父母家:備用NAS、小米電視機
岳父母家:小米電視機
通過小米電視機的播放器共享播放存儲內的影視節目和家庭照片,可惜目前羣暉的DS PHOTO似乎無法在電視上直接安裝使用,所以只能通過電視機內的播放器使用SMB方式進行訪問異地內網的存儲進行播放,當然二層內網可以使用DLNA進行識別。
關於使用zerotier組網
我採用的是三層方式進行組網,所以實際設備都不在一個廣播範圍內,在測試的同時也有同事參考官方文檔進行了二層橋接方式的組網,這種模式下可以實現廣播包的跨地域轉發,理論上DLNA也可以這樣實現跨家庭的發現。不過因為我自己家裏設備比較多,日常都是30個左右的接入量,暫時沒做大的調整,還是每個家庭一個地址段的方式,這也符合日常好友之間組網的實際情況。
二層橋接方式組網的方案手冊
ZeroTier本身是可以接入電腦、羣暉nas等設備的,在他的官網上可以找到相應安裝方法,所以理論上我們也可以在電腦上配置一個ZeroTier後遠程接入家庭的網絡。同時通過配置默認路由方式,可以實現終端上網出口匯聚到一起後再出去,目前我每個家庭地點採用的是分流方式,日常上網還是本地直接到電信寬帶網絡,如果訪問對方局域網才會走ZeroTier的通道。
ZeroTier的各種安裝包
本身我是通訊行業從業人員,日常也一直接觸運營商寬帶產品等,從個人的看法中,寬帶產品作為單個家庭的應用可能實現的是家庭的信息化,如今的寬帶產品依然還是停留在帶寬高低論價值的方式下,用户體驗感知並沒有隨着國家所倡導的寬帶提速而產生本質變化。
微信給我的啓示是有了一種社羣概念,雖然我們可以通過論壇進行內容的分享等,但當我們的內容分享已經不侷限於文字圖片,或者相互直接進行一些私密的交流時,家庭網絡社交變為一種可能的解決方案,讓家庭寬帶網絡實現家庭與家庭直接的互聯和內容共享變為了一種可能。這樣一來未來的家庭寬帶接入不再是簡單的一個通道,而帶有了社羣喜好的,並且一個人可以加入到多個寬帶社羣中來共享信息資料,而那些KOI則會變為一個個社羣的信息匯聚管理者,愛好電影的愛好遊戲的都有了自己的歸屬……結合雲端可提供的存儲及運算服務,完全可以形成一個“雲+網”的業務羣體,細化分解對於傳統家庭寬帶接入的客户羣,隨之帶來的帶寬、服務等需求也會給運營商寬帶網絡發展注入新的動力。
以上純屬個人瞎想,所以自己瞎玩!